CN115130456A - 语句解析、匹配模型的训练方法、装置、设备及存储介质 - Google Patents
语句解析、匹配模型的训练方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115130456A CN115130456A CN202210578199.0A CN202210578199A CN115130456A CN 115130456 A CN115130456 A CN 115130456A CN 202210578199 A CN202210578199 A CN 202210578199A CN 115130456 A CN115130456 A CN 115130456A
- Authority
- CN
- China
- Prior art keywords
- graph structure
- matching
- model
- character
- statement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Databases & Information Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Animal Behavior & Ethology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种语句解析、匹配模型的训练方法、装置、设备及存储介质,属于人工智能技术领域。该语句解析方法包括:获取待解析的查询语句以及查询语句对应的知识图谱;对查询语句进行实体识别,得到至少一个查询实体;基于至少一个查询实体和知识图谱,获取至少一个候选图结构;获取查询语句的整体结构与至少一个候选图结构的匹配度,基于匹配度满足选取条件的候选图结构,确定查询语句的解析结果。此种语句解析方式的适用范围较为广泛。此外,与查询语句的整体结构的匹配度满足选取条件的候选图结构能够对查询语句的整体结构进行较为准确的表示,基于此种图结构确定的解析结果的准确性较高。
Description
技术领域
本申请实施例涉及人工智能技术领域,特别涉及一种语句解析、匹配模型的训练方法、装置、设备及存储介质。
背景技术
随着人工智能技术的发展,对查询语句进行解析的应用场景越来越多,通过对查询语句进行解析,能够得到查询语句的解析结果,该解析结果用于在知识图谱中查询应答结果。
相关技术在进行语句解析时,先识别出查询语句中的一个实体以及该实体的一个属性,然后将识别出的实体和属性构成的结果作为查询语句的解析结果。此种语句解析方式仅适用包括一个实体和一个属性的简单查询语句,适用范围较为局限。
发明内容
本申请实施例提供了一种语句解析、匹配模型的训练方法、装置、设备及存储介质,可用于提高语句解析方式的适用范围。所述技术方案如下:
一方面,本申请实施例提供了一种语句解析方法,所述方法包括:
获取待解析的查询语句以及所述查询语句对应的知识图谱;
对所述查询语句进行实体识别,得到至少一个查询实体;
基于所述至少一个查询实体和所述知识图谱,获取至少一个候选图结构;
获取所述查询语句的整体结构与所述至少一个候选图结构的匹配度,基于匹配度满足选取条件的候选图结构,确定所述查询语句的解析结果。
还提供了一种匹配模型的训练,所述方法包括:
获取样本语句以及所述样本语句对应的正例图结构和负例图结构,所述正例图结构为所述样本语句的整体结构对应的图结构,所述负例图结构为与所述正例图结构不同的图结构;
调用初始匹配模型获取所述样本语句的整体结构与所述正例图结构的第一匹配度,以及所述样本语句的整体结构与所述负例图结构的第二匹配度;
基于所述第一匹配度与所述第二匹配度的第一差值,获取目标损失,所述目标损失与所述第一差值呈负相关关系;
利用所述目标损失更新所述初始匹配模型的模型参数,得到目标匹配模型。
另一方面,提供了一种语句解析装置,所述装置包括:
第一获取单元,用于获取待解析的查询语句以及所述查询语句对应的知识图谱;
识别单元,用于对所述查询语句进行实体识别,得到至少一个查询实体;
第二获取单元,用于基于所述至少一个查询实体和所述知识图谱,获取至少一个候选图结构;
第三获取单元,用于获取所述查询语句的整体结构与所述至少一个候选图结构的匹配度,基于匹配度满足选取条件的候选图结构,确定所述查询语句的解析结果。
在一种可能实现方式中,所述第二获取单元,用于确定目标图结构模板,所述目标图结构模板用于约束包括第一数量的实体节点的图结构的形式,所述第一数量为所述至少一个查询实体的数量;基于所述知识图谱获取各个查询实体分别对应的候选实体;基于所述各个查询实体分别对应的候选实体,从所述知识图谱中查询与所述目标图结构模板匹配的至少一组填充数据,利用所述至少一组填充数据对所述目标图结构模板进行填充,得到所述至少一个候选图结构。
在一种可能实现方式中,所述识别单元,用于对所述查询语句中的各个字符进行特征提取,得到所述各个字符分别对应的字符特征;基于所述各个字符分别对应的字符特征,获取所述各个字符分别对应的标注结果,任一字符对应的标注结果用于指示所述任一字符与各个候选字符类型的匹配概率,所述各个候选字符类型包括实体类型和非实体类型;在任一字符对应的标注结果指示的匹配概率中确定最高匹配概率,将所述最高匹配概率对应的候选字符类型作为所述任一字符的目标字符类型,基于所述各个字符的目标字符类型,获取所述至少一个查询实体。
在一种可能实现方式中,所述第三获取单元,用于调用目标匹配模型获取所述查询语句的整体结构与所述至少一个候选图结构的匹配度。
在一种可能实现方式中,所述装置还包括:
查询单元,用于从所述知识图谱中查询与所述解析结果匹配的应答结果。
还提供了一种匹配模型的训练装置,所述装置包括:
第四获取单元,用于获取样本语句以及所述样本语句对应的正例图结构和负例图结构,所述正例图结构为所述样本语句的整体结构对应的图结构,所述负例图结构为与所述正例图结构不同的图结构;
第五获取单元,用于调用初始匹配模型获取所述样本语句的整体结构与所述正例图结构的第一匹配度,以及所述样本语句的整体结构与所述负例图结构的第二匹配度;
第六获取单元,用于基于所述第一匹配度与所述第二匹配度的第一差值,获取目标损失,所述目标损失与所述第一差值呈负相关关系;
更新单元,用于利用所述目标损失更新所述初始匹配模型的模型参数,得到目标匹配模型。
在一种可能实现方式中,所述初始匹配模型包括第一特征提取模型、第二特征提取模型和相似度计算模型,所述第五获取单元,用于调用所述第一特征提取模型对所述样本语句进行特征提取,得到第一特征;调用所述第二特征提取模型对所述正例图结构进行特征提取,得到第二特征;调用所述相似度计算模型计算所述第一特征与所述第二特征之间的相似度,将所述相似度作为所述样本语句的整体结构与所述正例图结构的第一匹配度。
在一种可能实现方式中,所述第五获取单元,用于获取所述正例图结构对应的各个三元组,任一三元组基于所述正例图结构中的两个相邻的节点以及所述两个相邻的节点之间的边得到;调用所述第二特征提取模型对所述各个三元组分别进行特征提取,得到所述各个三元组分别对应的子特征;基于所述各个三元组分别对应的子特征,获取所述第二特征。
在一种可能实现方式中,所述第五获取单元,用于将所述各个三元组分别对应的子特征转换为所述各个三元组分别对应的分数;将任一三元组对应的分数与总分数的比值作为所述任一三元组对应的权重,所述总分数为所述各个三元组分别对应的分数之和;基于所述各个三元组分别对应的权重,对所述各个三元组分别对应的子特征进行加权求和,得到所述第二特征。
在一种可能实现方式中,所述第一匹配度和所述第二匹配度均为不大于第一值且不小于第二值的数值,所述第六获取单元,用于将第二差值与所述第一差值作差,得到第三差值,所述第二差值为所述第二值与所述第一值的差值;将所述第三差值与参考值中的最大值作为所述目标损失,所述参考值为用于保证所述目标损失与所述第一差值呈负相关关系的数值。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行,以使所述计算机设备实现上述任一所述的语句解析方法或匹配模型的训练方法。
另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行,以使计算机实现上述任一所述的语句解析方法或匹配模型的训练方法。
另一方面,还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或所述计算机指令由处理器加载并执行,以使计算机实现上述任一所述的语句解析方法或匹配模型的训练方法。
本申请实施例提供的技术方案至少带来如下有益效果:
本申请实施例提供的技术方案,基于与查询语句的整体结构的匹配度满足选取条件的候选图结构来确定查询语句的解析结果,也就是说,通过考虑查询语句的整体结构来对查询语句进行解析。在考虑查询语句的整体结构的基础上,无论查询语句包括的实体以及属性的数量为多少,均能够实现对查询语句的解析,此种语句解析方式的适用范围较为广泛。此外,与查询语句的整体结构的匹配度满足选取条件的候选图结构能够对查询语句的整体结构进行较为准确的表示,基于此种图结构确定查询语句的解析结果,能够保证解析结果的准确性,进而提高根据解析结果获取的应答结果的准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种实施环境的示意图;
图2是本申请实施例提供的一种语句解析方法的流程图;
图3是本申请实施例提供的一种获取各个字符分别对应的标注结果的过程的示意图;
图4是本申请实施例提供的一种多个候选图结构模板的示意图;
图5是本申请实施例提供的一种候选图结构模板对应的示例性图结构的示意图;
图6是本申请实施例提供的一种候选路径的示意图;
图7是本申请实施例提供的一种匹配模型的训练方法的流程图;
图8是本申请实施例提供的一种第二特征的获取过程的示意图;
图9是本申请实施例提供的一种调用初始匹配模型获取样本语句的整体结构与正例图结构的第一匹配度的过程的示意图;
图10是本申请实施例提供的一种语句解析装置的示意图;
图11是本申请实施例提供的一种匹配模型的训练装置的示意图;
图12是本申请实施例提供的一种服务器的结构示意图;
图13是本申请实施例提供的一种终端的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
需要说明的是,本申请中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在示例性实施例中,本申请实施例提供的语句解析方法以及匹配模型的训练方法可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,人工智能企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。
本申请实施例提供的方案涉及人工智能的自然语言处理技术。自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱、语句解析等技术。
本申请实施例提供的方案还涉及人工智能的机器学习技术。机器学习(MachineLearning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、车联网、自动驾驶、智慧交通等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
图1示出了本申请实施例提供的一种实施环境的示意图。该实施环境可以包括:终端11和服务器12。
示例性地,终端11安装有具有查询(或搜索)功能的应用程序或者网页,服务器12能够为终端安装的应用程序或者网页提供后台服务。
本申请实施例提供的语句解析方法可以由终端11执行,也可以由服务器12执行,还可以由终端11和服务器12共同执行,本申请实施例对此不加以限定。对于本申请实施例提供的语句解析方法由终端11和服务器12共同执行的情况,服务器12承担主要计算工作,终端11承担次要计算工作;或者,服务器12承担次要计算工作,终端11承担主要计算工作;或者,服务器12和终端11二者之间采用分布式计算架构进行协同计算。
本申请实施例提供的匹配模型的训练方法可以由终端11执行,也可以由服务器12执行,还可以由终端11和服务器12共同执行,本申请实施例对此不加以限定。对于本申请实施例提供的匹配模型的训练方法由终端11和服务器12共同执行的情况,服务器12承担主要计算工作,终端11承担次要计算工作;或者,服务器12承担次要计算工作,终端11承担主要计算工作;或者,服务器12和终端11二者之间采用分布式计算架构进行协同计算。
需要说明的是,语句解析方法的执行设备与匹配模型的训练方法的执行设备可以相同,也可以不同,本申请实施例对此不加以限定。
可选地,终端11可以是任何一种可与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互的电子产品,例如PC(PersonalComputer,个人计算机)、手机、智能手机、PDA(Personal Digital Assistant,个人数字助手)、可穿戴设备、PPC(Pocket PC,掌上电脑)、平板电脑、智能车机、智能电视、智能音箱、智能语音交互设备、智能家电、车载终端、VR(Virtual Reality,虚拟现实)设备、AR(Augmented Reality,增强现实)设备等。服务器12可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。终端11与服务器12通过有线或无线网络建立通信连接。
本领域技术人员应能理解上述终端11和服务器12仅为举例,其他现有的或今后可能出现的终端或服务器如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。
基于上述图1所示的实施环境,本申请实施例提供一种语句解析方法,该语句解析方法由计算机设备执行,该计算机设备可以为终端11,也可以为服务器12,本申请实施例对此不加以限定。如图2所示,本申请实施例提供的语句解析方法可以包括如下步骤201至步骤204。
在步骤201中,获取待解析的查询语句以及查询语句对应的知识图谱。
查询语句是指需要进行解析,以根据解析结果查询应答结果的任一语句。查询语句可以是指交互对象输入的语句,也可以是指交互对象导入的语句,还可以是指对交互对象输入的图片进行识别得到的语句等,本申请实施例对此不加以限定。示例性地,若计算机设备为终端,则终端可以通过检测交互对象的交互操作来获取查询语句;若计算机设备为服务器,则服务器可以通过与终端通信来获取查询语句。
查询语句对应的知识图谱为根据查询语句查询应答结果所依据的知识图谱,查询语句对应的知识图谱的数量可以为一个,也可以为多个,本申请实施例对此不加以限定。知识图谱是把不同种类的信息连接在一起而得到的一个关系网络,知识图谱由节点和边组成。
在示例性实施例中,将获取查询语句时已经得到的全部知识图谱作为查询语句对应的知识图谱。在示例性实施例中,将获取查询语句时已经得到的全部知识图谱中满足第一条件的知识图谱作为查询语句对应的知识图谱。满足第一条件根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。
示例性地,满足第一条件的知识图谱可以是指创建时间与获取查询语句的时间之间的时间差距不大于时间差距阈值的知识图谱。时间差距阈值根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。当然,满足第一条件的知识图谱还可以为其他类型的知识图谱,此处不再一一赘述。
在示例性实施例中,获取查询语句时已经得到的全部知识图谱预先存储在计算机设备中,计算机设备可以直接从存储中提取获取查询语句时已经得到的全部知识图谱,进而获取查询语句对应的知识图谱。在示例性实施例中,获取查询语句时已经得到的全部知识图谱存储在服务器中,若计算机设备为终端,则计算机设备通过与服务器通信得到获取查询语句时已经得到的全部知识图谱,进而获取查询语句对应的知识图谱。
在步骤202中,对查询语句进行实体识别,得到至少一个查询实体。
至少一个查询实体为从查询语句中识别出的实体。实体(Entity)是客观存在并可互相区别的事物,例如,实体包括但不限于猫、狗、明星1、电影1等。实体是知识图谱的基本单元,是知识图谱中承载信息的重要单元。本申请实施例对至少一个查询实体的数量不加以限定,这与查询语句的具体情况有关。
在一种可能实现方式中,对查询语句进行实体识别,得到至少一个查询实体的过程以下步骤A至步骤C。
步骤A:对查询语句中的各个字符进行特征提取,得到各个字符分别对应的字符特征。
任一字符对应的字符特征用于对该任一字符进行表征,查询语句中的每个字符对应的字符特征通过对查询语句中的每个字符进行特征提取得到。示例性地,任一字符对应的字符特征的形式可以为矩阵,也可以为向量等。
在示例性实施例中,调用字符特征提取模型对查询语句中的各个字符进行特征提取,得到各个字符分别对应的字符特征。字符特征提取模型为用于提取字符的特征的模型。示例性地,字符特征提取模型的模型结构可以为BERT(Bidirectional EncoderRepresentation from Transformers,基于转换器的双向编码表征)模型、CNN(Convolutional Neural Networks,卷积神经网络)模型、LSTM(Long Short Term Memory,长短期记忆)模型、双向LSTM模型或者GRU(Gated Recurrent Unit,门控循环单元)模型等,本申请实施例对此不加以限定。
在示例性实施例中,调用字符特征提取模型对查询语句中的各个字符进行特征提取,得到各个字符分别对应的字符特征的过程为:将查询语句对应的字符序列输入字符特征提取模型,查询语句对应的字符序列包括首位标志字符、查询语句中的各个字符以及末尾标志字符;调用字符特征提取模型对字符序列进行特征提取,输出查询语句中的各个字符分别对应的字符特征。示例性地,字符特征提取模型除了可以输出查询语句中的各个字符分别对应的字符特征外,还可以输出首位标志字符对应的字符特征以及末尾标志字符对应的字符特征。示例性地,首位标志字符可以为[CLS],末尾标志字符可以为[SEP]。
步骤B:基于各个字符分别对应的字符特征,获取各个字符分别对应的标注结果,任一字符对应的标注结果用于指示任一字符与各个候选字符类型的匹配概率。
其中,各个候选字符类型包括实体类型和非实体类型。实体类型的数量可能为一个,也可能为多个;非实体类型的数量可能为一个,也可能为多个,本申请实施例对此不加以限定。
示例性地,实体类型的数量为多个,分别为实体开始字符类型、实体中间字符类型、实体结束字符类型和单字符实体类型;非实体类型的数量为一个。此种情况下,各个候选字符类型包括实体开始字符类型、实体中间字符类型、实体结束字符类型、单字符实体类型以及非实体类型。示例性地,实体开始字符类型、实体中间字符类型、实体结束字符类型、单字符实体类型以及非实体类型可以分别利用B、I、E、S以及O表示。
各个候选字符类型根据经验预先设置,在一些实施例中,各个候选字符类型还可以包括其他字符类型,本申请实施例对此不加以限定。
任一字符对应的标注结果用于指示任一字符与各个候选字符类型的匹配概率,示例性地,任一字符与任一候选字符类型的匹配概率越高,说明该任一字符的类型越有可能为该任一候选字符类型。本申请实施例对任一字符对应的标注结果的表示形式不加以限定,只要能够指示任一字符与各个候选字符类型的匹配概率即可。示例性地,任一字符对应的标注结果的形式为目标维度的矩阵,或者为目标维度向量等。目标维度为各个候选字符类型的数量。示例性地,任一字符对应的标注结果还可以称为任一字符对应的概率分布。
在示例性实施例中,调用标注模型基于各个字符分别对应的字符特征,获取各个字符分别对应的标注结果。标注模型为一个能够根据字符的字符特征获取字符的标注结果的模型。示例性地,标注模型可以为一个分类模型。
示例性地,调用标注模型基于各个字符分别对应的字符特征,获取各个字符分别对应的标注结果的过程包括:调用标注模型将各个字符分别对应的字符特征转换为各个字符分别对应的逻辑(logit)分数特征;通过激活函数对各个字符分别对应的逻辑分数特征进行激活,得到各个字符分别对应的标注结果。任一字符对应的逻辑分数特征的维度为目标维度,分别与各个候选字符类型(如,B、I、E、S以及O)对应。本申请实施例对激活函数的类型不加以限定,示例性地,激活函数可以为softmax(一种激活函数)。
示例性地,任一字符对应的标注结果可以基于下述公式1计算得到:
其中,logitsi表示第i个字符对应的逻辑分数特征,其中,i为不小于1且不大于查询语句中的各个字符的数量的整数;P和Q表示标注模型的模型参数,随着标注模型的训练过程更新;Ti表示第i个字符对应的字符特征。基于公式1中的第一个公式获取字符对应的逻辑分数特征的过程可视为对字符对应的字符特征进行线性变换得到字符对应的逻辑分数特征的过程。Probi表示第i个字符对应的标注结果,softmax()表示通过softmax进行激活。
示例性地,获取各个字符分别对应的标注结果的过程如图3所示。将查询语句对应的字符序列([CLS]明星1的妻子的舅舅是谁[SEP])输入字符特征提取模型(BERT模型),得到各个字符分别对应的字符特征;调用标注模型将各个字符分别对应的字符特征转换为各个字符分别对应的逻辑分数特征;通过激活函数(softmax)对各个字符分别对应的逻辑分数特征进行激活,得到各个字符分别对应的标注结果。
步骤C:在任一字符对应的标注结果指示的匹配概率中确定最高匹配概率,将最高匹配概率对应的候选字符类型作为任一字符的目标字符类型,基于各个字符的目标字符类型,获取至少一个查询实体。
最高匹配概率对应的候选字符类型是指各个候选字符类型中最有可能为该任一字符的类型的候选字符类型。将最高匹配概率对应的候选字符类型作为该任一字符的目标字符类型,任一字符的目标字符类型是指通过实体识别确定的该任一字符的字符类型。
参考获取任一字符的目标字符类型的方式,能够获取各个字符的目标字符类型,然后基于各个字符的目标字符类型,获取至少一个查询实体。
在示例性实施例中,若各个候选字符类型包括实体开始字符类型、实体中间字符类型、实体结束字符类型、单字符实体类型以及非实体类型,则基于各个字符的目标字符类型,获取至少一个查询实体的过程可以包括:将目标字符类型为单实体字符类型的各个字符分别作为一个查询实体;将满足目标条件的多个字符构成的实体作为查询实体,将得到的全部查询实体作为该至少一个查询实体。
示例性地,满足目标条件的多个字符是指同时满足以下三个条件的多个字符:1、相邻;2、第一个字符的目标字符类型为实体开始字符类型,最后一个字符的目标字符类型为实体结束字符类型;3、第一个字符和最后一个字符之间不存在其他字符,或者第一个字符和最后一个字符之间存在的字符的目标字符类型均为实体中间字符类型。
示例性地,若实体类型和非实体类型的数量均为一个,则基于各个字符的目标字符类型,获取至少一个查询实体的过程可以包括:将各组相邻的目标字符类型为实体类型的字符构成的实体均作为一个查询实体,从而得到至少一个查询实体。任一组相邻的目标字符类型为实体类型的字符的数量可能为一个,也可能为多个。
在示例性实施例中,上述字符特征提取模型和标注模型可以为目标标注结果获取模型中的两个模型,目标标注结果获取模型通过对初始标注结果获取模型进行训练得到,初始标注结果获取模型包括初始字符特征提取模型和初始标注模型。在调用字符特征提取模型实现上述步骤A以及调用标注模型实现上述步骤B之前,需要先训练得到目标标注结果获取模型。
在示例性实施例中,训练得到目标标注结果获取模型的过程包括:获取各个训练字符以及各个训练字符分别对应的标准字符类型;调用初始标注结果获取模型获取各个训练字符分别对应的预测标注结果;基于各个训练字符分别对应的预测标注结果以及各个训练字符分别对应的标准字符类型,获取训练损失;利用训练损失更新初始标注结果获取模型的参数,得到目标标注结果获取模型。
其中,任一训练字符对应的预测标注结果用于指示任一训练字符与各个候选字符类型的匹配概率。任一训练字符对应的标准字符类型为各个候选字符类型中的一个字符类型。
在示例性实施例中,基于各个训练字符分别对应的预测标注结果以及各个训练字符分别对应的标准字符类型,获取训练损失的过程包括:基于任一训练字符对应的预测标注结果,确定该任一训练字符与该任一训练字符对应的标准字符类型的匹配概率,将该匹配概率作为该任一训练字符对应的目标概率;基于各个训练字符分别对应的目标概率,获取训练损失。
示例性地,基于各个训练字符分别对应的目标概率,获取训练损失的过程基于下述公式2实现:
其中,Loss’表示训练损失;m(m为不小于1的整数)表示各个训练字符的数量;Probk(标准)表示基于第k(k为不小于1且不大于m的整数)个训练字符对应的预测标注结果以及第k个训练字符对应的标准字符类型确定的第k个训练字符对应的目标概率。
在示例性实施例中,对查询语句进行实体识别的过程可以看作是对查询语句进行实体Mention(提及)识别的过程。
在步骤203中,基于至少一个查询实体和知识图谱,获取至少一个候选图结构。
本申请实施例中,先获取至少一个候选图结构,进而根据查询语句的整体结构与候选图结构的匹配度来选取能够对查询语句的整体结构进行较为准确地表示的候选图结构,来确定查询语句的解析结果,以保证解析结果的准确性。此种解析结果的获取方式不仅适用于包括一个实体和一个属性的简单查询语句,还适用于包括多个实体和/或多个属性的复杂查询语句,从而扩展语句解析方法的适用场景。
查询语句的整体结构能够对查询语句的本质进行表征,如,查询语句包括哪些实体、查询语句包括的实体具有的属性是什么、查询语句包括的多个实体之间的关联关系是怎样的等。查询语句的整体结构可以利用包括节点和边的图结构较为便捷的表示。在利用图结构表示查询语句的整体结构时,由于图结构是可扩展的,所以无论查询语句包括的实体以及属性的数量为多少,均能够利用图结构表示查询语句的整体结构。至少一个候选图结构可视为预测的用于对查询语句的整体结构进行表示的图结构。
在一种可能实现方式中,基于至少一个查询实体和知识图谱,获取至少一个候选图结构的过程包括以下步骤2031至步骤2033。
步骤2031:确定目标图结构模板,目标图结构模板用于约束包括第一数量的实体节点的图结构的形式,第一数量为至少一个查询实体的数量。
在示例性实施例中,计算机设备中存储有多个候选图结构模板,每个候选图结构模板均用于约束一种图结构的形式。示例性地,多个候选图结构模板可以由技术人员设置,技术人员可以通过对常见形式的查询语句进行分析来设置多个候选图结构模板,以保证候选图结构模板为适用多数场景的模板。
示例性地,多个候选图结构模板包括多个候选数量分别对应的候选图结构模板,每个候选数量对应的候选图结构模板包括一种或多种转换关系(或称为跳跃关系)对应的模板。每个候选数量对应的候选图结构模板用于约束包括候选数量的实体节点的图结构的形式。需要说明的是,在一个图结构中,除了包括实体节点外,还包括应答结果节点和属性边。在一些实施例中,图结构中还包括中间转换结果节点。
示例性地,候选数量包括1、2和3,转换关系包括单跳和双跳,多个候选图结构模板可以如图4所示。在图4所示的候选图结构模板中,E表示实体节点,P表示属性(或称为关系)边,A表示应答结果节点,V表示中间转换结果节点。在图4中,单实体所在列中的候选图结构模板为候选数量1对应的候选图结构模板,候选数量1对应的候选图结构模板用于约束包括1个实体节点(E)的图结构的形式;两实体所在列中的候选图结构模板为候选数量2对应的候选图结构模板,候选数量2对应的候选图结构模板用于约束包括2个实体节点(E1和E2)的图结构的形式;三实体所在列中的候选图结构模板为候选数量3对应的候选图结构模板,候选数量3对应的候选图结构模板用于约束包括3个实体节点(E1、E2和E3)的图结构的形式。在一些实施例中,两实体的情况也可以称为单实体带限定的情况,三实体的情况也可以称为两实体带限定的情况。
示例性地,基于每个候选图结构模板,均能够获取对应的图结构,候选图结构模板对应的示例性图结构可以如图5中的虚线框所示。其中,单实体所在列中的候选图结构模板对应的两个图结构分别表示语句“明星1的妻子是谁”以及语句“明星1的妻子的国籍是什么”,其他的图结构表示的语句以此类推。
将多个候选图结构模板中的第一数量对应的候选图结构模板作为目标图结构模板,目标图结构模板用于约束包括第一数量的实体节点的图结构的形式。其中,第一数量为从查询语句中识别得到的各个查询实体的数量。
步骤2032:基于知识图谱获取各个查询实体分别对应的候选实体。
任一查询实体对应的候选实体可以是指知识图谱中存在的与该任一查询实体同名称的实体,任一查询实体对应的候选实体的数量可能为一个,也可能为多个,这与任一查询实体以及知识图谱的实际情况有关。
示例性地,以任一查询实体为张三为例,则该任一查询实体对应的候选实体可以包括男演员、歌手、制片人、作词人张三,XX局局长助理张三、X大学教授张三、A城市烈士张三、B局副局长张三、XXX出版社出版的图书张三等。
步骤2033:基于各个查询实体分别对应的候选实体,从知识图谱中查询与目标图结构模板匹配的至少一组填充数据,利用至少一组填充数据对目标图结构模板进行填充,得到至少一个候选图结构。
任一组填充数据与一个目标图结构模板匹配,该任一组填充数据包括各个查询实体分别对应的一个候选实体以及各个查询实体分别对应的一个候选实体在该一个目标图结构模板约束的图结构的形式下具有的属性,该任一组填充数据从知识图谱中查询得到。
需要说明的是,目标图结构模板的数量可能为一个,也可能为多个。对于目标图结构模板的数量为多个的情况,与目标图结构模板匹配的至少一组填充数据可以包括与每个目标图结构模板分别匹配的填充数据,也可以仅包括与部分目标图结构模板匹配的填充数据,这与各个查询实体分别对应的候选实体以及知识图谱的实际情况有关。与任一目标图结构模板匹配的填充数据可以为一组,也可以为多组,这同样与各个查询实体分别对应的候选实体以及知识图谱的实际情况有关。
在获取与目标图结构模板匹配的至少一组填充数据后,利用至少一组填充数据对目标图结构模板进行填充,将填充后得到的图结构作为至少一个候选图结构。需要说明的是,利用至少一组填充数据对目标图结构模板进行填充是指利用任一组填充数据对与该任一组填充数据匹配的一个目标图结构模板进行填充。
示例性地,在利用任一组填充数据对与该任一组填充数据匹配的一个目标图结构模板进行填充的过程中,利用该任一组填充数据中的候选实体填充与该任一组填充数据匹配的一个目标图结构模板中的实体节点(E),利用该任一组填充数据中的属性填充与该任一组填充数据匹配的一个目标图结构模板中的属性边(P),与该任一组填充数据匹配的一个目标图结构模板中的应答结果节(A)点以及中间转换结果节点(V)可以不填充。
示例性地,根据每个候选图结构均可以得到一个候选路径,一个候选路径用于表示一个语句。在获取至少一个候选图结构之后,还可以获取各个候选图结构分别对应的候选路径。示例性地,候选路径可以如图6所示,图6中的4个候选路径分别表示语句“明星1的国籍是什么”、语句“明星1出演的电影1的导演是谁”、语句“明星1的妻子的外文名是什么”以及语句“明星1的妻子的国籍是什么”。
示例性地,获取至少一个候选图结构的过程可以称为图结构召回过程。
在步骤204中,获取查询语句的整体结构与至少一个候选图结构的匹配度,基于匹配度满足选取条件的候选图结构,确定查询语句的解析结果。
其中,查询语句的整体结构与任一候选图结构的匹配度用于衡量任一候选图结构对查询语句的整体结构的表示准确性。示例性地,查询语句的整体结构与任一候选图结构的匹配度与任一候选图结构对查询语句的整体结构的表示准确性呈正相关关系,也即查询语句的整体结构与任一候选图结构的匹配度越高,说明任一候选图结构对查询语句的整体结构的表示准确性越高;查询语句的整体结构与任一候选图结构的匹配度越低,说明任一候选图结构对查询语句的整体结构的表示准确性越低。
获取查询语句的整体结构与至少一个候选图结构的匹配度的过程可以通过运行预先编写的程序实现,也可以通过调用目标匹配模型实现,本申请实施例以调用目标匹配模型获取查询语句的整体结构与至少一个候选图结构的匹配度为例进行说明。
目标匹配模型为具有较为精准的预测语句的整体结构与图结构的匹配度的模型,目标匹配模型通过对初始匹配模型进行训练得到,训练得到目标匹配模型的过程将在图7所示的实施例中进行详细说明,此处暂不赘述。
调用目标匹配模型获取查询语句的整体结构与每个候选图结构的匹配度的原理相同,本申请实施例以调用目标匹配模型获取查询语句的整体结构与任一候选图结构的匹配度的过程为例进行说明。
在一种可能实现方式中,目标匹配模型包括第一目标特征提取模型、第二目标特征提取模型和目标相似度计算模型。调用目标匹配模型获取查询语句的整体结构与任一候选图结构的匹配度的过程包括:调用第一目标特征提取模型对查询语句进行特征提取,得到第一目标特征;调用第二目标特征提取模型对任一候选图结构进行特征提取,得到第二目标特征;调用目标相似度计算模型计算第一目标特征与第二目标特征之间的相似度,将第一目标特征与第二目标特征之间的相似度作为查询语句的整体结构与任一候选图结构的匹配度。
在示例性实施例中,调用第二目标特征提取模型对任一候选图结构进行特征提取,得到第二目标特征的实现过程包括:获取任一候选图结构对应的各个目标三元组,任一目标三元组基于任一候选图结构中的两个相邻的节点以及两个相邻的节点之间的边得到;调用第二目标特征提取模型对各个目标三元组分别进行特征提取,得到各个目标三元组分别对应的子特征;基于各个目标三元组分别对应的子特征,获取第二目标特征。
在示例性实施例中,基于各个目标三元组分别对应的子特征,获取第二目标特征的实现过程包括:将各个目标三元组分别对应的子特征转换为各个目标三元组分别对应的分数;将任一目标三元组对应的分数与目标总分数的比值作为任一目标三元组对应的权重,目标总分数为各个目标三元组分别对应的分数之和;基于各个目标三元组分别对应的权重,对各个目标三元组分别对应的子特征进行加权求和,得到第二目标特征。
上述调用目标匹配模型获取查询语句的整体结构与任一候选图结构的匹配度的过程的实现方式详见图7所示的实施例中调用初始匹配模型获取样本语句的整体结构与正例图结构的匹配度的过程,此处不加以赘述。
参考获取查询语句的整体结构与任一候选图结构的匹配度的过程,能够获取查询语句的整体结构与至少一个候选图结构的匹配度。在示例性实施例中,获取查询语句的整体结构与各个候选图结构的匹配度的过程可视为对各个候选图结构进行排序的过程,目标匹配模型还可以称为目标排序模型。
在获取查询语句的整体结构与至少一个候选图结构的匹配度后,确定匹配度满足选取条件的候选图结构,进而基于匹配度满足选取条件的候选图结构确定查询语句的解析结果。查询语句的解析结果用于从知识图谱中查询应答结果。匹配度满足选取条件的候选图结构为能够对查询语句的整体结构进行较为准确的表示的候选图结构,基于此种候选图结构确定解析结果,有利于能够保证解析结果的准确性,提高利用解析结果从知识图谱中查询到的应答结果的准确性。
匹配度满足选取条件根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。在示例性实施例中,匹配度满足选取条件是指匹配度为查询语句的整体结构与各个候选图结构的匹配度中的最高匹配度。在示例性实施例中,匹配度满足选取条件是指匹配度不小于匹配度阈值,匹配度阈值根据经验设置,或者根据应用场景灵活调整。
匹配度满足选取条件的候选图结构的数量可能为一个,也可能为多个。对于匹配度满足选取条件的候选图结构的数量为一个的情况,基于匹配度满足选取条件的候选图结构,确定查询语句的解析结果的过程可以为:将匹配度满足选取条件的一个候选图结构作为查询语句的解析结果。示例性地,若匹配度满足选取条件是指匹配度为查询语句的整体结构与各个候选图结构的匹配度中的最高匹配度,则将最高匹配度对应的候选图结构作为查询语句的解析结果。
对于匹配度满足选取条件的候选图结构的数量为多个的情况,基于匹配度满足选取条件的候选图结构,确定查询语句的解析结果的过程可以为:从匹配度满足选取条件的多个候选图结构中随机选取一个候选图结构,将选取的候选图结构作为查询语句的解析结果。基于匹配度满足选取条件的候选图结构,确定查询语句的解析结果的过程还可以为:合并匹配度满足选取条件的多个候选图结构,将合并后得到的图结构作为查询语句的解析结果。
在示例性实施例中,在确定查询语句的解析结果之后,还包括:从知识图谱中查询与解析结果匹配的应答结果。示例性地,解析结果为包括应答结果节点的图结构(称为目标图结构),从知识图谱中查询与解析结果匹配的应答结果的过程可以为:在目标图结构的形式的约束下,从知识图谱中查询用于填充目标图结构中的应答结果节点的信息,将该信息作为应答结果。示例性地,从知识图谱中查询与目标图结构匹配的应答结果的过程还可以为:将目标图结构映射到知识图谱中,将目标图结构中的应答结果节点对应的映射结果作为应答结果。
示例性地,若计算机设备为终端,则在获取应答结果后,终端可以在显示界面上显示应答结果;若计算机设备为服务器,则在获取应答结果后,服务器可以将应答结果发送给终端,以使终端在显示界面上显示应答结果。
本申请实施例提出了一种基于图表示和图匹配的复杂语句解析方法,本申请实施例将整个查询语句解析为了一个图的表示结构,这个结构不仅可以表示简单的查询语句,还可以表示复杂的查询语句。而且这个图结构是可扩展的,未来可以新增更多类型的节点和边方便做功能扩展。此外,本申请实施例采用了一个基于图的匹配模型,可以更好的去编码图结构。实践表明本申请实施例提供的方法能显著提升复杂查询语句的语句解析的效果。在一些实施例中,语句解析也可以称为语义解析。
示例性地,本申请实施例能够应用在应用程序或网页中的搜索(或查询)功能上,能够服务搜索(或查询)功能中精准问答里的基于知识图谱的问答场景,回答用户的复杂型的知识型查询语句(query)。
本申请实施例提供的语句解析方法,基于与查询语句的整体结构的匹配度满足选取条件的候选图结构来确定查询语句的解析结果,也就是说,通过考虑查询语句的整体结构来对查询语句进行解析。在考虑查询语句的整体结构的基础上,无论查询语句包括的实体以及属性的数量为多少,均能够实现对查询语句的解析,此种语句解析方式的适用范围较为广泛。此外,与查询语句的整体结构的匹配度满足选取条件的候选图结构能够对查询语句的整体结构进行较为准确的表示,基于此种图结构确定查询语句的解析结果,能够保证解析结果的准确性,进而提高根据解析结果获取的应答结果的准确性。
基于上述图1所示的实施环境,本申请实施例提供一种匹配模型的训练方法,该匹配模型的训练方法由计算机设备执行,该计算机设备可以为终端11,也可以为服务器12,本申请实施例对此不加以限定。如图7所示,本申请实施例提供的匹配模型的训练方法包括如下步骤701至步骤704。
在步骤701中,获取样本语句以及样本语句对应的正例图结构和负例图结构。
其中,正例图结构为样本语句的整体结构对应的图结构,负例图结构为与正例图结构不同的图结构。
样本语句为已知正例图结构的任一语句。样本语句对应的正例图结构是样本语句的整体结构对应的图结构,也可以认为是样本语句对应的用图结构表示的标准解析结果。示例性地,样本语句对应的正例图结构也可以称为样本语句对应的标准图结构。样本语句对应的正例图结构可以由技术人员对样本语句进行图结构表示得到。示例性地,样本语句对应的正例图结构的数量为一个。
示例性地,样本语句对应的正例图结构包括样本语句中的实体对应的节点(也即实体节点)、样本语句中的属性对应的边(也即属性边)以及未知含义的应答结果节点。示例性地,若需要经过多次转换(或称为跳跃)才能到达应答结果节点,则样本语句对应的正例图结构还包括未知含义的中间转换结果节点。需要说明的是,中间转换结果节点的数量与参考数量相同,参考数量为需要经过的转换的次数与1的差值。
示例性地,若样本语句为“明星2主演的电影1的导演是谁”,则样本语句对应的正例图结构可以如图5中的501所示;若样本语句为“明星1主演的电影有哪些”,则样本语句对应的正例图结构可以如图5中的502所示;若样本语句为“明星1和明星4主演的人物4编剧的作品有哪些”,则样本语句对应的正例图结构可以如图5中的503所示。
样本语句对应的负例图结构为与样本语句对应的正例图结构不同的图结构。示例性地,样本语句对应的负例图结构的数量可能为一个,也可能为多个。示例性地,样本语句对应的负例图结构可以为技术人员获取的与正例图结构的相似度较大的图结构,以提高匹配模型的训练效果。示例性地,样本语句对应的负例图结构可以从已有的与正例图结构不同的图结构中选取得到。示例性地,样本语句对应的负例图结构还可以由计算机设备随机生成得到。
在示例性实施例中,样本语句与样本语句对应的正例图结构和负例图结构对应存储在数据库中,从而可以从数据库中提取样本语句以及样本语句对应的正例图结构和负例图结构。
在示例性实施例中,样本语句与样本语句对应的正例图结构对应存储在数据库中,从而可以从数据库中提取样本语句以及样本语句对应的正例图结构,然后随机生成与正例图结构不同的图结构作为样本语句对应的负例图结构。
当然,获取样本语句以及样本语句对应的正例图结构和负例图结构的方式还可以为其他方式,本申请实施例在此不再一一赘述。
在步骤702中,调用初始匹配模型获取样本语句的整体结构与正例图结构的第一匹配度,以及样本语句的整体结构与负例图结构的第二匹配度。
第一匹配度为样本语句的整体结构与正例图结构之间的匹配度,示例性地,正例图结构的数量为一个,所以第一匹配度的数量也为一个。第二匹配度为样本语句的整体结构与负例图结构之间的匹配度,第二匹配度的数量与负例图结构的数量相同,也就是说,样本语句的整体结构与每个负例图结构的匹配度均为一个第二匹配度。
样本语句的整体结构与正例图结构的第一匹配度以及样本语句的整体结构与负例图结构的第二匹配度均通过调用初始匹配模型获取。初始匹配模型是待训练的匹配模型,匹配模型是一种能够获取语句的整体结构与图结构之间的匹配度的模型。本申请实施例对初始匹配模型的模型结构不加以限定,只要能够获取语句的整体结构与图结构之间的匹配度即可。示例性地,初始匹配模型为一个双塔模型,先分别对语句和图结构进行处理,然后再计算二者之间的匹配度。
调用初始匹配模型获取样本语句的整体结构与正例图结构的第一匹配度的实现原理与调用初始匹配模型获取样本语句的整体结构与每个负例图结构的第二匹配度的实现原理相同,本申请实施例以调用初始匹配模型获取样本语句的整体结构与正例图结构的第一匹配度的过程为例进行说明。
在一种可能实现方式中,初始匹配模型的模型结构为:初始匹配模型包括第一特征提取模型、第二特征提取模型和相似度计算模型,此种情况下,调用初始匹配模型获取样本语句的整体结构与正例图结构的第一匹配度的过程可以包括以下步骤7021至步骤7023。
步骤7021:调用第一特征提取模型对样本语句进行特征提取,得到第一特征。
第一特征提取模型为待训练的用于提取语句的特征的模型,本申请实施例对第一特征提取模型的模型结构不加以限定,可以根据实际需要灵活选取。示例性地,第一特征提取模型的模型结构可以为BERT模型、CNN模型、LSTM模型、双向LSTM模型或者GRU模型等。
第一特征用于对样本语句进行表征。在示例性实施例中,调用第一特征提取模型对样本语句进行特征提取,得到第一特征的过程包括:将样本语句对应的字符序列输入第一特征提取模型,样本语句对应的字符序列包括首位标志字符、样本语句中的各个样本字符以及末尾标志字符;调用第一特征提取模型对字符序列进行特征提取,输出字符序列中的各个字符分别对应的特征,将首位标志字符对应的特征作为第一特征。示例性地,首位标志字符可以为[CLS],末尾标志字符可以为[SEP]。
示例性地,字符序列中的字符(token)对应的特征可以为向量的形式,还可以称为字符序列中的字符的表征向量。首位标志字符的表征向量可以看作是整个样本语句的表征向量,因此,可以将首位标志字符对应的特征作为用于对样本语句进行表征的第一特征。
在一些实施例中,还可以将各个样本字符分别对应的特征的拼接特征作为第一特征等。
步骤7022:调用第二特征提取模型对正例图结构进行特征提取,得到第二特征。
第二特征提取模型为待训练的用于提取图结构的特征的模型,本申请实施例对此第二特征模型的模型结构不加以限定。示例性地,第二特征模型可以是一个编码器(encoder),该编码器可以包括特征提取单元以及特征融合单元,其中,特征提取单元用于提取从图结构中获取的各个三元组分别对应的子特征,特征融合单元用于将从图结构中获取的各个三元组分别对应子特征进行融合,得到用于表征图结构的特征。
在一种可能实现方式中,调用第二特征提取模型对正例图结构进行特征提取,得到第二特征的实现过程包括以下步骤1至步骤3。
步骤1:获取正例图结构对应的各个三元组,任一三元组基于正例图结构中的两个相邻的节点以及两个相邻的节点之间的边得到。
正例图结构包括样本语句中的实体对应的节点、样本语句中的属性对应的边以及未知含义的应答结果节点。示例性地,正例图结构还包括未知含义的中间转换结果节点。每两个相邻的节点之间均具有边,基于正例图结构中的每两个相邻的节点以及该两个相邻的节点之间的边均确定一个三元组,从而得到正例图结构对应的各个三元组。
需要说明的是,每两个相邻的节点可能均是已知含义的节点(如,样本语句中的实体对应的节点),也可能均是未知含义的节点(如,应答结果节点、中间转换结果节点),还可能包括一个已知含义的节点以及一个未知含义的节点。每两个相邻的节点之间的边均为样本语句中的一个属性对应的边。每两个相邻的节点之间的边为一个有向边,由属性针对的节点指向另外一个节点。
示例性地,基于正例图结构中的两个相邻的节点以及该两个相邻的节点之间的边得到任一三元组的过程包括:将该两个相邻的节点中的第一个节点的含义表示结果和第二个节点的含义表示结果分别作为第一个元素和第三个元素,将该两个相邻的节点之间的边的含义表示结果作为第二个元素,由第一个元素、第二个元素和第三个元素构成一个三元组。第一个节点是指有向边起始的节点,第二个节点是指有向边指向的节点。
需要说明的是,若任一节点的含义已知,则将该任一节点的含义作为该任一节点的含义表示结果;若任一节点的含义未知,则将该任一节点对应的标识符号作为该任一节点的含义表示结果,任一节点对应的标识字符用于标识该任一节点未知的含义的含义类型(如,中间转换结果类型、应答结果类型等)。由于边的含义均已知,所以可以将边的含义作为边的含义表示结果。
示例性地,以正例图结构如图8中的801所示为例,801中的A所在的节点表示未知含义的应答结果节点,801中的V所在的节点表示未知含义的中间转换结果节点。根据801所示的正例图结构,能够获取两个三元组,该两个三元组分别为(明星1,妻子,V)和(V,国籍,A),其中,V为用于标识中间转换结果类型的标识字符,A为用于标识应答结果类型的标识字符。“明星1”为明星1这一实体对应的节点的含义,“妻子”为妻子这一属性对应的边的含义,“国籍”为国籍这一属性对应的边的含义。
步骤2:调用第二特征提取模型对各个三元组分别进行特征提取,得到各个三元组分别对应的子特征。
第二特征提取模型可以包括用于提取三元组对应的子特征的特征提取单元,调用第二特征提取模型中的特征提取单元能够对各个三元组分别进行特征提取,以得到各个三元组分别对应的子特征。
在示例性实施例中,特征提取单元可以包括特征提取层和池化(pooling)层,任一三元组在输入第二特征提取模型后,可以先经过特征提取单元中的特征提取层的特征提取,得到初始特征,然后经过池化层的池化,得到该三元组对应的子特征。示例性地,池化层可以为平均池化层,也可以为最大池化层等,本申请实施例对此不加以限定。示例性地,特征提取层可以是指双向LSTM层,也可以是指GRU层等,本申请实施例对此不加以限定。
步骤3:基于各个三元组分别对应的子特征,获取第二特征。
第二特征用于对正例图结构进行表征,第二特征基于各个三元组分别对应的子特征获取得到。示例性地,第二特征提取模型可以包括特征融合单元,该特征融合单元能够基于各个三元组分别对应的子特征融合得到第二特征。
在一种可能实现方式中,基于各个三元组分别对应的子特征,获取第二特征的过程包括:获取各个三元组分别对应的权重,基于各个三元组分别对应的权重,对各个三元组分别对应的子特征进行加权求和,得到第二特征。
在示例性实施例中,各个三元组分别对应的权重基于各个三元组分别对应的子特征获取,此种情况下,第二特征可视为基于自注意力(self-attention)机制获取的特征。示例性地,基于各个三元组分别对应的子特征获取各个三元组分别对应的权重的实现过程可以包括:将各个三元组分别对应的子特征转换为各个三元组分别对应的分数;将任一三元组对应的分数与总分数的比值作为任一三元组对应的权重,总分数为各个三元组分别对应的分数之和。根据获取任一三元组对应的权重的方式,获取各个三元组分别对应的权重。
示例性地,将各个三元组分别对应的子特征转换为各个三元组分别对应的分数可以通过一个转换层实现,该转换层中的参数决定转换方式。示例性地,任一三元组对应的分数可以基于公式3计算得到:
Si=MTtanh(WVi+B) (公式3)
其中,Si表示第i(i为不小于1且不大于各个三元组的数量的整数)个三元组对应的分数;Vi表示第i个三元组对应的子特征;M、W和B均为转换层的参数,用于实现将三元组对应的子特征转换为三元组对应的分数。
在获取各个三元组分别对应的分数后,将各个三元组分别对应的分数之和作为总分数,将任一三元组对应的分数与总分数的比值作为任一三元组对应的权重。示例性地,任一三元组对应的权重可以基于公式4获取得到:
其中,ai表示第i(i为不小于1且不大于n的整数)个三元组对应的权重;Si表示第i个三元组对应的分数;S1+S2+…+Sn表示总分数;n(n为不小于1的整数)为各个三元组的数量。该公式4可以认为是将三元组对应的分数通过softmax操作转换为了一个概率分布。
需要说明的是,以上所述获取各个三元组分别对应的权重的方式仅为一种示例性举例,本申请实施例并不局限于此。示例性地,各个三元组分别对应的权重还可以根据经验设置。示例性地,可以将各个三元组分别对应权重均设置为1,此种情况下,第二特征为各个三元组分别对应的子特征的加和特征。示例性地,还可以将各个三元组分别对应的权重均设置为1/n,其中,n(n为不小于1的整数)为各个三元组的数量,此种情况下,第二特征为各个三元组分别对应的子特征的平均特征。
示例性地,第二特征可以基于公式5获取得到:
Vgraph=a1V1+a2V2+…+anVn (公式5)
其中,Vgraph表示第二特征;ai表示第i(i=1,2,...,n)个三元组对应的权重;Vi表示第i个三元组对应的子特征。
示例性地,第二特征的获取过程可以如图8所示,获取图8中的801所示的正例图结构对应的两个三元组,分别为(明星1,妻子,V)和(V,国籍,A);通过双向LSTM层和池化层对三元组(明星1,妻子,V)进行处理,得到三元组(明星1,妻子,V)对应的子特征;通过双向LSTM层和池化层对三元组(V,国籍,A)进行处理,得到三元组(V,国籍,A)对应的子特征;通过自注意力机制对三元组(明星1,妻子,V)对应的子特征和三元组(V,国籍,A)对应的子特征进行融合,得到用于表征正例图结构的第二特征。
步骤7023:调用相似度计算模型计算第一特征与第二特征之间的相似度,将相似度作为样本语句的整体结构与正例图结构的第一匹配度。
在获取第一特征和第二特征之后,可以调用相似度计算模型计算第一特征与第二特征之间的相似度,然后将相似度作为样本语句的整体结构与正例图结构的匹配度。
示例性地,第一特征与第二特征的维度相同,且均为参考维度的向量,则第一特征与第二特征之间的相似度可以是指第一特征与第二特征之间的内积。示例性地,第一特征与第二特征之间的相似度可以基于下述公式6计算得到:
Score=dot(Vquery,Vgraph) (公式6)
其中,Score表示第一特征与第二特征之间的相似度;dot()表示内积计算;Vquery表示第一特征;Vgraph表示第二特征。
示例性地,调用初始匹配模型获取样本语句的整体结构与正例图结构的第一匹配度的过程如图9所示。将样本语句对应的字符序列([CLS]明星1的妻子的国籍是什么[SEP])输入第一特征提取模型,得到第一特征提取模型输出的用于表征样本语句的第一特征;将正例图结构输入第二特征提取模型,得到第二特征提取模型输出的用于表征正例图结构的第二特征;调用相似度计算模型通过计算第一特征与第二特征的内积来计算第一特征与第二特征之间的相似度;将第一特征与第二特征之间的相似度作为样本语句的整体结构与正例图结构的第一匹配度。
需要说明的是,基于上述步骤7021至步骤7023实现调用初始匹配模型获取样本语句的整体结构与正例图结构的第一匹配度的过程仅为一种示例性举例,本申请实施例并不局限于此。
在一些实施例中,初始匹配模型的模型结构还可以为:初始匹配模型包括图结构转换模型和匹配度计算模型,其中,图结构转换模型用于将图结构转换成语句,语句匹配度计算模型用于计算两个语句之间的匹配度。此种情况下,调用初始匹配模型获取样本语句的整体结构与正例图结构的第一匹配度的过程可以包括:调用图结构转换模型对正例图结构进行转换,得到参考语句;调用语句匹配度计算模型计算样本语句参考语句之间的匹配度,将样本语句与参考语句之间的匹配度作为样本语句的整体结构与正例图结构的第一匹配度。
参考调用初始匹配模型获取样本语句的整体结构与正例图结构的第一匹配度的方式,能够实现调用初始匹配模型获取样本语句的整体结构与负例图结构的第二匹配度的过程,需要说明的是,对于负例图结构的数量为多个的情况,需要调用初始匹配模型获取样本语句分别与每个负例图结构的第二匹配度,也就是说,第二匹配度的数量与负例图结构的数量相同。
在步骤703中,基于第一匹配度与第二匹配度的第一差值,获取目标损失,目标损失与第一差值呈负相关关系。
第一匹配度是样本语句的整体结构与正例图结构之间的匹配度,第二匹配度是样本语句的整体结构与负例图结构之间的匹配度,第一匹配度与第二匹配度的第一差值越大,说明匹配模型越能够精准的区分样本语句的整体结构与正例图结构的匹配度,以及样本语句的整体结构与负例图结构的匹配度,也即说明匹配模型的匹配度预测性能越好。因此,获取与第一差值呈负相关关系的目标损失,能够在目标损失的约束下,使得匹配模型朝着缩小目标损失也即增大第一差值的方向更新模型参数,从而不断提高匹配模型的匹配度预测性能。
在示例性实施例中,第一匹配度的数量为一个,第二匹配度的数量可能为一个,也可能为多个。对于第二匹配度的数量为一个的情况,第一差值是指该一个第一匹配度与该一个第二匹配度之间的差值。对于第二匹配度的数量为多个的情况,第一差值是指该一个第一匹配值与多个第二匹配值之间的差值。
示例性地,一个第一匹配值与多个第二匹配值之间的差值(也即第一差值)可以是指该一个第一匹配度与多个第二匹配度的平均值之间的差值,此种确定第一差值的方式考虑了全部的第二匹配度,有利于保证第一差值的可靠性。
示例性地,一个第一匹配值与多个第二匹配值之间的差值(也即第一差值)也可以是指该一个第一匹配度与从多个第二匹配度中随机选取的一个第二匹配度之间的差值,此种确定第一差值的方式仅考虑多个第二匹配度中的一个第二匹配度,有利于提高第一差值的确定效率。
示例性地,一个第一匹配值与多个第二匹配值之间的差值(也即第一差值)还可以是指该一个第一匹配度与多个第二匹配度中满足参考条件的第二匹配度的平均值之间的差值,此种确定第一差值的方式可以实现可靠性与确定效率之间的平衡。满足参考条件根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。
示例性地,满足参考条件的第二匹配度是指多个第二匹配度中的前G大的第二匹配度,G为不小于1且不大于H的整数,H为多个第二匹配度的数量,H为不小于1的整数。示例性地,满足参考条件的第二匹配度是指多个第二匹配度中的不小于匹配度阈值的第二匹配度,匹配度阈值根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。
在获取第一匹配度与第二匹配度的第一差值之后,基于第一差值,获取目标损失。其中,目标损失与第一差值呈负相关关系。本申请实施例对基于第一差值,获取目标损失的实现方式不加以限定,只要保证目标损失与第一差值呈负相关关系即可。
在一种可能实现方式中,基于第一差值,获取目标损失的实现方式可以为:将第一差值的相反数作为目标损失。在另一种可能实现方式中,基于第一差值,获取目标损失的实现方式还可以为:将第一差值的倒数作为目标损失。
在另一种可能实现方式中,正例图结构和负例图结构的数量均为一个,也即第一匹配度和第二匹配度的数量均为一个,该一个第一匹配度和该一个第二匹配度均为不大于第一值且不小于第二值的数值,此种情况下,基于第一差值,获取目标损失的实现方式还可以为:将第二差值与第一差值作差,得到第三差值,第二差值为第二值与第一值的差值,将第三差值与参考值中的最大值作为目标损失。第一值和第二值根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定,例如,第一值为0,第二值为1。参考值为用于保证目标损失与第一差值呈负相关关系的数值,可以根据经验设置,示例性地,参考值为0。
示例性地,以第一值为0、第二值为1、参考值为0为例,基于第一差值获取目标损失的过程基于下述公式7实现:
Loss=max(0,1-(Score+-Score-)) (公式7)
其中,Loss表示目标损失;Score+表示第一匹配度,也即样本语句的整体结构与正例图结构的匹配度;Score-表示第二匹配度,也即样本语句的整体结构与负例图结构的匹配度;(Score+-Score-)表示第一差值。
在步骤704中,利用目标损失更新初始匹配模型的模型参数,得到目标匹配模型。
示例性地,利用目标损失更新初始匹配模型的模型参数的过程可以利用梯度下降法实现,也即朝着缩小目标损失的梯度方向更新匹配模型的模型参数。由于目标损失是与第一匹配度和第二匹配度之间的第一差值呈负相关关系的,所以朝着缩小目标损失的梯度方向更新匹配模型的模型参数,能够使得匹配模型朝着增大第一匹配度和第二匹配度之间的第一差值的方向训练,由于第一匹配度和第二匹配度之间的第一差值越大越好,所以,通过朝着增大第一匹配度和第二匹配度之间的第一差值的方向训练匹配模型,有利于使得训练好的匹配模型具有较为准确的匹配度预测功能。
示例性地,利用目标损失更新初始匹配模型的模型参数,得到目标匹配模型的过程包括:利用目标损失反向更新一次初始匹配模型的模型参数,得到更新后的匹配模型;判断更新后的匹配模型是否满足训练终止条件;若更新后的匹配模型满足训练终止条件,则将更新后的匹配模型作为目标匹配模型。
若更新后的匹配模型不满足训练终止条件,则基于步骤701至步骤703的方式获取新的目标损失,利用新的目标损失反向更新一次更新后的匹配模型的模型参数,以此类推,直至得到满足训练终止条件的匹配模型,将满足训练终止条件的匹配模型作为目标匹配模型。示例性地,在基于步骤701至步骤703的方式获取新的目标损失的过程中,所依据的样本语句以及样本语句对应的正例图结构和负例图结构可以发生改变,也可以不发生改变,本申请实施例对此不加以限定。
训练终止条件根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。在示例性实施例中,匹配模型满足训练终止条件包括但不限于以下任一种:获取匹配模型时已经执行的模型参数更新次数(也可以称为迭代次数)达到最大迭代次数、获取匹配模型所依据的目标损失收敛、获取匹配模型所依据的目标损失小于损失阈值。最大迭代次数以及损失阈值根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。
需要说明的是,利用目标损失对初始匹配模型的模型参数进行更新是指利用目标损失对初始匹配模型包括的各个模型的模型参数进行更新。示例性地,对于初始匹配模型包括第一特征提取模型、第二特征提取模型和相似度计算模型的情况,需要利用目标损失对第一特征提取模型的模型参数、第二特征提取模型的模型参数和相似度计算模型的模型参数进行更新。训练得到的目标匹配模型包括第一目标特征提取模型、第二目标特征提取模型和目标相似度计算模型。
在获取目标匹配模型后,可以在语句解析的过程中,利用目标匹配模型获取待解析的查询语句的整体结构与各个候选图结构之间的匹配度,进而基于匹配度满足选取条件的候选图结构确定查询语句的解析结果。该过程的实现方式详见图2所示的实施例,此处不再加以赘述。
本申请实施例提供的匹配模型的训练方法,更新初始匹配模型的模型参数所利用的目标损失是与第一匹配度和第二匹配度的差值呈负相关关系的损失,利用此种损失训练初始匹配模型,有利于使得初始匹配模型朝着增大第一匹配度和第二匹配度的差值的方向更新模型参数,第一匹配度和第二匹配度的差值越大,说明匹配模型越能够精准的区分样本语句的整体结构与正例图结构的匹配度,以及样本语句的整体结构与负例图结构的匹配度,也即说明匹配模型的匹配度预测性能越好,利用此种方式能够训练得到一个能够较为准确的预测语句的整体结构与图结构的匹配度的目标匹配模型,从而能够为语句解析过程提供基础,进而提高语句解析的准确性。
参见图10,本申请实施例提供了一种语句解析装置,该装置包括:
第一获取单元1001,用于获取待解析的查询语句以及查询语句对应的知识图谱;
识别单元1002,用于对查询语句进行实体识别,得到至少一个查询实体;
第二获取单元1003,用于基于至少一个查询实体和知识图谱,获取至少一个候选图结构;
第三获取单元1004,用于获取查询语句的整体结构与至少一个候选图结构的匹配度,基于匹配度满足选取条件的候选图结构,确定查询语句的解析结果。
在一种可能实现方式中,第二获取单元1003,用于确定目标图结构模板,目标图结构模板用于约束包括第一数量的实体节点的图结构的形式,第一数量为至少一个查询实体的数量;基于知识图谱获取各个查询实体分别对应的候选实体;基于各个查询实体分别对应的候选实体,从知识图谱中查询与目标图结构模板匹配的至少一组填充数据,利用至少一组填充数据对目标图结构模板进行填充,得到至少一个候选图结构。
在一种可能实现方式中,识别单元1002,用于对查询语句中的各个字符进行特征提取,得到各个字符分别对应的字符特征;基于各个字符分别对应的字符特征,获取各个字符分别对应的标注结果,任一字符对应的标注结果用于指示任一字符与各个候选字符类型的匹配概率,各个候选字符类型包括实体类型和非实体类型;在任一字符对应的标注结果指示的匹配概率中确定最高匹配概率,将最高匹配概率对应的候选字符类型作为任一字符的目标字符类型,基于各个字符的目标字符类型,获取至少一个查询实体。
在一种可能实现方式中,第三获取单元1004,用于调用目标匹配模型获取查询语句的整体结构与至少一个候选图结构的匹配度。
在一种可能实现方式中,装置还包括:
查询单元,用于从知识图谱中查询与解析结果匹配的应答结果。
本申请实施例提供的语句解析装置,基于与查询语句的整体结构的匹配度满足选取条件的候选图结构来确定查询语句的解析结果,也就是说,通过考虑查询语句的整体结构来对查询语句进行解析。在考虑查询语句的整体结构的基础上,无论查询语句包括的实体以及属性的数量为多少,均能够实现对查询语句的解析,此种语句解析方式的适用范围较为广泛。此外,与查询语句的整体结构的匹配度满足选取条件的候选图结构能够对查询语句的整体结构进行较为准确的表示,基于此种图结构确定查询语句的解析结果,能够保证解析结果的准确性,进而提高根据解析结果获取的应答结果的准确性。
参见图11,本申请实施例提供了一种匹配模型的训练装置,该装置包括:
第四获取单元1101,用于获取样本语句以及样本语句对应的正例图结构和负例图结构,正例图结构为样本语句的整体结构对应的图结构,负例图结构为与正例图结构不同的图结构;
第五获取单元1102,用于调用初始匹配模型获取样本语句的整体结构与正例图结构的第一匹配度,以及样本语句的整体结构与负例图结构的第二匹配度;
第六获取单元1103,用于基于第一匹配度与第二匹配度的第一差值,获取目标损失,目标损失与第一差值呈负相关关系;
更新单元1104,用于利用目标损失更新初始匹配模型的模型参数,得到目标匹配模型。
在一种可能实现方式中,初始匹配模型包括第一特征提取模型、第二特征提取模型和相似度计算模型,第五获取单元1102,用于调用第一特征提取模型对样本语句进行特征提取,得到第一特征;调用第二特征提取模型对正例图结构进行特征提取,得到第二特征;调用相似度计算模型计算第一特征与第二特征之间的相似度,将相似度作为样本语句的整体结构与正例图结构的第一匹配度。
在一种可能实现方式中,第五获取单元1102,用于获取正例图结构对应的各个三元组,任一三元组基于正例图结构中的两个相邻的节点以及两个相邻的节点之间的边得到;调用第二特征提取模型对各个三元组分别进行特征提取,得到各个三元组分别对应的子特征;基于各个三元组分别对应的子特征,获取第二特征。
在一种可能实现方式中,第五获取单元1102,用于将各个三元组分别对应的子特征转换为各个三元组分别对应的分数;将任一三元组对应的分数与总分数的比值作为任一三元组对应的权重,总分数为各个三元组分别对应的分数之和;基于各个三元组分别对应的权重,对各个三元组分别对应的子特征进行加权求和,得到第二特征。
在一种可能实现方式中,第一匹配度和第二匹配度均为不大于第一值且不小于第二值的数值,第六获取单元1103,用于将第二差值与第一差值作差,得到第三差值,第二差值为第二值与第一值的差值;将第三差值与参考值中的最大值作为目标损失,参考值为用于保证目标损失与第一差值呈负相关关系的数值。
本申请实施例提供的匹配模型的训练装置,更新初始匹配模型的模型参数所利用的目标损失是与第一匹配度和第二匹配度的差值呈负相关关系的损失,利用此种损失训练初始匹配模型,有利于使得初始匹配模型朝着增大第一匹配度和第二匹配度的差值的方向更新模型参数,第一匹配度和第二匹配度的差值越大,说明匹配模型越能够精准的区分样本语句的整体结构与正例图结构的匹配度,以及样本语句的整体结构与负例图结构的匹配度,也即说明匹配模型的匹配度预测性能越好,利用此种方式能够训练得到一个能够较为准确的预测语句的整体结构与图结构的匹配度的目标匹配模型,从而能够为语句解析过程提供基础,进而提高语句解析的准确性。
需要说明的是,上述实施例提供的装置在实现其功能时,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将设备的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在示例性实施例中,还提供了一种计算机设备,该计算机设备包括处理器和存储器,该存储器中存储有至少一条计算机程序。该至少一条计算机程序由一个或者一个以上处理器加载并执行,以使该计算机设备实现上述任一种语句解析或匹配模型的训练方法。该计算机设备可以为服务器,也可以为终端。接下来,对服务器和终端的结构分别进行介绍。
图12是本申请实施例提供的一种服务器的结构示意图,该服务器可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central Processing Units,CPU)1201和一个或多个存储器1202,其中,该一个或多个存储器1202中存储有至少一条计算机程序,该至少一条计算机程序由该一个或多个处理器1201加载并执行,以使该服务器实现上述各个方法实施例提供的语句解析方法或匹配模型的训练方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
图13是本申请实施例提供的一种终端的结构示意图。该终端可以是:PC、手机、智能手机、PDA、可穿戴设备、PPC、平板电脑、智能车机、智能电视、智能音箱、智能语音交互设备、智能家电、车载终端、VR设备、AR设备。终端还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端包括有:处理器1501和存储器1502。
处理器1501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1501也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1501可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1501还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1502中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1501所执行,以使该终端实现本申请中方法实施例提供的语句解析方法或匹配模型的训练方法。
在一些实施例中,终端还可选包括有:外围设备接口1503和至少一个外围设备。处理器1501、存储器1502和外围设备接口1503之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1503相连。具体地,外围设备包括:射频电路1504、显示屏1505、摄像头组件1506、音频电路1507和电源1508中的至少一种。
外围设备接口1503可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1501和存储器1502。在一些实施例中,处理器1501、存储器1502和外围设备接口1503被集成在同一芯片或电路板上;在一些其他实施例中,处理器1501、存储器1502和外围设备接口1503中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1504将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1504包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1504可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1504还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1505是触摸显示屏时,显示屏1505还具有采集在显示屏1505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1501进行处理。此时,显示屏1505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1505可以为一个,设置在终端的前面板;在另一些实施例中,显示屏1505可以为至少两个,分别设置在终端的不同表面或呈折叠设计;在另一些实施例中,显示屏1505可以是柔性显示屏,设置在终端的弯曲表面上或折叠面上。甚至,显示屏1505还可以设置成非矩形的不规则图形,也即异形屏。显示屏1505可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1506用于采集图像或视频。可选地,摄像头组件1506包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1506还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1501进行处理,或者输入至射频电路1504以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1501或射频电路1504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1507还可以包括耳机插孔。
电源1508用于为终端中的各个组件进行供电。电源1508可以是交流电、直流电、一次性电池或可充电电池。当电源1508包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端还包括有一个或多个传感器1509。该一个或多个传感器1509包括但不限于:加速度传感器1510、陀螺仪传感器1511、压力传感器1512、光学传感器1513以及接近传感器1514。
加速度传感器1510可以检测以终端建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1510可以用于检测重力加速度在三个坐标轴上的分量。处理器1501可以根据加速度传感器1510采集的重力加速度信号,控制显示屏1505以横向视图或纵向视图进行用户界面的显示。加速度传感器1510还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1511可以检测终端的机体方向及转动角度,陀螺仪传感器1511可以与加速度传感器1510协同采集用户对终端的3D动作。处理器1501根据陀螺仪传感器1511采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1512可以设置在终端的侧边框和/或显示屏1505的下层。当压力传感器1512设置在终端的侧边框时,可以检测用户对终端的握持信号,由处理器1501根据压力传感器1512采集的握持信号进行左右手识别或快捷操作。当压力传感器1512设置在显示屏1505的下层时,由处理器1501根据用户对显示屏1505的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
光学传感器1513用于采集环境光强度。在一个实施例中,处理器1501可以根据光学传感器1513采集的环境光强度,控制显示屏1505的显示亮度。具体地,当环境光强度较高时,调高显示屏1505的显示亮度;当环境光强度较低时,调低显示屏1505的显示亮度。在另一个实施例中,处理器1501还可以根据光学传感器1513采集的环境光强度,动态调整摄像头组件1506的拍摄参数。
接近传感器1514,也称距离传感器,通常设置在终端的前面板。接近传感器1514用于采集用户与终端的正面之间的距离。在一个实施例中,当接近传感器1514检测到用户与终端的正面之间的距离逐渐变小时,由处理器1501控制显示屏1505从亮屏状态切换为息屏状态;当接近传感器1514检测到用户与终端的正面之间的距离逐渐变大时,由处理器1501控制显示屏1505从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图13中示出的结构并不构成对终端的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条计算机程序,该至少一条计算机程序由计算机设备的处理器加载并执行,以使计算机实现上述任一种语句解析方法或匹配模型的训练方法。
在一种可能实现方式中,上述计算机可读存储介质可以是只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact DiscRead-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或计算机指令,该计算机程序或计算机指令由处理器加载并执行,以使计算机实现上述任一种语句解析方法或匹配模型的训练方法。
需要说明的是,本申请所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本申请中涉及到的查询语句是在充分授权的情况下获取的。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种语句解析方法,其特征在于,所述方法包括:
获取待解析的查询语句以及所述查询语句对应的知识图谱;
对所述查询语句进行实体识别,得到至少一个查询实体;
基于所述至少一个查询实体和所述知识图谱,获取至少一个候选图结构;
获取所述查询语句的整体结构与所述至少一个候选图结构的匹配度,基于匹配度满足选取条件的候选图结构,确定所述查询语句的解析结果。
2.根据权利要求1所述的方法,其特征在于,所述基于所述至少一个查询实体和所述知识图谱,获取至少一个候选图结构,包括:
确定目标图结构模板,所述目标图结构模板用于约束包括第一数量的实体节点的图结构的形式,所述第一数量为所述至少一个查询实体的数量;
基于所述知识图谱获取各个查询实体分别对应的候选实体;
基于所述各个查询实体分别对应的候选实体,从所述知识图谱中查询与所述目标图结构模板匹配的至少一组填充数据,利用所述至少一组填充数据对所述目标图结构模板进行填充,得到所述至少一个候选图结构。
3.根据权利要求1所述的方法,其特征在于,所述对所述查询语句进行实体识别,得到至少一个查询实体,包括:
对所述查询语句中的各个字符进行特征提取,得到所述各个字符分别对应的字符特征;
基于所述各个字符分别对应的字符特征,获取所述各个字符分别对应的标注结果,任一字符对应的标注结果用于指示所述任一字符与各个候选字符类型的匹配概率,所述各个候选字符类型包括实体类型和非实体类型;
在任一字符对应的标注结果指示的匹配概率中确定最高匹配概率,将所述最高匹配概率对应的候选字符类型作为所述任一字符的目标字符类型,基于所述各个字符的目标字符类型,获取所述至少一个查询实体。
4.根据权利要求1-3任一所述的方法,其特征在于,所述获取所述查询语句的整体结构与所述至少一个候选图结构的匹配度,包括:
调用目标匹配模型获取所述查询语句的整体结构与所述至少一个候选图结构的匹配度。
5.根据权利要求1-3任一所述的方法,其特征在于,所述确定所述查询语句的解析结果之后,所述方法还包括:
从所述知识图谱中查询与所述解析结果匹配的应答结果。
6.一种匹配模型的训练方法,其特征在于,所述方法包括:
获取样本语句以及所述样本语句对应的正例图结构和负例图结构,所述正例图结构为所述样本语句的整体结构对应的图结构,所述负例图结构为与所述正例图结构不同的图结构;
调用初始匹配模型获取所述样本语句的整体结构与所述正例图结构的第一匹配度,以及所述样本语句的整体结构与所述负例图结构的第二匹配度;
基于所述第一匹配度与所述第二匹配度的第一差值,获取目标损失,所述目标损失与所述第一差值呈负相关关系;
利用所述目标损失更新所述初始匹配模型的模型参数,得到目标匹配模型。
7.根据权利要求6所述的方法,其特征在于,所述初始匹配模型包括第一特征提取模型、第二特征提取模型和相似度计算模型,所述调用初始匹配模型获取所述样本语句的整体结构与所述正例图结构的第一匹配度,包括:
调用所述第一特征提取模型对所述样本语句进行特征提取,得到第一特征;调用所述第二特征提取模型对所述正例图结构进行特征提取,得到第二特征;
调用所述相似度计算模型计算所述第一特征与所述第二特征之间的相似度,将所述相似度作为所述样本语句的整体结构与所述正例图结构的第一匹配度。
8.根据权利要求7所述的方法,其特征在于,所述调用所述第二特征提取模型对所述正例图结构进行特征提取,得到第二特征,包括:
获取所述正例图结构对应的各个三元组,任一三元组基于所述正例图结构中的两个相邻的节点以及所述两个相邻的节点之间的边得到;
调用所述第二特征提取模型对所述各个三元组分别进行特征提取,得到所述各个三元组分别对应的子特征;
基于所述各个三元组分别对应的子特征,获取所述第二特征。
9.根据权利要求8所述的方法,其特征在于,所述基于所述各个三元组分别对应的子特征,获取所述第二特征,包括:
将所述各个三元组分别对应的子特征转换为所述各个三元组分别对应的分数;将任一三元组对应的分数与总分数的比值作为所述任一三元组对应的权重,所述总分数为所述各个三元组分别对应的分数之和;
基于所述各个三元组分别对应的权重,对所述各个三元组分别对应的子特征进行加权求和,得到所述第二特征。
10.根据权利要求6-9任一所述的方法,其特征在于,所述第一匹配度和所述第二匹配度均为不大于第一值且不小于第二值的数值,所述基于所述第一匹配度与所述第二匹配度的第一差值,获取目标损失,包括:
将第二差值与所述第一差值作差,得到第三差值,所述第二差值为所述第二值与所述第一值的差值;
将所述第三差值与参考值中的最大值作为所述目标损失,所述参考值为用于保证所述目标损失与所述第一差值呈负相关关系的数值。
11.一种语句解析装置,其特征在于,所述装置包括:
第一获取单元,用于获取待解析的查询语句以及所述查询语句对应的知识图谱;
识别单元,用于对所述查询语句进行实体识别,得到至少一个查询实体;
第二获取单元,用于基于所述至少一个查询实体和所述知识图谱,获取至少一个候选图结构;
第三获取单元,用于获取所述查询语句的整体结构与所述至少一个候选图结构的匹配度,基于匹配度满足选取条件的候选图结构,确定所述查询语句的解析结果。
12.一种匹配模型的训练装置,其特征在于,所述装置包括:
第四获取单元,用于获取样本语句以及所述样本语句对应的正例图结构和负例图结构,所述正例图结构为所述样本语句的整体结构对应的图结构,所述负例图结构为与所述正例图结构不同的图结构;
第五获取单元,用于调用初始匹配模型获取所述样本语句的整体结构与所述正例图结构的第一匹配度,以及所述样本语句的整体结构与所述负例图结构的第二匹配度;
第六获取单元,用于基于所述第一匹配度与所述第二匹配度的第一差值,获取目标损失,所述目标损失与所述第一差值呈负相关关系;
更新单元,用于利用所述目标损失更新所述初始匹配模型的模型参数,得到目标匹配模型。
13.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行,以使所述计算机设备实现如权利要求1至5任一所述的语句解析方法,或者如权利要求6至10任一所述的匹配模型的训练方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行,以使计算机实现如权利要求1至5任一所述的语句解析方法,或者如权利要求6至10任一所述的匹配模型的训练方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或所述计算机指令由处理器加载并执行,以使计算机实现如权利要求1至5任一所述的语句解析方法,或者如权利要求6至10任一所述的匹配模型的训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210578199.0A CN115130456A (zh) | 2022-05-25 | 2022-05-25 | 语句解析、匹配模型的训练方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210578199.0A CN115130456A (zh) | 2022-05-25 | 2022-05-25 | 语句解析、匹配模型的训练方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115130456A true CN115130456A (zh) | 2022-09-30 |
Family
ID=83376149
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210578199.0A Pending CN115130456A (zh) | 2022-05-25 | 2022-05-25 | 语句解析、匹配模型的训练方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115130456A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117573849A (zh) * | 2024-01-16 | 2024-02-20 | 之江实验室 | 一种知识图谱多跳问答方法、装置、设备及存储介质 |
-
2022
- 2022-05-25 CN CN202210578199.0A patent/CN115130456A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117573849A (zh) * | 2024-01-16 | 2024-02-20 | 之江实验室 | 一种知识图谱多跳问答方法、装置、设备及存储介质 |
CN117573849B (zh) * | 2024-01-16 | 2024-04-19 | 之江实验室 | 一种知识图谱多跳问答方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110852100A (zh) | 关键词提取方法、装置、电子设备及介质 | |
CN111753498B (zh) | 文本处理方法、装置、设备及存储介质 | |
CN111739517B (zh) | 语音识别方法、装置、计算机设备及介质 | |
CN111930964B (zh) | 内容处理方法、装置、设备及存储介质 | |
CN113515942A (zh) | 文本处理方法、装置、计算机设备及存储介质 | |
CN110555102A (zh) | 媒体标题识别方法、装置及存储介质 | |
CN114722937A (zh) | 一种异常数据检测方法、装置、电子设备和存储介质 | |
CN113269279B (zh) | 一种多媒体内容分类方法和相关装置 | |
CN115130456A (zh) | 语句解析、匹配模型的训练方法、装置、设备及存储介质 | |
CN113821658A (zh) | 对编码器进行训练的方法、装置、设备及存储介质 | |
CN110990549B (zh) | 获取答案的方法、装置、电子设备及存储介质 | |
CN112163095A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN115116437B (zh) | 语音识别方法、装置、计算机设备、存储介质及产品 | |
CN114296627B (zh) | 内容显示方法、装置、设备及存储介质 | |
CN112989134B (zh) | 节点关系图的处理方法、装置、设备及存储介质 | |
CN116977884A (zh) | 视频切分模型的训练方法、视频切分方法及装置 | |
CN115168643A (zh) | 音频处理方法、装置、设备及计算机可读存储介质 | |
CN114281937A (zh) | 嵌套实体识别模型的训练方法、嵌套实体识别方法及装置 | |
CN114328815A (zh) | 文本映射模型的处理方法、装置、计算机设备及存储介质 | |
CN111597823B (zh) | 中心词提取方法、装置、设备及存储介质 | |
CN113822084A (zh) | 语句翻译方法、装置、计算机设备及存储介质 | |
CN113569052A (zh) | 知识图谱的表示学习方法及装置 | |
CN111737415A (zh) | 实体关系抽取方法、实体关系学习模型的获取方法及设备 | |
CN116166794A (zh) | 语言模型的训练方法、文本分类方法、装置、设备及介质 | |
CN117556812A (zh) | 语种识别模型的获取、语种识别方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |