一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种实体识别方法和装置与流程

2022-02-21 09:56:17 来源:中国专利 TAG:


1.本发明涉及信息智能技术领域,特别涉及一种实体识别方法和装置。


背景技术:

2.基于知识图谱的问答(knowledge base question answering,kbqa),主要是将问题转化为知识图谱能够解答的结构,如sparql等。首先需要进行实体识别,即利用预先建立好的知识库识别出问题中的实体,并将其和知识图谱中的实体关联起来。
3.由于人类语言的歧义性、多样性、不连续性和省略性等,为实体识别带来了一定的难度。参照图1所示,其中,歧义性,即一个实体名称在不同的场景下会有多种不同的含义,如附图1中列举的边界歧义、语义歧义、嵌套歧义和标注歧义。边界歧义,例如,“南京市长江大桥”可以识别为“南京市长江大桥”,也可以是识别为“南京市长江大桥”(其中“江大桥”标注为人名);语义歧义,例如,同是苹果,结合上下文语义分析,可以将实体“苹果手机”中的苹果标注为品牌,将“新鲜苹果”中的苹果标注为水果;嵌套歧义,例如,“北京大学”可以识别为“北京大学”,北京标注为地名,也可以识别为“北京大学”,整体标注为组织名称;标注歧义,例如“张老师”中的张标注为人名,“张老师”整体标注为人名。多样性,即同一个实体可能会有很多种不同的表述方式。例如,“刘某某”和“xx”。不连续性,即实体中还可以插入其他的文本,但表示同一实体,例如,“畅想套餐”与“畅想50g套餐”。省略性,即一个query中,可能并不会出现指示实体的词,例如“我上不了网”与“宽带故障”字面上完全不同,没有一个相同的字,但经过语义分析可知“我上不了网”与“宽带故障”为同义实体。
4.故,如何正确的进行实体识别,成为现有技术中急于解决的技术问题。


技术实现要素:

5.鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种实体识别方法和装置。
6.第一方面,本发明实施例提供一种实体识别方法,包括:
7.从对话文本中得到候选实体;
8.将所述对话文本和所述候选实体输入选定的排序模型,得到候选实体与所述对话文本的匹配得分;
9.确定匹配得分满足设定条件的候选实体为所述对话文本的匹配实体。
10.在一些可选的实施例中,所述从对话文本中得到候选实体,具体包括执行下述至少一项:
11.在预设的实体库中,查询与所述对话文本的部分或全部匹配的结果作为候选实体;
12.基于正则识别规则,从所述对话文本中获得候选实体;
13.将所述对话文本输入预设的神经网络模型,得到所述对话文本的候选实体。
14.在一些可选的实施例中,所述在预设的实体库中,查询与所述对话文本的部分或
全部匹配的结果作为候选实体,具体包括:
15.将所述对话文本中的字符单元与预设的实体库中实体的字符串进行匹配;
16.确定与至少一个字符单元相匹配的字符串对应的实体,作为所述对话文本的候选实体。
17.在一些可选的实施例中,所述确定与至少一个字符单元相匹配的字符串对应的实体,作为所述对话文本的候选实体,具体包括:
18.从所述字符单元划分的多个最小字符单元中,确定与字符串中最小字符单元匹配的最小字符单元;
19.确定所述字符单元中每个最小字符单元的权重;
20.根据所述字符单元中每个最小字符单元的权重和匹配的最小字符单元的个数,确定所述字符串与所述字符单元的相似度;
21.若所述字符串与至少一个字符单元的相似度满足预设条件,将所述字符串对应的实体,作为所述对话文本的候选实体。
22.在一些可选的实施例中,所述确定所述字符单元中每个最小字符单元的权重,具体包括:
23.根据最小字符单元与权重的第一对应关系,确定所述字符单元中每个最小字符单元的权重,所述第一对应关系是根据词频-逆文档频率tf-idf方法预先确定的。
24.在一些可选的实施例中,所述确定所述字符单元中每个最小字符单元的权重,具体包括:
25.利用命名实体识别模型ner确定所述字符单元中最小字符单元的标签;
26.根据最小字符单元的标签和预先建立的最小字符单元标签与权重的第二对应关系,确定最小字符单元的权重。
27.在一些可选的实施例中,所述根据所述字符单元中每个最小字符单元的权重和匹配的最小字符单元的个数,确定所述字符串与所述字符单元的相似度,具体包括:
28.将匹配的最小字符单元的个数与所述字符单元中每个最小字符单元的权重之和的比值,确定为所述字符串与所述字符单元的相似度,所述权重不大于 1。
29.在一些可选的实施例中,训练所述神经网络模型所用的样本集中的一条样本数据的获取,具体包括:
30.将获取的样本文本、所述样本文本的匹配实体、所述匹配实体的属性实体和所述匹配实体的约束实体,组成用于训练所述神经网络模型的一条样本数据,所述约束实体用于限定所述匹配实体。
31.在一些可选的实施例中,训练所述神经网络模型所用的样本集中的一条样本数据的获取,具体包括:
32.获取包括样本文本、所述样本文本的初始匹配实体、所述初始匹配实体的初始属性实体和所述初始匹配实体的初始约束实体的样本数据,所述初始约束实体用于限定所述初始匹配实体;
33.通过实体库确定预先建立的知识库中的与所述初始匹配实体匹配的第一实体,所述第一实体的字符串与所述初始匹配实体的字符串在所述实体库中对应于同一实体,将所述第一实体作为样本匹配实体;
34.通过所述实体库确定所述知识库中的与所述初始属性实体匹配的第二实体,所述第二实体的字符串与所述初始属性实体的字符串在所述实体库中对应于同一实体,所述第二实体在所述知识库中的对应节点为所述第一实体在所述知识库中的对应节点的子节点,将所述第二实体作为样本属性实体;
35.通过所述实体库确定所述知识库中的与所述初始约束实体匹配的第三实体,所述第三实体的字符串与所述初始约束实体的字符串在所述实体库中对应于同一实体,所述第三实体在所述知识库中的对应节点为所述第一实体在所述知识库中的对应节点的子节点,将所述第三实体作为样本约束实体;
36.所述样本文本、样本匹配实体、样本属性实体和样本约束实体组成用于训练所述神经网络模型的一条样本数据。
37.在一些可选的实施例中,将所述对话文本输入预设的神经网络模型,得到所述对话文本的候选实体,具体包括:
38.将所述对话文本输入预设的神经网络模型,确定所述对话文本的候选实体,及所述候选实体的属性实体和约束实体;相应的,
39.所述确定匹配得分满足设定条件的候选实体为所述对话文本的匹配实体后,还包括:
40.根据所述对话文本的匹配实体,及所述匹配实体的属性实体和约束实体,通过预先建立的知识库确定所述对话文本的答案。
41.在一些可选的实施例中,所述将所述对话文本和所述候选实体输入选定的排序模型,具体包括:
42.将所述对话文本和所述候选实体输入梯度提升模型xgboost。
43.在一些可选的实施例中,预先训练所述梯度提升模型使用的样本集中的一条样本数据包括,样本文本、该样本文本对应的多个样本候选实体和每个样本候选实体与该样本文本的匹配得分,和至少一项下述样本候选实体的或该样本文本的属性特征:
44.样本候选实体的长度,样本候选实体的同义词是否出现在该样本文本中,样本候选实体是否出现在该样本文本中,样本候选实体的频率,样本候选实体中与该样本文本中的相同的字符单元,样本候选实体中与该样本文本匹配的文本段是否包含数字,样本候选实体中与该样本文本匹配的文本段是否包含地理位置,样本候选实体中字符单元的词性标注和该样本文本中字符单元的词性标注。
45.在一些可选的实施例中,所述将所述对话文本和所述候选实体输入选定的排序模型,具体包括:
46.将所述对话文本和所述候选实体输入深层分解因子机deepfm神经网络排序模型。
47.在一些可选的实施例中,预先训练所述深层分解因子机使用的样本集中的一条样本数据包括:样本文本、该样本文本对应的多个样本候选实体和每个样本候选实体与该样本文本的匹配得分,至少一项下述样本候选实体的或该样本文本的属性特征和至少一项下述语义信息;
48.所述属性特征包括,样本候选实体的长度,样本候选实体的同义词是否出现在该样本文本中,样本候选实体是否出现在该样本文本中,样本候选实体的频率,样本候选实体中与该样本文本中的相同的字符单元,样本候选实体中与该样本文本匹配的文本段是否包
含数字,样本候选实体中与该样本文本匹配的文本段是否包含地理位置,样本候选实体中字符单元的词性标注和该样本文本中字符单元的词性标注;
49.所述语义信息包括,样本候选实体的同义实体,样本候选实体的关键词,样本候选实体的摘要,样本候选实体的至少一个属性实体。
50.第二方面,本发明实施例提供一种自动回答方法,包括:
51.将获取到的问题信息转换为对话文本,按照上述实体识别方法确定所述对话文本的匹配实体;
52.通过知识库和所述匹配实体确定并输出所述问题信息的答案。
53.第三方面,本发明实施例提供一种对话流管理方法,包括:
54.将对话流中的第一问题信息转换为对话文本,按照上述实体识别方法确定所述对话文本的匹配实体;
55.通过知识库和所述匹配实体确定并输出所述第一问题信息的答案;
56.通过知识库、所述匹配实体和所述第一问题信息的后续第二问题信息,确定并输出所述第二问题信息的答案。
57.第四方面,本发明实施例提供一种实体识别装置,包括:
58.获取模块,用于从对话文本中得到候选实体;
59.排序模块,用于将所述对话文本和所述获取模块得到的候选实体输入选定的排序模型,得到候选实体与所述对话文本的匹配得分;
60.确定模块,用于确定所述排序模块得到的匹配得分满足设定条件的候选实体为所述对话文本的匹配实体。
61.第五方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机指令,当该指令被处理器执行时实现上述实体识别方法。
62.本发明实施例提供的上述技术方案的有益效果至少包括:
63.本发明实施例提供的实体识别方法,从对话文本中得到候选实体;将对话文本和候选实体输入选定的排序模型,得到候选实体与对话文本的匹配得分;确定匹配得分满足设定条件的候选实体为对话文本的匹配实体。利用多种匹配方法确定对话文本的多个候选实体,提高了匹配实体确定的有效性;再根据排序模型确定每个候选实体的匹配得分,将得分最高的候选实体确定为对话文本的匹配实体,排序模型保证了确定的匹配实体的合理性。
64.本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
65.下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
66.附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
67.图1为实体识别结果示例图;
68.图2为本发明实施例一中实体识别方法的流程图;
69.图3为本发明实施例二中实体识别方法的具体实现流程图;
70.图4为本发明实施例二中最小字符单元的权重确定示例图;
71.图5为本发明实施例三中问题自动答复方法的具体实现流程图;
72.图6为本发明实施例三中训练前馈神经网络模型所用的一条样本数据的确定方法的具体实现流程图;
73.图7为本发明实施例三中实体识别方法的示例图;
74.图8为本发明实施例四中另一实体识别方法的具体实现流程图;
75.图9为本发明实施例中实体识别装置的结构示意图。
具体实施方式
76.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
77.为了解决现有技术中存在的实体匹配准确率低甚至无法匹配出实体的问题,本发明实施例提供一种实体识别方法和装置,提高了对话文本的匹配实体的有效性和准确度。
78.实施例一
79.本发明实施例一提供一种实体识别方法,如图2所示,包括如下步骤:
80.步骤s21:从对话文本中得到候选实体。
81.在一个实施例中,从对话文本中得到候选实体,具体包括执行下述至少一项:
82.(1)在预设的实体库中,查询与对话文本的部分或全部匹配的结果作为候选实体;
83.(2)基于正则识别规则,从对话文本中获得候选实体;
84.(3)将对话文本输入预设的神经网络模型,得到对话文本的候选实体。
85.可选的,从对话文本中得到候选实体,除了上述实体库匹配的方法、基于正则表达式的方法和模型识别方法外,还可以采用别的方法,具体方法本实施例不做限定。
86.在一个实施例中,实体库匹配方法确定对话文本的候选实体,可以包括,将对话文本中包括的字符单元与预设的实体库中实体的字符串进行匹配;确定与至少一个字符单元相匹配的字符串对应的实体,作为对话文本的候选实体。
87.具体的,上述对话文本包括的字符单元为对话文本对应的整个字符串中的一段;实体库中实体的字符串为实体对应的整个字符串,可以是实体本身对应的字符串,可以是实体的同义实体对应的字符串。
88.字符单元与字符串相匹配,可以是二者完全相同,也可以是二者之间的相似度满足预设条件。具体如何从实体库中匹配对话文本的候选实体,后续实施例二中详细介绍。
89.在一个实施例中,利用选定的实体识别模型确定对话文本的候选实体,可以包括,将对话文本输入神经网络模型,例如前馈神经网络模型(feedforward neural network,fnn),得到对话文本的至少一个候选实体。
90.前馈神经网络又称作深度前馈网络(deep feedforward network,dfn)或多层感知机(multilayer perceptron,mlp),是人工神经网络的一种。前馈神经网络采用一种单向多层结构,其中每一层包含若干个神经元,在此种神经网络中,各神经元可以接收前一层神
经元的信号,并产生输出到下一层。第0层叫输入层,最后一层叫输出层,其他中间层叫做隐含层(或隐藏层、隐层)。隐层可以是一层,也可以是多层。整个网络中无反馈,信号从输入层向输出层单向传播。
91.具体的,训练前馈神经网络模型所用的样本集中的一条样本数据可以包括,样本文本、样本文本的匹配实体、匹配实体的属性实体和匹配实体的约束实体,约束实体用于限定匹配实体。例如下表1所示:
92.表1样本数据实例
93.样本文本匹配实体属性实体约束实体身高1米8的刘某某的妻子是谁刘某某妻子身高=1米8流量100元月包流量月包介绍金额=100元
94.步骤s22:将对话文本和候选实体输入选定的排序模型,得到候选实体与对话文本的匹配得分。
95.在一个实施例中,可以是,将对话文本和候选实体输入梯度提升模型 (extreme gradient boosting,xgboost)。
96.梯度提升模型是在gradient boosting框架下实现机器学习算法。
97.本实施例中梯度提升模型训练所用的样本集中的一条样本数据包括,样本文本、该样本文本对应的多个样本候选实体和每个样本候选实体与该样本文本的匹配得分,和至少一项下述样本候选实体的或该样本文本的属性特征:
98.(1)样本候选实体的长度。
99.即样本候选实体对应的字符串包含的最小字符单元的个数。例如,汉字组成的实体,实体的长度为实体包含的汉字的个数;英文单词组成的实体,实体长度为实体包含的单词的个数;数字组成的实体,实体长度为实体包含的数字的个数。
100.(2)样本候选实体的同义词是否出现在该样本文本中。
101.具体的,可以是根据实体库确定样本候选实体的同义词是否出现在该样本文本中,实体库中包含预先获取到的多个实体及每个实体的多个同义实体。
102.(3)样本候选实体是否出现在该样本文本中。
103.(4)样本候选实体的频率。
104.样本候选实体的频率的确定,可以是,预先获取到相关领域的多条文本,统计每个指定实体在文本中的出现频率,根据实体的出现频率确定实体的频率等级为低频、中频或高频,建立实体与频率等级的对应关系,根据对应关系确定实体的频率(即频率等级)。
105.(5)样本候选实体中与该样本文本中的相同的字符单元。
106.具体的,相同的字符单元可以是以最小字符单元为单位,也可以是由连续相同的多个最小字符单元组成。
107.(6)样本候选实体中与该样本文本匹配的文本段是否包含数字。
108.(7)样本候选实体中与该样本文本匹配的文本段是否包含地理位置。
109.(8)样本候选实体中字符单元的词性标注。
110.(9)该样本文本中字符单元的词性标注。
111.样本文本中字符单元的词性标注可以是通过命名实体识别(named entity recognition,ner)模型得到的,例如,对于下表2是对对话文本“刘某某12 月在北京的清华
大学唱了歌”的词性标注:
112.表2对话文本词性标注示例表
[0113][0114]
样本候选实体中与该样本文本匹配的文本段是否包含数字或是否包含地理位置,也可以是根据ner词性标注结果来确定。
[0115]
上述属性特征为离散或连续的属性特征,可选的,也可以是包括其他的离散或连续的属性特征。
[0116]
在一个实施例中,将对话文本和候选实体输入的选定的排序模型,还可以是,将对话文本和候选实体输入深层分解因子机(deep factorization machine, deepfm)神经网络排序模型。
[0117]
在一个实施例中,预先训练深层分解因子机使用的样本集中的一条样本数据包括,样本文本、该样本文本对应的多个样本候选实体和每个样本候选实体与该样本文本的匹配得分,至少一项下述样本候选实体的或该样本文本的属性特征和至少一项下述语义信息;
[0118]
属性特征包括,样本候选实体的长度,样本候选实体的同义词是否出现在该样本文本中,样本候选实体是否出现在该样本文本中,样本候选实体的频率,样本候选实体中与该样本文本中的相同的字符单元,样本候选实体中与该样本文本匹配的文本段是否包含数字,样本候选实体中与该样本文本匹配的文本段是否包含地理位置,和样本候选实体中字符单元的词性标注;
[0119]
语义信息包括,样本候选实体的同义实体,样本候选实体的关键词,样本候选实体的摘要,样本候选实体的至少一个属性实体。
[0120]
deepfm与xgboost相比优势是可以在离散或连续的通用属性特征的基础上,加入语义信息的分析,使得模型的学习能力更强、范围更广,故预测的排序结果准确性更高;但deepfm模型训练所需要的数据更丰富,需要在大量样本数据的积累基础上才能实现。所以具体选用哪种模型来确定候选实体与对话文本的匹配得分,可以视实际情况和需求来定。可选的,也可以选用其他的排序模型来实现。
[0121]
步骤s23:确定匹配得分满足设定条件的候选实体为对话文本的匹配实体。
[0122]
具体的,可以是预先设定匹配得分最高的一个候选实体为对话文本的匹配实体;也可以是,预先设定匹配得分最高的多个候选实体为对话文本的匹配实体,并直接输出最终的匹配实体;还可以是,预先设定匹配得分最高的多个候选实体为对话文本的匹配实体,将确定出的匹配实体提供给用户选择,根据用户的选择确定最终的匹配实体。
[0123]
本发明实施例一提供的实体识别方法,从对话文本中得到候选实体;将对话文本和候选实体输入选定的排序模型,得到候选实体与对话文本的匹配得分;确定匹配得分满足设定条件的候选实体为对话文本的匹配实体。利用多种匹配方法确定对话文本的多个候选实体,提高了匹配实体确定的有效性;再根据排序模型确定每个候选实体的匹配得分,将得分最高的候选实体确定为对话文本的匹配实体,排序模型保证了确定的匹配实体的合理
性。
[0124]
实施例二
[0125]
本发明实施例二提供一种实体识别方法的具体实现,其流程如图3所示,包括如下步骤:
[0126]
步骤s31:将对话文本中的字符单元与预设的实体库中实体的字符串进行匹配。
[0127]
一个实体往往有多个同义实体,例如“畅享放心用套餐”、“不限量套餐”、“大流量套餐”和“无限量套餐”。故实体库中的每个实体可以是对应多个字符串。
[0128]
将对话文本中包括的字符单元与实体库中实体的字符串进行匹配,确定与至少一个字符单元相匹配的字符串对应的实体,作为对话文本的候选实体。具体的,字符串与字符单元相匹配,参见下述步骤所示,可以是,字符串与字符单元相同,也可以是,字符串与字符单元的相似度满足预设条件。
[0129]
步骤s32:若字符串与至少一个字符单元相同,确定字符串对应的实体为对话文本的候选实体。
[0130]
若字符串与至少一个字符单元不是完全相同,而是字符单元存在插入、部分替换或部分省略等情况,例如实体“日本大包多天流量套餐”的字符串与对话文本“日本100元大包多天”的字符单元,字符单元对字符串而言,存在插入“100元”和省略“流量套餐”的情况,执行下述步骤s33~步骤s36。
[0131]
步骤s33:从字符单元划分的多个最小字符单元中,确定与字符串中最小字符单元匹配的最小字符单元。
[0132]
字符单元中的最小字符单元与字符串中的最小字符单元匹配,指二者相同,且二者的出现顺序先后是一致的。例如,“流量”与“量流”,“流量”中的“流”与“量流”中的“流”相同,但二者的出现先后不一致;“流量”中的“量”与“量流”中的“量”相同,但二者的出现先后不一致,故不能确定“流量”中的“流”与“量流”中的“流”匹配,或“流量”中的“量”与“量流”中的“量”匹配。
[0133]
步骤s34:确定字符单元中每个最小字符单元的权重。
[0134]
在一个实施例中,可以包括,根据最小字符单元与权重的第一对应关系,确定字符单元中每个最小字符单元的权重,第一对应关系是根据词频-逆文档频率tf-idf方法预先确定的。
[0135]
在一个实施例中,可以包括,利用命名实体识别模型ner确定字符单元中最小字符单元的标签;根据最小字符单元的标签和预先建立的最小字符单元标签与权重的第二对应关系,确定最小字符单元的权重。
[0136]
通过用户对badcase的分析和对标注的持续投入,可以积累大量对话的标注数据;同时通过用户对答案的反馈,可以获取大量伪标注数据如点赞、点踩和推荐query的点击等,这样就得到了大量query与匹配实体的数据对作为训练数据,训练一个ner识别模型;当模型对query中的字打上实体标签后,可以认为相应的字是比较重要的,将其权重设置的较大;将没有被打上实体标签的字的权重设置的相对较小。参见图4所示,“流量月包”四个字被打上了流量产品的标签,说明这4个字的权重比较重要,可以将其权重设置为2;其他未打上实体标签(标签的类型不是产品)的字,将其权重设置为1,这样在计算相似度的时候,就达到了合理确定每个最小字符单元权重的目的。
[0137]
步骤s35:根据字符单元中每个最小字符单元的权重和匹配的最小字符单元的个数,确定字符串与字符单元的相似度。
[0138]
在一个实施例中,可以包括,将匹配的最小字符单元的个数与字符单元中每个最小字符单元的权重之和的比值,确定为字符串与字符单元的相似度,权重不大于1。
[0139]
步骤s36:若字符串与至少一个字符单元的相似度满足预设条件,将字符串对应的实体,作为对话文本的候选实体。
[0140]
步骤s37:将对话文本和候选实体输入选定的排序模型,得到候选实体与对话文本的匹配得分。
[0141]
步骤s38:确定匹配得分满足设定条件的候选实体为对话文本的匹配实体。
[0142]
本发明实施例二提供的实体识别方法,根据字符单元中每个最小字符单元的权重和匹配最小字符单元的个数,确定字符串与字符单元的相似度,不同权重的设置,使得相似度的确定更加合理,最终匹配到的候选实体的准确度更高;若字符串与至少一个字符单元的相似度满足预设条件,将字符串对应的实体,作为对话文本的候选实体,利用相似度来确定候选实体,提高了匹配实体确定的有效性,例如可以在对话文本存在省略、替换和内部插入等情况时,也能够将实体匹配出来。
[0143]
实施例三
[0144]
本发明实施例三提供一种问题自动答复方法的具体实现,其流程如图5所示,包括如下步骤:
[0145]
步骤s51:将提问文本输入前馈神经网络模型fnn,得到提问文本的至少一个候选实体。
[0146]
在一个实施例中,训练上述前馈神经网络模型所用的样本集中的一条样本数据的获取,具体可以包括,将获取的样本文本、样本文本的匹配实体、匹配实体的属性实体和匹配实体的约束实体,组成用于训练前馈神经网络模型的一条样本数据,约束实体用于限定匹配实体。
[0147]
参见图6所示,训练前馈神经网络模型所用的样本集中的一条样本数据的获取,具体包括下述步骤:
[0148]
步骤s61:获取包括样本文本、样本文本的初始匹配实体、初始匹配实体的初始属性实体和初始匹配实体的初始约束实体的样本数据。
[0149]
具体的,初始约束实体用于限定初始匹配实体,即初始约束实体进一步限定了初始匹配实体的代表范围。
[0150]
步骤s62:通过实体库确定预先建立的知识库中的与初始匹配实体匹配的第一实体,将第一实体作为样本匹配实体。
[0151]
上述第一实体的字符串与初始匹配实体的字符串在实体库中对应于同一实体。例如,样本文本为“身高1米8的xx的老婆是谁”,初始匹配实体为“xx”,初始匹配实体的属性实体为“老婆”,约束实体为“身高1米8”,预先建立的知识库中的实体有“刘某某”,没有“xx”,而实体库中“刘某某”和“xx”对应的字符串是同一实体的字符串,故确定“刘某某”为样本文本的样本匹配实体。
[0152]
步骤s63:通过实体库确定知识库中的与初始属性实体匹配的第二实体,将第二实体作为样本属性实体。
[0153]
具体的,上述第二实体的字符串与初始属性实体的字符串在实体库中对应于同一实体,第二实体在知识库中的对应节点为第一实体在知识库中的对应节点的子节点。
[0154]
还以样本文本为“身高1米8的xx的老婆是谁”为例,初始属性实体为“老婆”,而知识库中“刘某某”对应的节点的子节点中并没有“老婆”,有“妻子”子节点,通过实体库可以确定“老婆”与“妻子”对应的字符串是同一实体的字符串,故确定样本属性实体为“妻子”。
[0155]
步骤s64:通过实体库确定知识库中的与所述初始约束实体匹配的第三实体,将第三实体作为样本约束实体。
[0156]
具体的,第三实体的字符串与初始约束实体的字符串在实体库中对应于同一实体,第三实体在所述知识库中的对应节点为第一实体在知识库中的对应节点的子节点。
[0157]
还以样本文本为“身高1米8的xx的老婆是谁”为例,初始约束实体为“身高1米8”,而知识库中“刘某某”对应的节点的子节点中并没有“身高1 米8”,有“身高=1米8”的子节点,通过实体库可以确定“身高1米8”与“身高=1米8”对应的字符串是同一实体的字符串,故确定样本约束实体为“身高=1米8”。
[0158]
步骤s65:样本文本、样本匹配实体、样本属性实体和样本约束实体组成用于训练前馈神经网络模型的一条样本数据。
[0159]
根据实体库将样本匹配实体、样本属性实体和样本约束实体都确定为知识库中存在的实体,即以知识库为标准统一各种实体的称呼,使得建立的样本数据标准统一,故最终学习的效果也更好;同时可以使得利用训练好的前馈神经网络模型得到的提问文本的匹配实体、属性实体和约束实体都是知识库中存在的实体,故可以根据输出结果进一步确定提问文本的答案。
[0160]
步骤s52:将提问文本输入前馈神经网络模型fnn,确定提问文本的候选匹配实体,及候选匹配实体的属性实体和约束实体。
[0161]
步骤s53:将提问文本和候选实体输入选定的排序模型,得到候选实体与提问文本的匹配得分。
[0162]
步骤s54:确定匹配得分满足设定条件的候选实体为提问文本的匹配实体。
[0163]
步骤s55:根据提问文本的匹配实体,及匹配实体的属性实体和约束实体,通过知识库确定提问文本的答案。
[0164]
具体的,可以是根据匹配实体、匹配实体的属性实体和约束实体,确定在知识库中的匹配路径,在匹配路径中确定对应的节点的实体,为提问文本的答案。
[0165]
上述针对提问文本即query,利用基于“实体—属性—约束”的多任务深度学习方法来对其实体进行识别,参照图7所示,对于query,首先经过一个embedding层,将query转换成一个语义向量表示,例如将“营业厅的电话是多少”转换为“0.1,-0.5,0.3”;然后通过shared layers层,分别对实体、属性和约束进行预测,根据预测的属性和约束,缩小实体(匹配实体)的范围,最终使得预测出的候选匹配实体个数少,准确度高。该方法不仅能够识别query 中没有实体的情况,例如“不能上网了”识别出的候选匹配实体为“网络故障”;还能对用户给出的badcase直接进行端到端的学习,对问题进行修复,即根据 badcase来丰富训练模型所用的样本数据,最终使得模型的学习更优,预测更准确。
[0166]
实施例四
[0167]
本发明实施例四提供一种实体识别方法的具体实现,其流程如图8所示,包括如下
步骤:
[0168]
步骤s81:利用命名实体识别模型ner匹配对话文本的候选实体。
[0169]
具体的,上述ner具有分词及词性标注的功能,同时还具有实体识别的功能,故将对话文本输入ner,输出的是将对话文本进行了分词且为每个分词标注了词性,若对话文本中包含与ner中存储的实体相匹配的实体,将对话文本中的该实体打上实体标签且不再对该实体进行分词。
[0170]
步骤s82:从实体库中匹配对话文本的候选实体。
[0171]
虽然ner也可以匹配出对话文本中的候选实体,但是由于ner中无法注入海量的实体,故需要继续利用实体库匹配候选实体。从实体库中匹配对话文本的候选实体,可以是候选实体与实体库中的对应部分相同,也可以是候选实体与实体库中的对应部分的相似度满足预设条件,具体匹配方法见上述实施例中所述,此处不再赘述。
[0172]
步骤s83:基于正则表达式确定对话文本的候选实体。
[0173]
在实体识别中,存在一些具有识别规则的实体,可以通过正则表达式来进行召回。比如国内的车牌是通过规则生成的,第一个字是各省份的简称,如“京”,之后是5位数字或字母,还有一些特殊的车牌类型等,可以通过正则表达式“[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领 a-z]{1}[a-z]{1}[a-z0-9]{4}[a-z0-9挂学警港澳]{1}$”来表示;国内的手机号码主要是属于3个大运营商的,以各号段开始共11位,我们可以通过正则表达式“1([358][0-9]|4[579]|66|7[0135678]|9[89])[0-9]{8}$”来表示。故可以将对话文本中符合正则表达式的部分识别为对应的候选实体,例如车牌号和电话号码等。
[0174]
步骤s84:利用前馈神经网络模型fnn识别对话文本的候选实体。
[0175]
步骤s81~步骤s84没有先后顺序,可以同时执行,也可以先执行其中任何一步或多步。
[0176]
步骤s85:将对话文本和所有候选实体输入选定的排序模型,得到候选实体与对话文本的匹配得分。
[0177]
步骤s86:确定匹配得分满足设定条件的候选实体为对话文本的匹配实体。
[0178]
上述步骤中在前述实施例中已经介绍过的,此处不再赘述。
[0179]
本发明实施例提供的实体识别方法可以应用于多种场景中,例如,可以对电商领域中的用户数据(例如与商家的沟通信息和与电商客服的沟通信息等) 进行商品名称识别;也可以对音乐和电影等领域中的数据(例如歌词、用户评论和电影简介等)进行人名、歌曲名称和电影名称等的识别;还可以对医疗领域中的数据(例如诊断书和化验单等)进行药品名称或疾病名称识别;还可以对物流领域中的数据进行地名的识别等。
[0180]
基于本发明的发明构思,本发明实施例还提供一种自动回答方法,包括:
[0181]
将获取到的问题信息转换为对话文本,按照上述实体识别方法确定所述对话文本的匹配实体;通过知识库和所述匹配实体确定并输出所述问题信息的答案。
[0182]
具体的,可以是在识别对话文本的实体的同时,识别出实体的属性和约束,根据实体、属性和约束,通过知识图谱直接确定问题信息的答案;可选的,也可以是,只识别对话文本的实体,通过识别出的实体进行对话文本的语义分析,根据语义分析结果通过知识库确定问题信息的答案。
[0183]
基于本发明的发明构思,本发明实施例还提供一种对话流管理方法,包括:
[0184]
将对话流中的第一问题信息转换为对话文本,按照上述实体识别方法确定所述对话文本的匹配实体;通过知识库和所述匹配实体确定并输出所述第一问题信息的答案;通过知识库、所述匹配实体和所述第一问题信息的后续第二问题信息,确定并输出所述第二问题信息的答案。
[0185]
即将从对话流中前面的问题信息中识别出的实体,用于后续问题信息的语义分析,根据语义分析结果通过知识库确定后续问题信息的答案。
[0186]
基于本发明的发明构思,本发明实施例还提供一种实体识别装置,其结构如图9所示,包括:
[0187]
获取模块91,用于从对话文本中得到候选实体;
[0188]
排序模块92,用于将所述对话文本和获取模块91得到的候选实体输入选定的排序模型,得到候选实体与所述对话文本的匹配得分;
[0189]
确定模块93,用于确定排序模块92得到的匹配得分满足设定条件的候选实体为所述对话文本的匹配实体。
[0190]
在一个实施例中,获取模块91,从对话文本中得到候选实体,具体用于执行下述至少一项:
[0191]
在预设的实体库中,查询与所述对话文本的部分或全部匹配的结果作为候选实体;基于正则识别规则,从所述对话文本中获得候选实体;将所述对话文本输入预设的神经网络模型,得到所述对话文本的候选实体。
[0192]
在一个实施例中,获取模块91,在预设的实体库中,查询与所述对话文本的部分或全部匹配的结果作为候选实体,具体用于:
[0193]
将所述对话文本中的字符单元与预设的实体库中实体的字符串进行匹配;确定与至少一个字符单元相匹配的字符串对应的实体,作为所述对话文本的候选实体。
[0194]
在一个实施例中,获取模块91,确定与至少一个字符单元相匹配的字符串对应的实体,作为所述对话文本的候选实体,具体用于:
[0195]
从所述字符单元划分的多个最小字符单元中,确定与字符串中最小字符单元匹配的最小字符单元;确定所述字符单元中每个最小字符单元的权重;根据所述字符单元中每个最小字符单元的权重和匹配的最小字符单元的个数,确定所述字符串与所述字符单元的相似度;若所述字符串与至少一个字符单元的相似度满足预设条件,将所述字符串对应的实体,作为所述对话文本的候选实体。
[0196]
在一个实施例中,获取模块91,确定所述字符单元中每个最小字符单元的权重,具体用于:
[0197]
根据最小字符单元与权重的第一对应关系,确定所述字符单元中每个最小字符单元的权重,所述第一对应关系是根据词频-逆文档频率tf-idf方法预先确定的。
[0198]
在一个实施例中,获取模块91,确定所述字符单元中每个最小字符单元的权重,具体用于:
[0199]
利用命名实体识别模型ner确定所述字符单元中最小字符单元的标签;根据最小字符单元的标签和预先建立的最小字符单元标签与权重的第二对应关系,确定最小字符单元的权重。
[0200]
在一个实施例中,获取模块91,根据所述字符单元中每个最小字符单元的权重和匹配的最小字符单元的个数,确定所述字符串与所述字符单元的相似度,具体用于:
[0201]
将匹配的最小字符单元的个数与所述字符单元中每个最小字符单元的权重之和的比值,确定为所述字符串与所述字符单元的相似度,所述权重不大于 1。
[0202]
在一个实施例中,排序模块92,将所述对话文本和所述候选实体输入选定的排序模型,具体用于:
[0203]
将所述对话文本和所述候选实体输入梯度提升模型xgboost。
[0204]
在一个实施例中,排序模块92,将所述对话文本和所述候选实体输入选定的排序模型,具体用于:
[0205]
将所述对话文本和所述候选实体输入深层分解因子机deepfm神经网络排序模型。
[0206]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0207]
基于本发明的发明构思,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机指令,当该指令被处理器执行时实现上述实体识别方法。
[0208]
基于本发明的发明构思,本发明实施例还提供一种服务器,包括:存储器、处理器及存储于存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述实体识别方法。
[0209]
除非另外具体陈述,术语比如处理、计算、运算、确定、显示等等可以指一个或更多个处理或者计算系统、或类似设备的动作和/或过程,所述动作和/ 或过程将表示为处理系统的寄存器或存储器内的物理(如电子)量的数据操作和转换成为类似地表示为处理系统的存储器、寄存器或者其他此类信息存储、发射或者显示设备内的物理量的其他数据。信息和信号可以使用多种不同的技术和方法中的任何一种来表示。例如,在贯穿上面的描述中提及的数据、指令、命令、信息、信号、比特、符号和码片可以用电压、电流、电磁波、磁场或粒子、光场或粒子或者其任意组合来表示。
[0210]
应该明白,公开的过程中的步骤的特定顺序或层次是示例性方法的实例。基于设计偏好,应该理解,过程中的步骤的特定顺序或层次可以在不脱离本公开的保护范围的情况下得到重新安排。所附的方法权利要求以示例性的顺序给出了各种步骤的要素,并且不是要限于所述的特定顺序或层次。
[0211]
在上述的详细描述中,各种特征一起组合在单个的实施方案中,以简化本公开。不应该将这种公开方法解释为反映了这样的意图,即,所要求保护的主题的实施方案需要清楚地在每个权利要求中所陈述的特征更多的特征。相反,如所附的权利要求书所反映的那样,本发明处于比所公开的单个实施方案的全部特征少的状态。因此,所附的权利要求书特此清楚地被并入详细描述中,其中每项权利要求独自作为本发明单独的优选实施方案。
[0212]
本领域技术人员还应当理解,结合本文的实施例描述的各种说明性的逻辑框、模块、电路和算法步骤均可以实现成电子硬件、计算机软件或其组合。为了清楚地说明硬件和软件之间的可交换性,上面对各种说明性的部件、框、模块、电路和步骤均围绕其功能进行了一般地描述。至于这种功能是实现成硬件还是实现成软件,取决于特定的应用和对整个系统所施加的设计约束条件。熟练的技术人员可以针对每个特定应用,以变通的方式实现所描述的功能,但是,这种实现决策不应解释为背离本公开的保护范围。
[0213]
结合本文的实施例所描述的方法或者算法的步骤可直接体现为硬件、由处理器执行的软件模块或其组合。软件模块可以位于ram存储器、闪存、rom 存储器、eprom存储器、eeprom存储器、寄存器、硬盘、移动磁盘、cd-rom 或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质连接至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于 asic中。该asic可以位于用户终端中。当然,处理器和存储介质也可以作为分立组件存在于用户终端中。
[0214]
对于软件实现,本技术中描述的技术可用执行本技术所述功能的模块(例如,过程、函数等)来实现。这些软件代码可以存储在存储器单元并由处理器执行。存储器单元可以实现在处理器内,也可以实现在处理器外,在后一种情况下,它经由各种手段以通信方式耦合到处理器,这些都是本领域中所公知的。
[0215]
上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语“包含”,该词的涵盖方式类似于术语“包括”,就如同“包括,”在权利要求中用作衔接词所解释的那样。此外,使用在权利要求书的说明书中的任何一个术语“或者”是要表示“非排它性的或者”。术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献