模型训练及命名实体识别方法、装置、设备和存储介质与流程

文档序号:32100269发布日期:2022-11-09 00:22阅读:146来源:国知局
模型训练及命名实体识别方法、装置、设备和存储介质与流程

1.本发明涉及人工智能技术领域,尤其涉及一种模型训练及命名实体识别方法、装置、设备和存储介质。


背景技术:

2.命名实体识别是自然语言处理领域中的一个基本问题,属于序列标注问题的范畴。简单来说,命名实体识别问题就是将文本中包含的感兴趣的命名实体识别出来并加以归类,例如人名,地名和机构名等。
3.随着神经网络技术的发展,目前,采用神经网络模型来实现命名实体识别已经成为一种主流趋势。在使用神经网络模型进行命名实体识别的过程中,会涉及词向量编码(embedding)的步骤,以将需要识别的文字编码成向量表示。词向量编码结果对命名实体识别结果的准确性具有重要影响。


技术实现要素:

4.本发明实施例提供一种模型训练及命名实体识别方法、装置、设备和存储介质,可以提高命名实体识别结果的准确性。
5.第一方面,本发明实施例提供一种命名实体识别方法,该方法包括:
6.确定与待识别的文本对应的命名实体识别模型,所述命名实体识别模型中包括多个词向量编码网络;
7.通过所述多个词向量编码网络分别对所述文本进行词向量编码,以获得所述文本对应的多组词向量,其中,一组词向量对应于一个词向量编码网络;
8.基于所述多组词向量,识别出所述文本中包含的命名实体。
9.第二方面,本发明实施例提供一种命名实体识别装置,该装置包括:
10.确定模块,用于确定与待识别的文本对应的命名实体识别模型,所述命名实体识别模型中包括多个词向量编码网络;
11.编码模块,用于通过所述多个词向量编码网络分别对所述文本进行词向量编码,以获得所述文本对应的多组词向量,其中,一组词向量对应于一个词向量编码网络;
12.识别模块,用于基于所述多组词向量,识别出所述文本中包含的命名实体。
13.第三方面,本发明实施例提供一种电子设备,包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器至少可以实现如第一方面所述的命名实体识别方法。
14.第四方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现如第一方面所述的命名实体识别方法。
15.在上述本发明实施例提供的命名实体识别方案中,当需要对某文本进行命名实体识别时,首先确定用于对该文本进行命名实体识别所需使用的命名实体识别模型,该命名
实体识别模型中包括多个词向量编码网络。不同命名实体识别模型中包括的词向量编码网络不完全相同。在使用确定出的命名实体识别模型对上述文本进行命名识别实体的过程中,首先,将文本分别输入到各个词向量编码网络中,以得到每个词向量编码网络输出的一组词向量,这样最终可以得到与多个词向量编码网络对应的多组词向量。之后,基于这多组词向量来识别出上述文本中包含的命名实体。在该方案中,通过组合多个词向量编码网络的方式,可以以不同粒度(或者说维度)来对文本进行词向量表示,获得更加全面而丰富的语义,从而有助于最终提高命名实体识别结果的准确性。
16.第五方面,本发明实施例提供一种模型训练方法,该方法包括:
17.获取已进行命名实体标注的训练文本;
18.确定第一词向量编码网络集合,所述第一词向量编码网络集合中包含多个词向量编码网络;
19.通过所述第一词向量编码网络集合中包含的多个词向量编码网络分别对所述训练文本进行词向量编码,以获得所述训练文本对应的多组词向量,其中,一组词向量对应于一个词向量编码网络;
20.基于通过所述第一词向量编码网络集合得到的多组词向量,训练第一命名实体识别模型,所述第一命名实体识别模型中包括所述第一词向量编码网络集合。
21.第六方面,本发明实施例提供一种模型训练装置,该装置包括:
22.获取模块,用于获取已进行命名实体标注的训练文本;
23.确定模块,用于确定第一词向量编码网络集合,所述第一词向量编码网络集合中包含多个词向量编码网络;
24.训练模块,用于通过所述第一词向量编码网络集合中包含的多个词向量编码网络分别对所述训练文本进行词向量编码,以获得所述训练文本对应的多组词向量,其中,一组词向量对应于一个词向量编码网络;以及,基于通过所述第一词向量编码网络集合得到的多组词向量,训练第一命名实体识别模型,所述第一命名实体识别模型中包括所述第一词向量编码网络集合。
25.第七方面,本发明实施例提供一种电子设备,包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器至少可以实现如第五方面所述的模型训练方法。
26.第八方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现如第五方面所述的模型训练方法。
27.在上述本发明实施例提供的模型训练方案中,以标注有命名实体的训练文本来对命名实体识别模型进行训练。被训练的命名实体识别模型中包括多个词向量编码网络,以用于对训练文本进行词向量编码。在训练过程中,首先,将训练文本分别输入到各个词向量编码网络中,以得到每个词向量编码网络输出的一组词向量,这样最终可以得到与多个词向量编码网络对应的多组词向量。之后,基于这多组词向量来训练命名实体识别模型。在该方案中,通过组合多个词向量编码网络的方式,可以以不同粒度(或者说维度)来对文本进行词向量表示,获得更加全面而丰富的语义,从而使得最终训练得到的命名实体识别模型能够具有更好的性能。
附图说明
28.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
29.图1为本发明实施例提供的一种命名实体识别模型的组成示意图;
30.图2为本发明实施例提供的另一种命名实体识别模型的组成示意图;
31.图3为本发明实施例提供的一种模型训练方法的流程图;
32.图4为本发明实施例提供的一种命名实体识别模型的训练过程示意图;
33.图5为本发明实施例提供的另一种模型训练方法的流程图;
34.图6为本发明实施例提供的一种命名实体识别方法的流程图;
35.图7为本发明实施例提供的一种命名实体识别场景的示意图;
36.图8为本发明实施例提供的一种模型训练装置的结构示意图;
37.图9为与图8所示实施例提供的模型训练装置对应的电子设备的结构示意图;
38.图10为本发明实施例提供的一种命名实体识别装置的结构示意图;
39.图11为与图10所示实施例提供的命名实体识别装置对应的电子设备的结构示意图。
具体实施方式
40.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
41.在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
42.取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
43.另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
44.目前,采用神经网络模型来实现命名实体识别已经成为一种主流趋势。图1为本发明实施例提供的一种命名实体识别模型的组成示意图,如图1所示,一种典型的命名实体识别模型可以包括三个组成部分:词向量编码网络(embedding)、特征提取网络以及输出网络。
45.其中,特征提取网络可以实现为诸如循环神经网络(recurrent neural network,简称rnn)模型、长短期记忆网络(long short-term memory,简称lstm)模型或双向长短期记忆网络(bi-directional long short-term memory,简称bi-lstm)模型。输出网络可以实现为诸如条件随机场(conditional random field,简称crf)模型、分类(softmax)模型。
46.其中,词向量编码网络主要用于实现对输入文本进行词向量编码,将输入文本映射到向量空间。目前,已经存在多种词向量编码网络,按照编码粒度(或者说编码方式、编码维度、编码对象)的不同进行划分,可以包括面向字符、子字、词语等不同粒度的编码网络。
47.简单描述下上述命名实体识别模型的工作过程:针对待识别的文本(可能是一个或几个词语、一句话、一段话、一篇文章)先进行预处理,比如分段、分词处理,之后将预处理后得到的若干词语输入到词向量编码网络中,由其完成词向量编码处理,将编码得到的词向量输入到特征提取网络,以提取语义特征,之后,输出网络基于语义特征进行命名实体标签的预测。
48.研究发现,在使用类似于图1所示组成结构的命名实体识别模型进行命名实体识别时,由于仅采用一种编码网络,这种编码网络的词向量编码结果对命名实体识别结果影响明显,也就是说,如果这一种编码网络的词向量编码结果不佳,将影响命名实体识别结果的准确性。
49.为了提高命名实体识别结果的准确性,提高命名实体识别模型的健壮性,在本发明实施例中,还提供了如图2所示的一种命名实体识别模型。
50.如图2中所示,该命名实体识别模型中包括图中示意的第一词向量编码网络和第二词向量编码网络,以及特征提取网络和输出网络。
51.由图2的示意可知,第一词向量编码网络和第二词向量编码网络的输出的拼接结果输入到特征提取网络中,这样,特征提取网络提取的语义特征中会包含这两个词向量编码网络各自蕴含的词向量特征。
52.值得说明的是,第一,图2中本质上是想示意命名实体识别模型中可以包括多个不同的词向量编码网络,不以图2中示意的两种词向量编码网络的个数为限;第二,命名实体识别模型中包括的词向量编码网络可以是对应于不同编码粒度的词向量编码网络,比如可以包括字符和词语这两种编码粒度的词向量编码网络。第三,命名实体识别模型中,每种编码粒度的词向量编码网络可以仅有一个。
53.通过在一个命名实体识别模型中设置多种词向量编码网络,可以对输入文本中包含的词语进行多粒度地更加全面的理解,有助于提高命名实体识别结果的准确性。
54.本发明实施例中,词向量编码网络对应的编码粒度可以包括字符、子字、词语等多种不同粒度。
55.编码粒度为字符级别的词向量编码网络,可以实现针对每个字符(比如中文中的每个汉字)的词向量编码。简单介绍其编码过程为:以一个词语“冰箱”为例,可以先对“冰”和“箱”两个字分别进行编码,得到这两个字对应的两个向量,表示为c1、c2,之后,对这两个向量c1和c2进行编码,得到对应于“冰箱”这个词语的词向量c。
56.编码粒度为子字级别的词向量编码网络,可以实现针对每个子字的词向量编码。简单介绍其编码过程为:以一个词语“彩旗飘飘”为例,假设其中包括两个子字:“彩旗”、“飘飘”,可以先对“彩旗”和“飘飘”两个子字分别进行编码,得到这两个子字对应的两个向量,表示为d1、d2,之后,对这两个向量d1和d2进行编码,得到对应于“彩旗飘飘”这个词语的词向量d。常见的子字级别的词向量编码网络比如可以包括bert(bidirectional encoder representations from transformers)。
57.编码粒度为词语级别的词向量编码网络,可以实现针对每个词语的词向量编码。
常见的词语级别的词向量编码网络比如可以包括不考虑词语上下文的fasttext模型、考虑词语上下文的emlo模型,等等。
58.下面结合以下一些实施例具体说明本文中命名实体识别模型的训练过程以及基于训练得到的命名实体识别模型执行命名实体识别的过程。
59.图3为本发明实施例提供的一种模型训练方法的流程图,如图3所示,该方法包括如下步骤:
60.301、获取已进行命名实体标注的训练文本。
61.为了训练命名实体识别模型,需要预先获得若干训练文本,训练文本可以是任一语句、文章、搜索词,等等。本实施例中仅以任一训练文本为例进行说明。
62.在有监督训练方式中,需要为训练样本进行监督信息的标注。本文中,针对命名实体识别任务,需要为训练文本进行命名实体的标注。
63.实际应用中,在不同应用场景中所需要识别的命名实体的类别可能是不同的,因此,需要根据被训练的命名实体识别模型所要被应用的场景,来预先设定多种命名实体标签,进而完成训练文本的命名实体标注。比如,被标注的命名实体可以包括:人名、地名、时间、商品名称、多种商品属性,等等。
64.302、确定第一词向量编码网络集合,第一词向量编码网络集合中包含多个词向量编码网络。
65.可以预先设置众多可用的词向量编码网络,进而可以人为经验地从中选定用于某命名实体识别模型中的多个词向量编码网络。可选地,也可以根据命名实体识别模型被使用的应用场景或用于识别的文本的长度来确定用于该命名实体识别模型中的多个词向量编码网络。
66.举例来说,比如命名实体识别模型用于识别新闻稿中包含的某些命名实体,由于新闻稿的文本长度比较长,因此,可以选定相适应的词向量编码网络,比如子字、词语级别的词向量编码网络。再比如,命名实体识别模型用于识别搜索语句(如商品搜索语句)、商品简介信息中包含的某些命名实体,由于此时需要识别的文本长度比较短,因此,可以选定相适应的词向量编码网络,比如子字、字符级别的词向量编码网络。
67.本实施例中,可选地,第一词向量编码网络集合中包含的多个词向量编码网络分别对应于不同的编码粒度,比如包括分别对应于字符、子字、词语的三个词向量编码网络。
68.可选地,假设预先一共设置有n种编码粒度,n》1,则第一词向量编码网络集合中可以包含n种编码粒度各自对应的一种词向量编码网络。
69.303、通过第一词向量编码网络集合中包含的多个词向量编码网络分别对训练文本进行词向量编码,以获得训练文本对应的多组词向量,其中,一组词向量对应于一个词向量编码网络。
70.将训练文本分别输出到各个词向量编码网络中,以得到每个词向量编码网络输出的一组词向量。
71.上述多组词向量即为汇总多个词向量编码网络各自得到的一组词向量而得到的。
72.304、基于通过第一词向量编码网络集合得到的多组词向量,训练第一命名实体识别模型,第一命名实体识别模型中包括第一词向量编码网络集合。
73.为便于理解包括多个词向量编码网络的命名实体识别模型的训练过程,结合图4
所示的命名实体识别模型来示例性说明。在图4中,假设命名实体识别模型包括词向量编码网络a、词向量编码网络b、词向量编码网络c、特征提取网络:bi-lstm、输出网络:crf。此时,假设的是第一词向量编码网络集合中包含词向量编码网络a、词向量编码网络b和词向量编码网络c。
74.通过第一词向量编码网络集合中包含的多个词向量编码网络分别对训练文本进行词向量编码,以获得训练文本对应的多组词向量,包括:
75.对训练文本进行分词处理,以得到训练文本中包含的至少一个词语;
76.将所述至少一个词语分别输入到多个词向量编码网络中,以得到多个词向量编码网络各自输出的一组词向量,其中,一组词向量中包含所述至少一个词语各自对应的词向量。
77.基于此,在训练第一命名实体识别模型的过程中,通过对上述多组词向量中对应于同一词语的多个词向量进行拼接,以得到训练文本对应的目标组词向量,进而基于目标组词向量,训练第一命名实体识别模型。其中,目标组词向量中与目标词语对应的目标词向量,由多组词向量中对应于目标词语的多个词向量拼接得到,目标词语是所述至少一个词语中的任一个。
78.为便于理解,举例来说,针对某训练文本来说,如图4中所示,假设通过分词处理后得到三个词语w1、w2、w3,将这三个词语都输入到各个词向量编码网络中,这样,每个词向量编码网络最终都会输出一组词向量。如图4中所示,假设词向量编码网络a输出的一组词向量包括:ea1、ea2、ea3,分别对应于词语w1、w2、w3。假设词向量编码网络b输出的一组词向量包括:eb1、eb2、eb3,分别对应于词语w1、w2、w3。假设词向量编码网络c输出的一组词向量包括:ec1、ec2、ec3,分别对应于词语w1、w2、w3。
79.之后,将对应于同一词语的词向量拼接在一起,以得到目标组词向量:e1、e2、e3。其中,对应于词语w1的词向量ea1、eb1、ec1拼接在一起形成词向量e1,对应于词语w1的词向量ea2、eb2、ec2拼接在一起形成词向量e2,对应于词语w1的词向量ea3、eb3、ec3拼接在一起形成词向量e3。
80.之后,将目标组词向量输入到命名实体识别模型中的bi-lstm,以进行语义特征的提取,提取出的特征向量输入到crf中,以最终输出命名实体识别结果。基于命名实体识别结果以及训练文本对应的标注信息,调整命名实体识别模型的相关参数,以完成命名实体识别模型的训练。
81.假设预先一共设置有n种编码粒度,将上述训练得到的命名实体识别模型称为第一命名实体识别模型,假设第一命名实体识别模型中包括n种编码粒度各自对应的一种词向量编码网络。可以理解的是,由于第一命名实体识别模型中包括了各种编码粒度的词向量编码网络,从命名实体识别结果的角度来说,很有可能获得良好的识别结果。但是,模型的训练复杂度、以及模型所占用的存储、计算资源也会比较大。为了在识别结果以及训练复杂度、模型所占用的存储、计算资源之间进行折中,本发明实施例还提供了如图5所示实施例的解决方案。
82.图5为本发明实施例提供的另一种模型训练方法的流程图,如图5所示,该方法包括如下步骤:
83.501、获取已进行命名实体标注的训练文本。
84.502、确定第一词向量编码网络集合,第一词向量编码网络集合中包含多个词向量编码网络。
85.503、通过第一词向量编码网络集合中包含的多个词向量编码网络分别对训练文本进行词向量编码,以获得训练文本对应的多组词向量,基于通过第一词向量编码网络集合得到的多组词向量,训练第一命名实体识别模型,第一命名实体识别模型中包括第一词向量编码网络集合。
86.上述训练过程可以参考前述实施例中的相关说明,在此不赘述。
87.504、确定第二词向量编码网络集合,第二词向量编码网络集合中包含多个词向量编码网络,第二词向量编码网络集合与第一词向量编码网络集合不同。
88.505、通过第二词向量编码网络集合中包含的多个词向量编码网络分别对训练文本进行词向量编码,以获得训练文本对应的多组词向量,基于通过第二词向量编码网络集合得到的多组词向量,训练第二命名实体识别模型,第二命名实体识别模型中包括第二词向量编码网络集合。
89.可选地,假设预设设定n种编码粒度,第一词向量编码网络集合中可以包括其中的m种编码粒度各自对应的一种词向量编码网络,m小于或等于n,则可以从第一词向量编码网络集合中移出至少一个词向量编码网络,以得到第二词向量编码网络集合。假设从第一词向量编码网络集合中移出至少一个词向量编码网络后得到包括k种编码粒度各自对应的一种词向量编码网络的第二词向量编码网络集合。
90.可以理解的是,上述第一词向量编码网络集合和第二词向量编码网络集合的获取方式仅为一种举例,实际上,也可以罗列n种编码粒度的各种不同数量(每种组合包括至少两种编码粒度)的组合情形,以训练得到每种组合情形对应的命名实体识别模型。此时,上述第一词向量编码网络集合和第二词向量编码网络集合仅为其中的任意两种组合情形。
91.506、根据第一命名实体识别模型和第二命名实体识别模型各自对应的识别准确率,删除第一命名实体识别模型或第二命名实体识别模型。
92.举例来说,假设第一命名实体识别模型中包括a、b、c这三个词向量编码网络,第二命名实体识别模型种包括a和b这两个词向量编码网络,通过计算识别准确率发现第一命名实体识别模型的识别准确率为90%,第二命名实体识别模型的识别准确率为88%,则最终的结果可以是删除第一命名实体识别模型。也就是说,在识别准确率没有明显下降(不同命名实体识别模型的识别准确率的差值小于设定阈值)的情形下,可以保留包含的词向量编码网络少的命名实体识别模型,这样可以降低训练复杂度以及命名实体识别模型对计算、存储等资源的占用。
93.可选地,在完成命名实体识别模型的训练后,还可以建立训练文本的属性信息与被保留的命名实体识别模型之间的对应关系。训练文本的属性信息可以包括应用场景、长度等。具体来说,实际应用中,可以预先训练并保存多个命名实体识别模型,每个命名实体识别模型分别适用于不同属性的文本的命名实体识别,比如某个命名实体识别模型可以适用于对文章这种长文本进行命名实体识别,某个命名实体识别模型可以适用于对搜索语句这种短文本进行命名实体识别,某个命名实体识别模型可以适用于对娱乐资讯进行命名实体识别。
94.基于上述对应关系,在实际应用中,当某用户需要执行命名实体识别任务时,可以
根据待识别的文本所对应的属性信息来确定与之对应的命名实体识别模型,以基于确定出的命名实体识别模型完成识别任务。
95.图6为本发明实施例提供的一种命名实体识别方法的流程图,如图6所示,该方法可以包括如下步骤:
96.601、确定与待识别的文本对应的命名实体识别模型,该命名实体识别模型中包括多个词向量编码网络。
97.602、通过多个词向量编码网络分别对文本进行词向量编码,以获得文本对应的多组词向量,其中,一组词向量对应于一个词向量编码网络。
98.603、基于多组词向量,识别出文本中包含的命名实体。
99.本发明实施例提供的命名实体识别方法可以由一电子设备来执行,该电子设备可以是诸如pc机、笔记本电脑、智能手机等终端设备,也可以是云端的服务器。该服务器可以是包含一独立主机的物理服务器,或者也可以为虚拟服务器,或者也可以为云服务器。该电子设备中可以存储有上述命名实体识别模型,当接收到用户触发的针对上述文本的命名实体识别任务时,确定该命名实体识别模型,以基于该命名实体识别模型完成命名实体识别任务——输出文本中包括的各个命名实体。
100.如前文所述,可选地,可以根据待识别的文本的属性信息,确定与之对应的命名实体识别模型。可选地,属性信息包括如下任一种:长度、应用场景。
101.如前文所述,可选地,命名实体识别模型中包括的多个词向量编码网络可以分别对应于不同的编码粒度。可选地,编码粒度包括如下任一种:字符、子字、词语。
102.如前文所述,通过多个词向量编码网络分别对文本进行词向量编码,以获得文本对应的多组词向量,可以实现为:
103.对文本进行分词处理,以得到文本中包含的至少一个词语;将所述至少一个词语分别输入到多个词向量编码网络中,以得到多个词向量编码网络各自输出的一组词向量,其中,一组词向量中包含所述至少一个词语各自对应的词向量。基于此,可以通过对多组词向量中对应于同一词语的多个词向量进行拼接,以得到文本对应的目标组词向量,继而,基于目标组词向量识别出文本中包含的命名实体。其中,目标组词向量中与目标词语对应的目标词向量,由多组词向量中对应于目标词语的多个词向量拼接得到。目标词语是所述至少一个词语中的任一个。
104.具体地,基于目标组词向量识别出文本中包含的命名实体,包括:
105.将目标组词向量输入到命名实体识别模型的特征提取网络中,以获得特征提取网络输出的特征向量;
106.将提取的特征向量输入到命名实体识别模型的输出网络中,以获得输出网络输出的命名实体识别结果。
107.由于命名实体识别模型中包括了对应于不同编码粒度的多个词向量编码网络,这样可以从不同维度对输入的文本进行向量编码,以提取到更加丰富全面的特征信息,有助于提高命名实体识别结果的准确性。
108.上述命名实体识别方案可以适用于多种不同的应用场景中,比如,可以适用于商品搜索场景中。结合图7来示例性说明在商品搜索场景中该命名实体识别方案的执行过程。
109.假设某用户想要搜索某品牌的冰箱,其在商品搜索界面中输入“某某的冰箱”这句
搜索语句,其中“某某”表示某品牌名称。为了检索出与搜索语句相匹配的商品列表,首先,对该搜索语句进行命名实体识别,以识别出其中包括的命名实体——品牌名称、商品类目,之前,以识别出的命名实体作为搜索关键词,在商品库中搜索出与搜索关键词匹配的商品。
110.具体地,以用户输入的该搜索语句作为待识别的文本,确定与之对应的命名实体识别模型,如图7中所示,假设该命名实体识别模型中包括词向量编码网络a和词向量编码网络b。将搜索语句分别输入到这两个词向量编码网络,以得到这两个词向量编码网络各自输出的一组词向量,之后基于得到的两组词向量完成命名实体的识别,识别结果为:品牌名称——某某,商品类目——冰箱。
111.之后,以识别出的品牌名称和商品类目作为搜索关键词,检索商品数据库,假设得到的与之匹配的商品包括图7中示意的商品1~商品n。将搜索出的商品反馈给用户。
112.上述仅以商品搜索场景为例说明了本发明实施例提供的命名实体识别方案的一种应用场景,可以理解的是,该命名实体识别方案还可以适用于其他需要进行命名实体识别的场景中,不以上述举例为限。
113.例如,在电商场景中,除了在用户搜索商品的时候会面临对用户输入的搜索语句进行命名实体识别的需求外,对电商场景中产生的其他用户数据(例如商品评论信息、与商家的沟通信息、与电商客服的沟通信息等)也可以根据本发明实施例提供的命名实体识别方案进行诸如商品名称等命名实体的识别。
114.再比如,也可以利用本发明实施例提供的命名实体识别模型对音乐、电影售票等领域中的数据(例如歌词、用户评论、电影简介等)进行人名识别。再比如,还可以利用该命名实体识别模型对医疗领域中的数据(例如诊断书、化验单等)进行药品名称或疾病名称的识别。下面分别针对上述三种领域实现命名实体识别的具体实现方式进行举例说明:
115.(一)电商领域:
116.a1、获取用户数据信息。
117.该用户数据信息包括商品评论信息、与商家的沟通信息、与电商客服的沟通信息,商品搜索信息等。
118.a2、确定与该用户数据信息对应的命名实体识别模型,该命名实体识别模型中包括多个词向量编码网络,以基于该命名实体识别模型识别出所述用户数据信息中包含的商品名称。
119.所述命名实体识别模型是采用上述命名实体识别模型的训练方法得到的,且在训练该模型时所涉及的命名实体包括商品名称。
120.a3、在所述用户数据信息中标注出商品名称。
121.a4、通过对标注商品名称的用户数据信息进行分析,确定用户偏好,并根据用户偏好向用户推荐商品。
122.(二)音乐、电影售票等领域
123.b1、获取预设平台中产生的包括人名的数据信息。
124.所述预设平台包括但不限于音乐平台、电影售票平台、新闻网站平台等。所述数据信息为包括人名的数据信息,例如歌词、音乐简介、用户评论、电影简介等。
125.b2、确定与所述数据信息对应的命名实体识别模型,该命名实体识别模型中包括多个词向量编码网络,以基于该命名实体识别模型识别出所述数据信息中包含的人名。
126.所述命名实体识别模型是采用上述命名实体识别模型的训练方法得到的,且在训练该模型时所涉及的命名实体包括人名。
127.b3、在所述数据信息中标注出人名。
128.b4、按照预设人名分析规则,对标注人名的数据信息进行分析,获得针对人名的统计信息。
129.其中,标注的人名包括但不限于歌词或影视中的人物名称、演员名字(包括歌手、影视演员)。具体的,可以对标注人名的用户评论进行分析,获得用户对人物的偏好,并向用户推荐该演员参演的其他电影、演唱的其他歌曲,也可以统计出用户对各个人名的关注度,并对各个人名进行排名。
130.(三)医疗领域
131.c1、获取医疗数据信息。
132.其中,医疗数据信息包括诊断书、化验单等。
133.c2、确定与所述数据信息对应的命名实体识别模型,该命名实体识别模型中包括多个词向量编码网络,以基于该命名实体识别模型识别出所述数据信息中包含的医疗名称。
134.所述命名实体识别模型是采用上述命名实体识别模型的训练方法得到的,且在训练该模型时所涉及的命名实体包括医疗名称。医疗名称包括药品名称、疾病名称。
135.c3、对所述医疗数据信息中的医疗名称进行突出显示,以便医护人员快速从医疗数据信息中读取有效信息。
136.以下将详细描述本发明的一个或多个实施例的模型训练装置、命名实体识别装置。本领域技术人员可以理解,这些装置均可使用市售的硬件组件通过本方案所教导的步骤进行配置来构成。
137.图8为本发明实施例提供的一种模型训练装置的结构示意图,如图8所示,该装置包括:获取模块11、确定模块12、训练模块13。
138.获取模块11,用于获取已进行命名实体标注的训练文本。
139.确定模块12,用于确定第一词向量编码网络集合,所述第一词向量编码网络集合中包含多个词向量编码网络。
140.训练模块13,用于通过所述第一词向量编码网络集合中包含的多个词向量编码网络分别对所述训练文本进行词向量编码,以获得所述训练文本对应的多组词向量,其中,一组词向量对应于一个词向量编码网络;以及,基于通过所述第一词向量编码网络集合得到的多组词向量,训练第一命名实体识别模型,所述第一命名实体识别模型中包括所述第一词向量编码网络集合。
141.可选地,训练模块13具体用于:对所述训练文本进行分词处理,以得到所述训练文本中包含的至少一个词语;将所述至少一个词语分别输入到所述多个词向量编码网络中,以得到所述多个词向量编码网络各自输出的一组词向量,其中,一组词向量中包含所述至少一个词语各自对应的词向量。
142.其中,可选地,训练模块13具体用于:通过对所述多组词向量中对应于同一词语的多个词向量进行拼接,以得到所述训练文本对应的目标组词向量;基于所述目标组词向量,训练第一命名实体识别模型;其中,所述目标组词向量中与目标词语对应的目标词向量,由
所述多组词向量中对应于所述目标词语的多个词向量拼接得到,所述目标词语是所述至少一个词语中的任一个。
143.其中,可选地,训练模块13具体用于:将所述目标组词向量输入到所述第一命名实体识别模型的特征提取网络中,以获得所述特征提取网络输出的特征向量;将所述特征向量输入到所述第一命名实体识别模型的输出网络中,以获得所述输出网络输出的命名实体识别结果。
144.可选地,所述第一词向量编码网络集合中包含的多个词向量编码网络分别对应于不同的编码粒度。
145.可选地,确定模块12还用于:确定第二词向量编码网络集合,所述第二词向量编码网络集合中包含多个词向量编码网络,所述第二词向量编码网络集合与所述第一词向量编码网络集合不同。训练模块13还用于:通过所述第二词向量编码网络集合中包含的多个词向量编码网络分别对所述训练文本进行词向量编码,以获得所述训练文本对应的多组词向量;基于通过所述第二词向量编码网络集合得到的多组词向量,训练第二命名实体识别模型,所述第二命名实体识别模型中包括所述第二词向量编码网络集合;根据所述第一命名实体识别模型和所述第二命名实体识别模型各自对应的识别准确率,删除所述第一命名实体识别模型或所述第二命名实体识别模型。
146.可选地,从所述第一词向量编码网络集合中包含的多个词向量编码网络中,移出至少一个词向量编码网络,以得到所述第二词向量编码网络集合。
147.可选地,所述装置还包括:存储模块,用于建立所述训练文本的属性信息与被保留的命名实体识别模型之间的对应关系。
148.图8所示装置可以执行前述实施例中提供的模型训练方法,详细的执行过程和技术效果参见前述实施例中的描述,在此不再赘述。
149.在一个可能的设计中,上述图8所示模型训练装置的结构可实现为一电子设备,如图9所示,该电子设备可以包括:第一处理器21、第一存储器22。其中,第一存储器22上存储有可执行代码,当所述可执行代码被第一处理器21执行时,使第一处理器21至少可以实现如前述实施例中提供的模型训练方法。
150.可选地,该电子设备中还可以包括第一通信接口23,用于与其他设备进行通信。
151.另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现如前述实施例中提供的模型训练方法。
152.图10为本发明实施例提供的一种命名实体识别装置的结构示意图,如图10所示,该装置包括:确定模块31、编码模块32、识别模块33。
153.确定模块31,用于确定与待识别的文本对应的命名实体识别模型,所述命名实体识别模型中包括多个词向量编码网络。
154.编码模块32,用于通过所述多个词向量编码网络分别对所述文本进行词向量编码,以获得所述文本对应的多组词向量,其中,一组词向量对应于一个词向量编码网络。
155.识别模块33,用于基于所述多组词向量,识别出所述文本中包含的命名实体。
156.可选地,编码模块32具体可以用于:对所述文本进行分词处理,以得到所述文本中包含的至少一个词语;将所述至少一个词语分别输入到所述多个词向量编码网络中,以得
到所述多个词向量编码网络各自输出的一组词向量,其中,一组词向量中包含所述至少一个词语各自对应的词向量。
157.基于此,可选地,识别模块33具体用于:通过对所述多组词向量中对应于同一词语的多个词向量进行拼接,以得到所述文本对应的目标组词向量;基于所述目标组词向量,识别出所述文本中包含的命名实体;其中,所述目标组词向量中与目标词语对应的目标词向量,由所述多组词向量中对应于所述目标词语的多个词向量拼接得到,所述目标词语是所述至少一个词语中的任一个。
158.其中,可选地,识别模块33具体用于:将所述目标组词向量输入到所述命名实体识别模型的特征提取网络中,以获得所述特征提取网络输出的特征向量;将所述特征向量输入到所述命名实体识别模型的输出网络中,以获得所述输出网络输出的命名实体识别结果。
159.可选地,确定模块31具体可以用于:根据所述文本的属性信息,确定所述命名实体识别模型。
160.其中,可选地,所述属性信息包括如下任一种:长度、应用场景。
161.可选地,所述多个词向量编码网络分别对应于不同的编码粒度。
162.其中,可选地,所述编码粒度包括如下任一种:字符、子字、词语。
163.图10所示装置可以执行前述实施例中提供的命名实体识别方法,详细的执行过程和技术效果参见前述实施例中的描述,在此不再赘述。
164.在一个可能的设计中,上述图10所示命名实体识别装置的结构可实现为一电子设备,如图11所示,该电子设备可以包括:第二处理器41、第二存储器42。其中,第二存储器42上存储有可执行代码,当所述可执行代码被第二处理器41执行时,使第二处理器41至少可以实现如前述实施例中提供的命名实体识别方法。
165.可选地,该电子设备中还可以包括第二通信接口43,用于与其他设备进行通信。
166.另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现如前述实施例中提供的命名实体识别方法。
167.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
168.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
169.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;
而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1