一种多模态信息选择性融合的中文命名实体识别方法

文档序号:32308959发布日期:2022-11-23 10:55阅读:258来源:国知局
一种多模态信息选择性融合的中文命名实体识别方法

1.本发明涉及一种中文命名实体识别方法,具体涉及一种选择性融合了词汇、字音和字形等多模态信息的中文命名实体识别方法,属于自然语言处理技术领域。


背景技术:

2.命名实体识别(named entity recognition,ner)技术,旨在从给定的文本序列中检测实体提及的边界并判断其所属类别。该技术是机器翻译、问答系统和阅读理解等多项自然语言处理下游任务的基础。ner的研究难点主要在于中文文本的语义分析困难,表现在词汇信息融合困难、汉字语义信息的引入困难等方面。
3.不同于英文文本,中文的单词之间没有空格作为边界,而单个字所能表示的语义有限。因此,如何将词汇信息融入到模型中,成为多项中文自然语言处理任务的研究热点。
4.在中文命名实体识别任务上,为了充分利用语义更为丰富的词汇信息,技术人员设计了基于自动分词器、多字符表示和外部词典等多种资源的神经网络模型。其中,以流水线方式作业的分词-实体识别框架受限于中文分词的正确性,在低资源领域表现较差。而多字符表示蕴含了字符间的共现信息,在一定程度上补充了上下文语境信息,但多数多字符组合并不具备实际的词义,无法很好地模拟词汇信息。
5.为了避免分词器的错误传播问题和多字符表示的语义不足的问题,将外部词典与字粒度ner模型结合,成为了目前主流的词信息融合方式。其中, lattice-lstm将输入文本中所有潜在的匹配词信息注入到单字表示中,在多个领域的中文ner数据集上取得了性能提升,同时,该研究带动了词表信息融合的研究热潮。特别地,plte和flat基于transformer框架分别设计了两种词信息融合方式。plte以transformer encoder为基础,能够并行地批量处理对所有字符和匹配的词典词信息的建模。除此之外,它还添加了位置关系表示,引进了一种多孔机制增强局部性的建模和维持捕捉长期依赖的能力,赋予了字向量更丰富的语义信息,在多个数据集上均取得了性能提升。flat则是将与当前输入文本匹配的所有潜在词拼接到输入文本之后,将原始的单字序列输入文本扩展为字词序列,即将栅格结构展平为跨度,进而基于transformer的自注意力机制和跨度的相对位置编码,使每个字符能够直接与潜在匹配词交互,从而提升 ner模型性能。mect则在flat基础之上,针对汉字是象形文字的特点,将带有汉字语义信息的radical(偏旁部首)也融入到字向量中,并使用了一个 cross-transformer网络模块来交互式的融合lattice embedding与radical embedding以增强语义信息。
6.尽管有以上各种工作来融入词汇以及增强语义信息,但是,中文的字音和字形是两个非常重要的信息,它们在语言理解任务中携带了重要的句法和语义信息。到目前为止,还没有方法将这两个重要信息完整的融入到ner方法中。


技术实现要素:

7.本发明的目的是针对当前的ner工作往往会忽略汉字中的字音和字形两个重要信
息,为了解决如何将字音和字形这两个重要信息有效融入ner方法中的技术问题,创造性地提出一种多模态信息选择性融合的中文命名实体识别方法。能够更好地动态融合字符、字音和字形三者之间的语义信息。
8.本发明的创新点在于:在ner(命名实体识别)的输入中,加入携带语义信息的字符的拼音与偏旁部首序列。使用cnn(convolutional neural network) 网络对汉字的字音(pinyin,也就是拼音),以及字形(radical,也就是偏旁部首)进行编码,再经过cross-transformer网络的交互式嵌入之后,采用选择性融合,能够动态的生成不同模态信息的融合权重。
9.首先,将原文本使用词典匹配方法获取单词的语义(lattice)信息,并使用由头尾位置转换而来的相对位置编码来适应单词边界信息。
10.然后,对于文本的每一个字符,使用cnn网络来提取汉字的拼音和偏旁部首信息。当得到汉字的字音(pinyin)、字形(radical)和语义(lattice)信息之后,使用cross transformer来增强lattice与pinyin、lattice与radical的语义信息。
11.之后,采用选择性融合方式集成这些向量。
12.最后,对单词部分进行屏蔽,并将融合后的信息传递给条件随机场,得到最终的标签预测概率,从而完成中文命名实体识别。
13.有益效果
14.本发明,对比现有技术,具有以下优点:
15.1.本方法在融入词汇信息基础之上,加入了携带重要语义信息的字音和字形信息,赋予了向量更强的语义信息,并且设计的选择性融合模块可以动态集成各模态信息,有效提升了命名实体识别的效果。
16.2.本发明使用了选择性融合方式,能够动态地控制字音和字形信息所占的权重,能够有效提升命名实体识别性能。为机器翻译、问答系统和阅读理解等自然语言任务提供有效支持。
附图说明
17.图1是本发明方法总体架构图;
18.图2是本发明方法步骤1以及实施例的模型lattice embedding构造图;
19.图3是本发明方法步骤1以及实施例的模型pinyin和radical embedding构造图;
20.图4是本发明方法步骤2以及实施例的cross-transformer网络图;
21.图5是本发明方法步骤3以及实施例的选择性融合层。
具体实施方式
22.下面结合附图和实施例,对本发明方法做进一步详细说明。应当理解,此处所描述的具体实施例,仅仅用以解释本发明,并不用于限定本发明。
23.本发明的目的是通过以下技术方案实现的:
24.一种多模态信息选择性融合的中文命名实体识别方法,包括以下步骤:
25.步骤1:多模态信息输入。
26.获取汉字的语义(lattice)信息、字音(pinyin)信息和字形(radical)信息。
27.步骤1-1:语义信息获取。
28.首先,使用词典匹配方法获取汉字的语义信息,并使用由头尾位置转换而来的相对位置编码来适应单词边界信息。
29.然后,使用预先训练好的词向量初始化获取lattice embedding。
30.步骤1-2:字音信息获取。
31.获取汉字的字音(例如,可以使用python库工具pypinyin来获取),包括汉字的声母、韵母和音调。
32.将每个汉字的字音按照声母、韵母、音调顺序组合,然后按照式1输入到 cnn卷积网络中进行embedding表示:
33.xi=f(w
·ei:i+h-1
+b)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
34.其中,w、b为卷积层参数,h为卷积核宽度,xi为文本中第i个字符拼音经过卷积层后的表示,e表示字符的初始化表示,f为激活函数。
35.步骤1-3:字形信息获取。
36.将汉字结构主体作为汉字的偏旁部首,首先爬取汉字的结构主体,将汉字的结构主体进行顺序组合,然后利用cnn编码为radical embedding表示。
37.具体地,可以使用新华词典的汉字结构主体作为汉字的偏旁部首。
38.步骤2:基于cross-transformer的交互嵌入,包括embedding向量初始化和embedding交互嵌入。
39.步骤2-1:embedding向量初始化。
40.在步骤1中得到了汉字的lattice、pinyin和radical embedding。
41.通过一个线性transformer模块,得到cross-transformer的输入:
[0042][0043]
其中,e
l1/l2
、e
p
、er是步骤1所得到的汉字lattice、pinyin和radical embedding; i为单位矩阵,每一个线性映射矩阵w均为可学习参数。l1、l2分别表示与pinyin 和radical做交互计算的lattice1和lattice2。p表示pinyin,r表示radical。t表示矩阵的转置。q、k、v分别表示cross-transformer的三个输入embedding。
[0044]
步骤2-2:embedding交互嵌入,得到cross-transformer的输入。之后,使用cross-transformer网络进行lattice与pinyin、lattice与radical的交互嵌入计算,具体如下:
[0045]
att
p
(q
l1
,k
p
,v
p
)=softmax(q
l1
,k
p
)v
p
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0046]
att
l1
(q
p
,k
l1
,v
l1
)=softmax(q
p
,k
l1
)v
l1
ꢀꢀꢀꢀꢀꢀꢀ
(4)
[0047]
att
l2
(qr,k
l2
,v
l2
)=softmax(qr,k
l2
)v
l2
ꢀꢀꢀꢀꢀꢀꢀ
(5)
[0048]
attr(q
l2
,kr,vr)=softmax(q
l2
,kr)vrꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0049]
其中,att为最后得到的attention embedding。l1、l2分别表示与pinyin和radical 做交互计算的lattice1和lattice2,p表示pinyin,r表示radical。q、k、v分别表示cross-transformer的三个输入embedding。
[0050]
步骤3:选择性融合。包括字符粒度、句子粒度两个层面的融合信息。
[0051]
步骤3-1:字符粒度权重选择。
[0052]
步骤2得到了各个模态中的attention向量,在此本发明使用hi来表示第i 个字符的attention向量。使用一个选择性的门单元来控制有多少信息能够流向混合的embedding表示,门值由一个全连接层和一个sigmoid函数计算出来。输入包括经过cross-transformer之后的cross attention表示。将pinyin、两个lattice 和radical模式的门值表示为g
p
、g
l1
、g
l2
、gr,则第i个字符的融合embedding 表示如下计算:
[0053][0054][0055][0056][0057]
其中,w
p
,w
l1
,w
l2
,wr,b
p
,b
l1
,b
l2
,br均为可学习的参数。σ是sigmoid函数。分别表示第i个字符在pinyin、lattice1、lattice2和radical的 attention向量。
[0058]
步骤3-2:融合embedding表示。
[0059]
在步骤3-1中得到各个embedding的门值之后,将各个attention embedding 与门值进行加权求和,得到融合embedding表示
[0060][0061]
步骤3-3:句子粒度学习。
[0062]
应用transformer layer,在句子级别来充分学习lattice、pinyin和radical 信息。所有字符的混合表征被打包成:
[0063][0064]
其中,h0表示所有字符的混合表征,表示第n个字符的融合表征,表示第 m个字符的融合表征。
[0065]
则最终的混合embedding表示,按照如下方式进行计算:
[0066]
h=transformer(h0)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(13)
[0067]
其中,h表示经过transformer层的隐藏层输出。
[0068]
步骤4:输出最终的标签预测概率。
[0069]
在步骤3融合过程结束之后,对单词部分进行屏蔽,并将融合后的信息传递给条件随机场(crf),得到最终的标签预测概率。
[0070]
实施例
[0071]
如图1所示,本发明包括四个模块,第一层是输入层,将输入文本通过预训练词向量以及编码器转换为lattice,pinyin和radical embedding。然后通过第二层的cross-transformer网络来交互式地对lattice与pinyin和radical embedding进行attention计算。然后将得到的attention分数通过一个选择性融合模块得到混合的向量。最后通过一个输出层以及crf(conditional random field,条件随机场)得到最后标签的概率。
[0072]
具体包括如下步骤:
[0073]
步骤1:将输入文本转换为lattice,pinyin和radical embedding表示;
[0074]
步骤1包括如下子步骤:
[0075]
步骤1-1:lattice embedding生成。
[0076]
如图2所示,首先通过词典匹配方法获取word lattice信息,如南京市长江大桥,可以得到“南京”,“南京市”,“市长”,“长江”,“长江大桥”,“大桥”等word lattice信息。然后使用由头尾位置转换而来的相对位置编码以及预训练词向量得到lattice embedding。
[0077]
步骤1-2:pinyin embedding生成。
[0078]
如图3所示,利用pypinyin库得到每个汉字的声母、韵母以及音调序列,然后通过cnn编码提取信息得到该汉字的pinyin embedding表示。
[0079]
步骤1-3:radical embedding生成;与步骤1-2类似,如图3所示,利用事先爬取得到的汉字结构主体作为字形信息,得到radical序列,然后通过cnn编码得到radical embedding表示。
[0080]
步骤2:基于cross-transformer的交互attention计算;
[0081]
本发明中的基于cross-transformer的交互attention计算如图4所示,通过四个transformer encoder layer,将lattice与pinyin,lattice与radical两两进行cross attention计算,主要目的是得到汉字与pinyin,汉字与radical的交互 attention表示:
[0082]
步骤2包括如下子步骤:
[0083]
步骤2-1:embedding初始化;对于输入层得到的embedding,通过一个线性transformer模块来初始化得到cross-transformer的输入。
[0084]
步骤2-2:attention计算;得到了cross-transformer的输入之后,按照图4 所示,设计4个transformer layer,将lattice与pinyin,lattice与radical的 q值进行交换,进行attention计算,得到4个attention embedding。
[0085]
步骤3:选择性融合模块。
[0086]
本发明中的选择性融合模块如图5所示:
[0087]
选择性融合模块主要针对步骤2中通过cross-transformer网络得到的各个 ateention embedding,进行一个动态融合表示,首先通过四个门值来控制每个 attention embedding中有多少信息可以流向混合向量中,得到混合向量表示之后,再经过一个transformer layer来获取句子粒度的attention计算,最终得到一个融合embedding。
[0088]
步骤3包括如下子步骤:
[0089]
步骤3-1:各模态信息的门值计算。
[0090]
采用一个选择性的门单元来控制有多少信息可以流向混合的embedding表示。如果当前文本更加偏口语化,则pinyin attention中的更多信息将会流入到 fusion embedding中。相反,如果当前文本更加偏书面语,则radical attention 中的更多信息将会流入到fusion embedding中。
[0091]
步骤3-2:基于字符粒度的融合embedding。
[0092]
经过步骤3-1得到各个模态信息的门值之后,再使用门值作为权重对 attention加权求和作为字符粒度的融合embedding。
[0093]
步骤3-3:基于句子粒度的学习。
[0094]
为了让该发明能够在句子级别充分学习lattice、pinyin和radical信息,在后面应用了一个transformer layer来学习。
[0095]
步骤4:模型输出层。
[0096]
步骤3之后得到了融合embedding,然后将词语部分给mask掉,将其传递给条件随机场(crf)模块,输出最终的标签预测概率。
[0097]
以下各表是该发明提出的方法在四个公开数据集上的实验结果。visphone 是本发明提出的方法,其他为当前一些经典或者最新ner模型,可以发现,本发明提出的方法在四个数据集上与当前最好模型相比均有明显的提升。
[0098]
表1该发明提出的方法在weibo数据集上的实验结果
[0099][0100]
表2该发明提出的方法在resume数据集上的实验结果
[0101][0102]
表3该发明提出的方法在ontonotes数据集上的实验结果
[0103][0104][0105]
表4该发明提出的方法在msra数据集上的实验结果
[0106][0107]
为了说明本发明的内容及实施方法,本说明书给出了一个具体实施例。在实施例中引入细节的目的不是限制权利要求书的范围,而是帮助理解本发明所述方法。本领域的技术人员应理解:在不脱离本发明及其所附权利要求的精神和范围内,对最佳实施例步骤的各种修改、变化或替换都是可能的。因此,本发明不应局限于最佳实施例及附图所公开的内容。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1