一种基于上下文表示增强的跨语言命名实体识别方法

未命名 09-22 阅读:110 评论:0


1.本发明涉及一种基于上下文表示增强的跨语言命名实体识别方法,属于自然语言处理应用技术领域。


背景技术:

2.命名实体识别是自然语言处理任务中的关键环节,命名实体识别技术早已经被运用到各个现实场景中:如寄送快递时只需要将所有信息一起输入到信息框中,系统能够自动区分寄件人和收件人的姓名、电话和地址;对于新闻提供商,通过命名实体识别技术提取文章中的关键信息,实现精准推送;还有各个应用程序的用户搜索意图识别,智能客服。但是,当前表现出色的命名实体识别技术均需要大量的标注数据用于训练,需要大量人力和时间成本。
3.跨语言命名识别能够将知识从有标注数据的源语言端迁移到没有标注数据的目标语言端,能够减少标注成本。基于跨语言预训练模型,跨语言命名实体识别在源语言命名实体识别标注资源丰富且目标语言与源语言相近时已经取得应用。现有的跨语言命名实体识别方法通常是在源语言标注数据上微调跨语言预训练模型,直接运用于目标语言测试。但是,当源语言标注数据数量受限时,将现有方法用于处理与源语言差异较大的目标语言时效果堪忧。
4.跨语言预训练语言模型主要通过自注意力模块进行词语和上下文之间的交互以生成上下文表示。跨语言预训练模型在经过命名实体识别标注数据微调后会过于关注词语本身特征,通过切片微调的方法引导模型生成的表示具有更多上下文信息,但切片微调的方法过程是黑盒的,没有理论支撑这两者间的联系,可解释性不强;切片微调的方法在切片数量多时训练较为困难;切片微调的方法也会使得跨语言预训练语言模型丢失过多的词汇特征,包括一部分可迁移到与源语言相近的目标语言中的特征,导致模型在这些目标语言上表现不佳。


技术实现要素:

5.本发明的目的是提供一种基于上下文表示增强的跨语言命名实体识别方法,分别基于注意力分布损失和门控残差连接增强跨语言预训练模型在跨语言命名实体识别任务中的上下文表示,解决现有跨语言命名实体识别方法存在的问题。
6.本发明的目的是通过下述技术方案实现的:
7.本发明将跨语言预训练模型顶层编码器的自注意力模块得到的注意力分布中每个词对自身的注意力系数加入训练损失,减少模型对词语自身的关注,使得上下文表示中包含更多的上下文信息,采用门控残差连接模块作为跨语言预训练模型项层编码器中接在自注意力模块后的残差连接模块,通过门抑制词语本身信息进入最终上下文表示的比例,提升上下文信息在上下文表示中的占比;
8.本发明的一种基于上下文表示增强的跨语言命名实体识别方法,分为训练和预测
两阶段,训练后用于预测,包括以下步骤:
9.步骤1:输入句子,经过输入层转换为输入向量序列,具体包括以下子步骤:
10.步骤1.1:根据跨语言预训练模型词表对句子分词;
11.步骤1.2:将步骤1.1分词后的句子,通过词嵌入逐词映射得到词向量序列;
12.步骤1.3:将步骤1.1分词后的句子,通过位置嵌入逐词映射得到位置向量序列;
13.步骤1.4:将步骤1.1分词后的句子,通过段嵌入逐词映射得到段向量序列;
14.步骤1.5:将步骤1.2、步骤1.3以及步骤1.4所得三种向量序列逐词相加,得到输入向量序列;
15.步骤2:将步骤1得到的输入向量序列通过多层编码器,得到编码表示向量序列;
16.其中,每层编码器的模型结构完全一致,均采用transformer模型的编码器结构,具体包括以下子步骤:
17.步骤2.1:将步骤1得到的输入向量序列通过最底层编码器,具体包括以下子步骤:
18.步骤2.1.1:将步骤1得到的输入向量序列通过自注意力模块得到自注意力向量序列1;
19.步骤2.1.2:将步骤1得到的输入向量序列以及步骤2.1.1得到的自注意力向量序列1通过残差连接逐词相加得到残差连接向量序列1;
20.步骤2.1.3:将步骤2.1.2中得到的残差连接向量序列1通过层归一化得到归一化向量序列1;
21.步骤2.1.4:将步骤2.1.3中得到的归一化向量序列1逐词通过前馈神经网络先升维再降维得到前馈神经网络向量序列1;
22.步骤2.1.5:将步骤2.1.3中得到的归一化向量序列1以及步骤2.1.4中得到的前馈神经网络向量序列1通过残差连接逐词相加得到残差连接向量序列2;
23.步骤2.1.6:将步骤2.1.5中得到的残差连接向量序列2通过层归一化得到最底层编码器输出向量序列;
24.步骤2.2:不断将上一层编码器输出向量序列通过下一层编码器进一步编码,重复该流程直至通过倒数第二层编码器,具体包括以下子步骤:
25.步骤2.2.1:将上一层编码器输出向量序列通过自注意力模块得到自注意力向量序列2;
26.步骤2.2.2:将上一层编码器输出向量序列和步骤2.2.1得到的自注意力向量序列2通过残差连接逐词相加得到残差连接向量序列3;
27.步骤2.2.3:将步骤2.2.2中得到的残差连接向量序列3通过层归一化得到归一化向量序列2;
28.步骤2.2.4:将步骤2.2.3中得到的归一化向量序列2逐词通过前馈神经网络先升维再降维得到前馈神经网络向量序列2;
29.步骤2.2.5:将步骤2.2.3中得到的归一化向量序列2和步骤2.2.4中得到的前馈神经网络向量序列2通过残差连接逐词相加得到残差连接向量序列4;
30.步骤2.2.6:将步骤2.2.5中得到的残差连接向量序列4通过层归一化得到本层编码器输出向量序列;
31.步骤2.3:将步骤2.2得到的倒数第二层编码器输出向量序列通过顶层编码器,得
到增强的上下文表示向量序列,具体包括以下子步骤:
32.步骤2.3.1:将倒数第二层编码器输出向量序列通过自注意力模块得到自注意力向量序列3;
33.在训练阶段,步骤2.3.1需要根据每个词的注意力分布中的词语自身注意力系数确定注意力分布损失并加入训练损失,确定注意力分布损失的流程如下:
34.将倒数第二层编码器输出向量序列的每一个向量通过线性映射为查询q,键k以及值v,分别如式(1)、式(2)以及式(3)所示:
35.q=wq·
h+bq(1)
36.k=wk·
h+bk(2)
37.v=wv·
h+bv(3)
38.其中,h为倒数第二层编码器输出向量序列;wq、bq、wk、bk、wv、bv分别为查询q、键k以及值v的映射参数;
39.对于每一个词,通过自注意力模块,确定其对于所有词的注意力分布s,如式(4)所示:
[0040][0041]
其中,dk为k的维度,k
t
为k的转置;
[0042]
自注意力模块包含多个注意力头,确定所有注意力头中每个词对自身的注意力系数的平均值作为注意力分布损失attentionloss,如式(5)所示:
[0043][0044]
其中,n为多头注意力头数,m为序列长度,s(i,j,k)为序列中第i个注意力头中第j个词对第k个词的注意力系数;
[0045]
步骤2.3.2:将倒数第二层编码器输出向量序列和步骤2.3.1得到的自注意力向量序列3通过门控残差连接逐词计算得到门控残差连接向量序列,确定门控残差连接的具体流程如下:
[0046]
将倒数第二层编码器输出向量序列的每一个向量通过线性映射为中间表示向量o1,如式(6)所示,将自注意力向量序列3的每一个向量通过线性映射为中间表示向量o2,如式(7)所示:
[0047]
o1=w1·
h+b1(6)
[0048]
o2=w2·
f(h)+b2(7)
[0049]
其中,h为倒数第二层编码器输出向量序列,f(h)为自注意力向量序列3;w1、b1以及w2、b2分别为映射参数;
[0050]
对于每一个词,将o1和o2相加后通过sigmoid函数激活,得到门向量g,如式(8)所示:
[0051]
g=sigmoid(o1+o2)(8)
[0052]
对于每一个词,将g和h做向量乘法后再与f(h)相加,得到对应的门控残差连接向量序列,如式(9)所示:
[0053][0054]
步骤2.3.3:将步骤2.3.2中得到的门控残差连接向量序列通过层归一化得到归一化向量序列3;
[0055]
步骤2.3.4:将步骤2.3.3中得到的归一化向量序列3逐词通过前馈神经网络先升维再降维得到前馈神经网络向量序列3;
[0056]
步骤2.3.5:将步骤2.3.3中得到的归一化向量序列3和步骤2.3.4中得到的前馈神经网络向量序列3通过残差连接逐词相加得到残差连接向量序列5;
[0057]
步骤2.3.6:将步骤2.3.5中得到的残差连接向量序列5通过层归一化得到编码表示向量序列;
[0058]
步骤3:将步骤2得到的编码表示向量序列通过输出层得到句子对应的实体标签概率分布序列,具体包括以下子步骤:
[0059]
步骤3.1:将步骤2得到的编码表示向量序列通过线性映射得到实体标签未归一化得分分布序列;
[0060]
步骤3.2:将步骤3.1得到的实体标签未归一化得分分布序列通过softmax函数激活得到实体标签概率分布序列;
[0061]
在训练阶段,步骤3.2通过实体标签概率分布序列和实际句子标注的实体标签确定交叉熵损失crossentropyloss,步骤3.2得到的交叉熵损失crossentropyloss和步骤2.3.1得到的注意力分布损失attentionloss一起得到训练损失loss,并在步骤3.2对训练损失进行反向传播,训练结束后保存模型用于预测阶段,不再进行后续的步骤4;
[0062]
训练损失loss如式(10)所示:
[0063]
loss=α
×
attentionloss+crossentropyloss(10)
[0064]
其中,α为超参数;
[0065]
步骤4:根据步骤3得到的实体标签概率分布序列得到实体边界和实体类型,具体包括以下子步骤:
[0066]
步骤4.1:将步骤3得到的实体标签概率分布序列逐词选择最大概率对应的实体标签,得到实体标签序列;
[0067]
步骤4.2:对步骤4.1得到的实体标签序列解码得到实体边界和实体类型;
[0068]
还包括步骤5,应用本发明的方法,在线上交易平台的智能客服场景中,当某种语言缺乏用于训练的命名实体识别标注数据时,用其他语言的标注数据训练,获取用户提问中的实体信息,识别商户名称、商品名称,再根据实体选择相关的回答。
[0069]
有益效果:
[0070]
1、本发明的一种基于上下文表示增强的跨语言命名实体识别方法,在现有跨语言命名实体识别技术的基础上,通过注意力分布损失以及门控残差连接增强上下文表示,提升跨语言命名实体识别的性能,提升源语言标注数据数量不足时跨语言命名实体识别的性能,尤其是能够提升源语言和目标语言差别较大时的识别的性能。
[0071]
2、本发明的一种基于上下文表示增强的跨语言命名实体识别方法,在训练阶段加入注意力分布损失,减少跨语言命名实体识别模型对词语自身信息的关注,将更多的注意力分配给上下文信息,采用门控残差连接,减少词语自身信息加入到上下文表示中的比例,提升上下文信息在上下文表示中的占比。
附图说明
[0072]
图1为本发明的一种基于上下文表示增强的跨语言命名实体识别方法的流程图。
具体实施方式
[0073]
为了更好的说明本发明的目的和优点,下面结合附图和实例对发明内容做进一步说明。
[0074]
实施例1:
[0075]
实施例采用conll-2002/2003数据集以及wikiann数据集,以英语作为源语言,对于conll数据集,以与英语差别较小的德语、西班牙语以及荷兰语作为目标语言,对于wikiann数据集,以与英语差别较大的中文、日语、盖丘亚语、约鲁巴语以及伊博语作为目标语言。
[0076]
对于conll数据集,英语训练集以及验证集数量分别为2000以及3466,德语、西班牙语以及荷兰语测试集数量分别为3160、1517以及5195;对于wikiann数据集,英语训练集以及验证集数量分别为2000以及3000,中文、日语、盖丘亚语、约鲁巴语、伊博语测试集数量分别为3000、3000、2000、1000、500;
[0077]
应用本发明的一种基于上下文表示增强的跨语言命名实体识别方法,如图1所示,具体步骤实现如下:
[0078]
步骤1:输入句子,经过输入层转换为输入向量序列,具体包括以下子步骤:
[0079]
步骤1.1:根据跨语言预训练模型词表对句子分词;
[0080]
步骤1.2:将步骤1.1分词后的句子,通过词嵌入逐词映射得到词向量序列;
[0081]
步骤1.3:将步骤1.1分词后的句子,通过位置嵌入逐词映射得到位置向量序列;
[0082]
步骤1.4:将步骤1.1分词后的句子,通过段嵌入逐词映射得到段向量序列;
[0083]
步骤1.5:将步骤1.2、步骤1.3以及步骤1.4所得三种向量序列逐词相加,得到输入向量序列;
[0084]
步骤2:将步骤1得到的输入向量序列通过多层编码器,得到编码表示向量序列;
[0085]
其中,每层编码器的模型结构完全一致,均采用transformer模型的编码器结构。具体包括以下子步骤:
[0086]
步骤2.1:将步骤1得到的输入向量序列通过最底层编码器,具体包括以下子步骤:
[0087]
步骤2.1.1:将步骤1得到的输入向量序列通过自注意力模块得到自注意力向量序列1;
[0088]
步骤2.1.2:将步骤1得到的输入向量序列以及步骤2.1.1得到的自注意力向量序列1通过残差连接逐词相加得到残差连接向量序列1;
[0089]
步骤2.1.3:将步骤2.1.2中得到的残差连接向量序列1通过层归一化得到归一化向量序列1;
[0090]
步骤2.1.4:将步骤2.1.3中得到的归一化向量序列1逐词通过前馈神经网络先升维再降维得到前馈神经网络向量序列1;
[0091]
步骤2.1.5:将步骤2.1.3中得到的归一化向量序列1以及步骤2.1.4中得到的前馈神经网络向量序列1通过残差连接逐词相加得到残差连接向量序列2;
[0092]
步骤2.1.6:将步骤2.1.5中得到的残差连接向量序列2通过层归一化得到最底层
编码器输出向量序列;
[0093]
步骤2.2:不断将上一层编码器输出向量序列通过下一层编码器进一步编码,重复该流程直至通过倒数第二层编码器,具体包括以下子步骤:
[0094]
步骤2.2.1:将上一层编码器输出向量序列通过自注意力模块得到自注意力向量序列2;
[0095]
步骤2.2.2:将上一层编码器输出向量序列和步骤2.2.1得到的自注意力向量序列2通过残差连接逐词相加得到残差连接向量序列3;
[0096]
步骤2.2.3:将步骤2.2.2中得到的残差连接向量序列3通过层归一化得到归一化向量序列2;
[0097]
步骤2.2.4:将步骤2.2.3中得到的归一化向量序列2逐词通过前馈神经网络先升维再降维得到前馈神经网络向量序列2;
[0098]
步骤2.2.5:将步骤2.2.3中得到的归一化向量序列2和步骤2.2.4中得到的前馈神经网络向量序列2通过残差连接逐词相加得到残差连接向量序列4;
[0099]
步骤2.2.6:将步骤2.2.5中得到的残差连接向量序列4通过层归一化得到本层编码器输出向量序列;
[0100]
步骤2.3:将步骤2.2得到的倒数第二层编码器输出向量序列通过项层编码器,得到增强的上下文表示向量序列,具体包括以下子步骤:
[0101]
步骤2.3.1:将倒数第二层编码器输出向量序列通过自注意力模块得到自注意力向量序列3;
[0102]
在训练阶段,步骤2.3.1需要根据每个词的注意力分布中的词语自身注意力系数确定注意力分布损失并加入训练损失,确定注意力分布损失的流程如下:
[0103]
将倒数第二层编码器输出向量序列的每一个向量通过线性映射为查询q,键k以及值v,分别如式(1)、式(2)以及式(3)所示:
[0104]
q=wq·
h+bq(1)
[0105]
k=wk·
h+bk(2)
[0106]
v=wv·
h+bv(3)
[0107]
其中,h为倒数第二层编码器输出向量序列;w
qq
、bq、wk、bk、wv、bv分别为查询q、键k以及值v的映射参数;
[0108]
对于每一个词,通过自注意力模块,确定其对于所有词的注意力分布s,如式(4)所示:
[0109][0110]
其中,dk为k的维度,k
t
为k的转置;
[0111]
自注意力模块包含多个注意力头,确定所有注意力头中每个词对自身的注意力系数的平均值作为注意力分布损失attentionloss,如式(5)所示:
[0112][0113]
其中,n为多头注意力头数,m为序列长度,s(i,j,k)为序列中第i个注意力头中第j个词对第k个词的注意力系数;
[0114]
步骤2.3.2:将倒数第二层编码器输出向量序列和步骤2.3.1得到的自注意力向量序列3通过门控残差连接逐词计算得到门控残差连接向量序列,确定门控残差连接的具体流程如下:
[0115]
将倒数第二层编码器输出向量序列的每一个向量通过线性映射为中间表示向量o1,如式(6)所示,将自注意力向量序列3的每一个向量通过线性映射为中间表示向量o2,如式(7)所示:
[0116]
o1=w1·
h+b1(6)
[0117]
o2=w2·
f(h)+b2(7)
[0118]
其中,h为倒数第二层编码器输出向量序列,f(h)为自注意力向量序列3;w1、b1以及w2、b2分别为映射参数;
[0119]
对于每一个词,将o1和o2相加后通过sigmoid函数激活,得到门向量g,如式(8)所示:
[0120]
g=sigmoid(o1+o2)(8)
[0121]
对于每一个词,将g和h做向量乘法后再与f(h)相加,得到对应的门控残差连接向量序列,如式(9)所示:
[0122][0123]
步骤2.3.3:将步骤2.3.2中得到的门控残差连接向量序列通过层归一化得到归一化向量序列3;
[0124]
步骤2.3.4:将步骤2.3.3中得到的归一化向量序列3逐词通过前馈神经网络先升维再降维得到前馈神经网络向量序列3;
[0125]
步骤2.3.5:将步骤2.3.3中得到的归一化向量序列3和步骤2.3.4中得到的前馈神经网络向量序列3通过残差连接逐词相加得到残差连接向量序列5;
[0126]
步骤2.3.6:将步骤2.3.5中得到的残差连接向量序列5通过层归一化得到编码表示向量序列;
[0127]
步骤3:将步骤2得到的编码表示向量序列通过输出层得到句子对应的实体标签序列,具体包括以下子步骤:
[0128]
步骤3.1:将步骤2得到的编码表示向量序列通过线性映射得到实体标签未归一化得分分布序列;
[0129]
步骤3.2:将步骤3.1得到的实体标签未归一化得分分布序列通过softmax函数激活得到实体标签概率分布序列;
[0130]
在训练阶段,步骤3.2通过实体标签概率分布序列和实际句子标注的实体标签确定交叉熵损失crossentropyloss,步骤3.2得到的交叉熵损失crossentropyloss和步骤2.3.1得到的注意力分布损失attentionloss一起得到训练损失loss,并在步骤3.2对训练损失进行反向传播,训练结束后保存模型用于预测阶段,不再进行后续的步骤4;
[0131]
训练损失loss如式(10)所示:
[0132]
loss=α
×
attentionloss+crossentropyloss(10)
[0133]
其中,α为超参数;
[0134]
步骤4:根据步骤3得到的实体标签概率分布序列得到实体边界和实体类型,具体包括以下子步骤:
[0135]
步骤4.1:将步骤3得到的实体标签概率分布序列逐词选择最大概率对应的实体标签,得到实体标签序列;
[0136]
步骤4.2:对步骤4.1得到的实体标签序列解码得到实体边界和实体类型;
[0137]
训练和预测阶段的技术参数和超参数如下:模型采用wordpiece技术分词;训练批次大小为16,预测时则为256;采用adamw优化器更新模型中的参数,学习率为2e-5,β1以及β2分别为0.9以及0.999,权重衰减系数为0.01;
[0138]
实施例中,采用带有热身的线性学习率调整策略来调整训练过程中的学习率,其中热身的批次数被限制为不超过总批次数的10%且至多为500;一共训练10轮,每轮训练完成时根据英语验证集保存f1值最高的模型用于后续的目标语言测试过程;
[0139]
跨语言预训练模型、transformer模型编码器结构、交叉熵损失函数与训练方法均为现有技术,不做赘述;
[0140]
本发明与现有技术在conll数据集上的识别结果(f1分数%)对比如表1所示:
[0141]
表1
[0142][0143]
如表1所示,在平均f1值方面,在源语言与目标语言差别较小时,本发明方法相较slicer方法提升1.14;
[0144]
本发明与现有技术在wikiann数据集上的识别结果(f1分数%)对比如表2所示:
[0145]
表2
[0146][0147]
如表2所示,在平均f1值方面,在目标语言与源语言差别较大时,本发明方法相较slicer方法提升2.95;
[0148]
综合表1以及表2,本发明方法相对现有技术能够更好地提升源语言标注数据数量不足时跨语言命名实体识别效果,尤其是在源语言和目标语言差别较大时。
[0149]
以上所述的具体描述,对发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种基于上下文表示增强的跨语言命名实体识别方法,其特征在于:分别基于注意力分布损失和门控残差连接增强跨语言预训练模型在跨语言命名实体识别任务中的上下文表示,将跨语言预训练模型顶层编码器的自注意力模块得到的注意力分布中每个词对自身的注意力系数加入训练损失,减少模型对词语自身的关注,使得上下文表示中包含更多的上下文信息,采用门控残差连接模块作为跨语言预训练模型顶层编码器中接在自注意力模块后的残差连接模块,通过门抑制词语本身信息进入最终上下文表示的比例,提升上下文信息在上下文表示中的占比。2.如权利要求1所述的一种基于上下文表示增强的跨语言命名实体识别方法,其特征在于:包括训练和预测两阶段,训练后用于预测,包括以下步骤,步骤1:输入句子,经过输入层转换为输入向量序列,具体包括以下子步骤:步骤1.1:根据跨语言预训练模型词表对句子分词;步骤1.2:将步骤1.1分词后的句子,通过词嵌入逐词映射得到词向量序列;步骤1.3:将步骤1.1分词后的句子,通过位置嵌入逐词映射得到位置向量序列;步骤1.4:将步骤1.1分词后的句子,通过段嵌入逐词映射得到段向量序列;步骤1.5:将步骤1.2、步骤1.3以及步骤1.4所得三种向量序列逐词相加,得到输入向量序列;步骤2:将步骤1得到的输入向量序列通过多层编码器,得到编码表示向量序列;其中,每层编码器的模型结构完全一致,均采用transformer模型的编码器结构,具体包括以下子步骤:步骤2.1:将步骤1得到的输入向量序列通过最底层编码器,具体包括以下子步骤:步骤2.1.1:将步骤1得到的输入向量序列通过自注意力模块得到自注意力向量序列1;步骤2.1.2:将步骤1得到的输入向量序列以及步骤2.1.1得到的自注意力向量序列1通过残差连接逐词相加得到残差连接向量序列1;步骤2.1.3:将步骤2.1.2中得到的残差连接向量序列1通过层归一化得到归一化向量序列1;步骤2.1.4:将步骤2.1.3中得到的归一化向量序列1逐词通过前馈神经网络先升维再降维得到前馈神经网络向量序列1;步骤2.1.5:将步骤2.1.3中得到的归一化向量序列1以及步骤2.1.4中得到的前馈神经网络向量序列1通过残差连接逐词相加得到残差连接向量序列2;步骤2.1.6:将步骤2.1.5中得到的残差连接向量序列2通过层归一化得到最底层编码器输出向量序列;步骤2.2:不断将上一层编码器输出向量序列通过下一层编码器进一步编码,重复该流程直至通过倒数第二层编码器,具体包括以下子步骤:步骤2.2.1:将上一层编码器输出向量序列通过自注意力模块得到自注意力向量序列2;步骤2.2.2:将上一层编码器输出向量序列和步骤2.2.1得到的自注意力向量序列2通过残差连接逐词相加得到残差连接向量序列3;步骤2.2.3:将步骤2.2.2中得到的残差连接向量序列3通过层归一化得到归一化向量序列2;
步骤2.2.4:将步骤2.2.3中得到的归一化向量序列2逐词通过前馈神经网络先升维再降维得到前馈神经网络向量序列2;步骤2.2.5:将步骤2.2.3中得到的归一化向量序列2和步骤2.2.4中得到的前馈神经网络向量序列2通过残差连接逐词相加得到残差连接向量序列4;步骤2.2.6:将步骤2.2.5中得到的残差连接向量序列4通过层归一化得到本层编码器输出向量序列;步骤2.3:将步骤2.2得到的倒数第二层编码器输出向量序列通过顶层编码器,得到增强的上下文表示向量序列,具体包括以下子步骤:步骤2.3.1:将倒数第二层编码器输出向量序列通过自注意力模块得到自注意力向量序列3;在训练阶段,步骤2.3.1需要根据每个词的注意力分布中的词语自身注意力系数确定注意力分布损失并加入训练损失,确定注意力分布损失的流程如下:将倒数第二层编码器输出向量序列的每一个向量通过线性映射为查询q,键k以及值v,分别如式(1)、式(2)以及式(3)所示:q=w
q
·
h
+
b
q
(1)k=w
k
·
h+b
k
(2)v=wv·
h+bv(3)其中,h为倒数第二层编码器输出向量序列;w
q
、b
q
、w
k
、b
k
、wv、bv分别为查询q、键k以及值v的映射参数;对于每一个词,通过自注意力模块,确定其对于所有词的注意力分布s,如式(4)所示:其中,d
k
为k的维度,k
t
为k的转置;自注意力模块包含多个注意力头,确定所有注意力头中每个词对自身的注意力系数的平均值作为注意力分布损失attentionloss,如式(5)所示:其中,n为多头注意力头数,m为序列长度,s(i,j,k)为序列中第i个注意力头中第j个词对第k个词的注意力系数;步骤2.3.2:将倒数第二层编码器输出向量序列和步骤2.3.1得到的自注意力向量序列3通过门控残差连接逐词计算得到门控残差连接向量序列,确定门控残差连接的具体流程如下:将倒数第二层编码器输出向量序列的每一个向量通过线性映射为中间表示向量o1,如式(6)所示,将自注意力向量序列3的每一个向量通过线性映射为中间表示向量o2,如式(7)所示:o1=w1·
h+b1(6)o2=w2·
f(h)+b2(7)其中,h为倒数第二层编码器输出向量序列,f(h)为自注意力向量序列3;w1、b1以及w2、b2分别为映射参数;
对于每一个词,将o1和o2相加后通过sigmoid函数激活,得到门向量g,如式(8)所示:g=sigmoid(o1+o2)(8)对于每一个词,将g和h做向量乘法后再与f(h)相加,得到对应的门控残差连接向量序列,如式(9)所示:步骤2.3.3:将步骤2.3.2中得到的门控残差连接向量序列通过层归一化得到归一化向量序列3;步骤2.3.4:将步骤2.3.3中得到的归一化向量序列3逐词通过前馈神经网络先升维再降维得到前馈神经网络向量序列3;步骤2.3.5:将步骤2.3.3中得到的归一化向量序列3和步骤2.3.4中得到的前馈神经网络向量序列3通过残差连接逐词相加得到残差连接向量序列5;步骤2.3.6:将步骤2.3.5中得到的残差连接向量序列5通过层归一化得到编码表示向量序列;步骤3:将步骤2得到的编码表示向量序列通过输出层得到句子对应的实体标签概率分布序列,具体包括以下子步骤:步骤3.1:将步骤2得到的编码表示向量序列通过线性映射得到实体标签未归一化得分分布序列;步骤3.2:将步骤3.1得到的实体标签未归一化得分分布序列通过softmax函数激活得到实体标签概率分布序列;在训练阶段,步骤3.2通过实体标签概率分布序列和实际句子标注的实体标签确定交叉熵损失crossentropyloss,步骤3.2得到的交叉熵损失crossentropyloss和步骤2.3.1得到的注意力分布损失attentionloss一起得到训练损失loss,并在步骤3.2对训练损失进行反向传播,训练结束后保存模型用于预测阶段,不再进行后续的步骤4;训练损失loss如式(10)所示:loss=a
×
attentionloss+crossentropyloss(10)其中,α为超参数;步骤4:根据步骤3得到的实体标签概率分布序列得到实体边界和实体类型,具体包括以下子步骤:步骤4.1:将步骤3得到的实体标签概率分布序列逐词选择最大概率对应的实体标签,得到实体标签序列;步骤4.2:对步骤4.1得到的实体标签序列解码得到实体边界和实体类型。3.如权利要求1所述的一种基于上下文表示增强的跨语言命名实体识别方法,其特征在于:还包括步骤5,应用在线上交易平台的智能客服场景中,当某种语言缺乏用于训练的命名实体识别标注数据时,用其他语言的标注数据训练,获取用户提问中的实体信息,识别商户名称、商品名称,再根据实体选择相关的回答,提升线上交易平台的智能客服质量和效率,节省人工客服成本,提升线上交易平台的经济效益。

技术总结
本发明公开一种基于上下文表示增强的跨语言命名实体识别方法,属于自然语言处理应用技术领域。本发明分别基于注意力分布损失和门控残差连接增强跨语言预训练模型在跨语言命名实体识别任务中的上下文表示,分为训练和预测两阶段,训练后用于预测,将跨语言预训练模型顶层编码器的自注意力模块得到的注意力分布中每个词对自身的注意力系数加入训练损失,减少模型对词语自身的关注,使得上下文表示中包含更多的上下文信息,采用门控残差连接模块作为跨语言预训练模型顶层编码器中接在自注意力模块后的残差连接模块,通过门抑制词语本身信息进入最终上下文表示的比例,提升上下文信息在上下文表示中的占比。信息在上下文表示中的占比。信息在上下文表示中的占比。


技术研发人员:鉴萍 简林圳
受保护的技术使用者:北京理工大学
技术研发日:2023.06.26
技术公布日:2023/9/20
版权声明

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

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

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

相关推荐