面向小样本的文本命名实体识别方法

未命名 08-26 阅读:108 评论:0


1.本发明属于自然语言处理领域,具体涉及面向小样本的文本命名实体识别方法。


背景技术:

2.基于深层神经网络的机器学习模型为自然语言处理领域带来了极大发展,但标准的监督深度学习范式往往需要相当多精心设计的特定高质量数据进行训练,而现实情况下,人们难以根据特定任务获取到足够数量的合适数据,仅使用少量样本进行训练会导致模型的过拟合,进而严重影响模型的泛化性能。目前,针对于小样本文本的学习方法已成为当前自然语言处理领域的热点研究风向之一。
3.命名实体识别是自然语言处理领域的一项基本任务,是问题求解、关系提取、共指消解等更复杂任务的关键上游组件。该任务需要建立模型在非特定结构文本上精确定位命名实体范围,并将它们分类到预先定义的类别中,例如人物,地址和时间等。然而,构建一个准确的命名实体识别模型通常需要大量高质量的带注释的域内数据,在特定领域上构建合适的带有精确注释的大量数据是耗时和昂贵的。因此,有必要设计一类模型,它能在仅使用少量带有注释的文本训练情况下,不损失识别精度完成命名实体识别任务。


技术实现要素:

4.发明目的:为解决上述问题,本发明提出了面向小样本的文本命名实体识别方法,提供一种使用两个独立的bert编码器构建一种网络架构来利用标签名称中的语义信息为模型提供额外信息,以此实现面向小样本文本的命名实体识别方法。
5.技术方案:为了实现上述发明目的,本发明采用的技术方案为:
6.面向小样本的文本命名实体识别方法,使用两个独立的bert编码器构建一种网络架构来利用标签名称中的语义信息为模型提供额外信息;
7.其中,第一bert编码器负责编码文档及其单词;第二bert编码器则负责获取标签名称的表征;利用所述第一bert编码器编码token的方法为:输入token,通过第一bert编码器来获得token的表征e;
8.通过训练模型将编码器产生的单词表征和标签表征进行匹配,最终为单词分配与其相似度最高的标签名。
9.作为优选,利用所述第二bert编码器获取标签名称的表征的方法如下:
10.步骤一:手动将标签名转换为自然语言形式;
11.步骤二:将每个标签名称转换为自然语言形式的bio方案;
12.步骤三:将步骤二中得到的标签名输入到第二bert编码器中进行编码,使用[cls]作为标签名的表征;对于这些表征,构建一个矩阵b,包含了所有的标签嵌入bi,其维度为(2
×nl-1,d),其中n
l
是标签的数量,d为标签名表征的维度。
[0013]
作为优选,训练模型将编码器产生的单词表征和标签表征进行匹配,最终为单词分配与其相似度最高的标签名,具体方式如下:
[0014]
首先,将token的表征e与标签的表征矩阵b做点积计算;
[0015]
然后,通过softmax函数和argmax函数计算处理相似度,取相似度最大的分配对应标签:最终得到的预测标签是bio形式的。
[0016]
作为优选,第一bert编码器与第二bert编码器结构相同。
[0017]
作为优选,第二bert编码器获取标签名称的表征方法同样采用bio方案预测每个token的标签。
[0018]
有益效果:与现有技术相比本发明具有以下优点:
[0019]
1)本发明提出了一个简单且有效的模型,它将标签名称中的语义信息加入到模型训练中去,提高了小样本命名实体识别的质量和效率。
[0020]
2)模型从bert标签编码器中生成标签表示可以防止模型忘记先验信息,因为对不同的数据集,没有参数被放弃或随机初始化。
[0021]
3)本发明所采用的方法对标签名称的变化更加鲁棒,能够区分语义上相似的标签。
附图说明
[0022]
图1是面向小样本的文本命名实体识别方法的结构示意图。
具体实施方式
[0023]
下面结合附图对本发明作进一步详细说明。
[0024]
如图1所示,本发明是面向小样本的文本命名实体识别方法,首先,使用两个独立的bert编码器构建一种网络架构来利用标签名称中的语义信息为模型提供额外信息;其中,一个编码器负责编码文档及其单词;而另一个编码器负责获取标签名称的表征;通过训练模型将编码器产生的单词表征和标签表征进行匹配,最终为单词分配与其相似度最高的标签名;具体包括如下步骤:
[0025]
步骤1:利用第一bert编码器编码token,具体方式如下:
[0026]
输入token,通过第一bert编码器来获得token的表征e;其中bert是一个标准的预训练语言模型,它所使用的编码器属于双向编码器,bert使用transformer encoder作为transformer block,即特征提取器,加强了语义特征提取的能力。
[0027]
步骤2:利用第二bert编码器获取标签名称的表征,具体方式如下:
[0028]
和传统的ner模型一样,本方法同样采用bio方案预测每个token的标签。这种方式不需要在遇到新的数据集和没见过的标签名称的时候去初始化一个新的顶层分类器,而是直接用bert_label encoder生成label表征,对于与数据集d相关的标签序列ld,通过以下步骤来获取表征:
[0029]
步骤2.1:手动将标签名转换为自然语言形式,例如,将“per”转换为“person”,“org”转换为“organization”;
[0030]
步骤2.2:将每个标签名称转换为自然语言形式的bio方案,如:

person



begin person



inside person


[0031]
步骤2.3:将步骤2.2中得到的标签名输入到第二bert编码器中进行编码,使用
[cls]作为标签名的表征;使用这些表征,构建一个矩阵b,包含了所有的标签嵌入bi,其维度为(2
×nl-1,d),其中n
l
是标签的数量(包含o标签),d为标签名表征的维度。其中第一bert编码器与第二bert编码器结构相同。
[0032]
步骤3:训练模型将编码器产生的单词表征和标签表征进行匹配,最终为单词分配与其相似度最高的标签名,具体方式如下:
[0033]
首先,将token的表征e与标签的表征矩阵b做点积计算;
[0034]
然后,通过softmax函数和argmax函数计算处理相似度,取相似度最大的分配对应标签:
[0035][0036]
最终得到的预测标签是bio形式的,例如,b-per、o、i-per、i-org等。标签编码器是基于bert的,并且包含来自预训练的先验因素,因此架构允许任何文本形式作为标签表征生成的输入。
[0037]
实施例一
[0038]
通过以下实验验证本发明的方法有效性和效率:
[0039]
评估指标为micro f1 score——衡量多分类模型精确度的一种指标,用于测量不均衡数据的精度。它同时兼顾了分类模型的精确率和召回率。k-shot——被定义为训练样本数量,用以表明样本的规模大小。
[0040]
首先选择数据集,本发明选择了ontonotes5.0数据集作为源数据集,conll-2003、wnut-2017和i2b2-2014数据集作为目标数据集。首先在源数据集上进行模型的预训练,然后在选定的目标数据集上对训练样本和测试样本进行处理。对于训练样本,是在句子级别下进行下采样,从训练集中选取k-shot的支持集,即对于每个类别,本发明都恰好有k个训练样本。而测试集,则采用从目标数据集中留出的数据测试模型效果。本发明选择bert、wpn-crf、struct nn shot三个模型作为本发明的对比方法,不同数据集下的模型对比实验结果,如图表1、表2和表3所示。
[0041]
表1本发明在conll-2003数据集下的f1-score
[0042][0043]
表2本发明在wnut-2017数据集下的f1-score
[0044]
[0045][0046]
表3本发明在i2b2-2014数据集下的f1-score
[0047][0048]
根据表1、表2和表3的结果可以得出,在1-shot、5-shot和20-shot样本下,本发明采用的方法都可以取得最优的性能,表明在数据很少的情况下,本发明采用的方法利用类别标签名进行学习可以有效提高精确率。总体而言,本发明提出使用双塔模型来解决小样本命名实体识别问题,采用两个encoder,一个encoder编码每个token的表征,另一个encoder对label的自然语言形式进行编码获取label表征,然后求待预测文本中每个token与所有label表征的相似度以获取相似度最大的label用于分类。
[0049]
本发明提出了面向小样本的文本命名实体识别方法,将标签名称中的语义信息加入到模型训练中,相较于实施例中的其他模型,本发明采用的方法提高了小样本命名识别的质量和效率,且模型从bert标签编码器中生成标签表示可以防止模型忘记先验信息,同时对标签名称的变化更加鲁棒,能够区分语义上相似的标签。
[0050]
上面结合附图对本发明的实施方式作了详细的说明,但本发明并不限于上述实施方式,在本领域的普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种优化。

技术特征:
1.面向小样本的文本命名实体识别方法,其特征在于,使用两个独立的bert编码器构建一种网络架构来利用标签名称中的语义信息为模型提供额外信息;其中,第一bert编码器用于编码文档及其单词;第二bert编码器则用于获取标签名称的表征;利用所述第一bert编码器编码token的方法为:输入token,通过第一bert编码器来获得token的表征e;通过训练模型将编码器产生的单词表征和标签表征进行匹配,最终为单词分配与其相似度最高的标签名。2.根据权利要求1所述的面向小样本的文本命名实体识别方法,其特征在于:利用所述第二bert编码器获取标签名称的表征的方法如下:步骤一:手动将标签名转换为自然语言形式;步骤二:将每个标签名称转换为自然语言形式的bio方案;步骤三:将步骤二中得到的标签名输入到第二bert编码器中进行编码,使用[cls]作为标签名的表征;对于这些表征,构建一个矩阵b,包含了所有的标签嵌入b
i
,其维度为(2
×
n
l-1,d),其中n
l
是标签的数量,d为标签名表征的维度。3.根据权利要求1所述的面向小样本的文本命名实体识别方法,其特征在于:训练模型将编码器产生的单词表征和标签表征进行匹配,最终为单词分配与其相似度最高的标签名,具体方式如下:首先,将token的表征e与标签的表征矩阵b做点积计算;然后,通过soffmax函数和argmax函数计算处理相似度,取相似度最大的分配对应标签:最终得到的预测标签是bio形式的。4.根据权利要求1所述的面向小样本的文本命名实体识别方法,其特征在于:第一bert编码器与第二bert编码器结构相同。5.根据权利要求2所述的面向小样本的文本命名实体识别方法,其特征在于:第二bert编码器获取标签名称的表征方法同样采用bio方案预测每个token的标签。

技术总结
本发明公开了面向小样本的文本命名实体识别方法,属于自然语言处理领域。包括使用两个独立的BERT编码器构建一种网络架构来利用标签名称中的语义信息为模型提供额外信息。其中,一个编码器负责编码文档及其单词;而另一个编码器则获取标签名称的表征;通过训练模型将编码器产生的单词表征和标签表征进行匹配,最终为单词分配与其相似度最高的标签名。本发明利用目标数据集中标签名称的语义对于检索先验知识的重要性,增强了对于标签名称变化的鲁棒性,能够区分语义上相似的标签,同时提高小样本命名实体识别的质量和效率。小样本命名实体识别的质量和效率。小样本命名实体识别的质量和效率。


技术研发人员:练智超 周承琳 彭雪康
受保护的技术使用者:南京理工大学
技术研发日:2023.05.24
技术公布日:2023/8/23
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐