学术咨询

让论文发表更省时、省事、省心

基于Transformer编码器的中文命名实体识别方法

时间:2021年08月24日 分类:推荐论文 次数:

摘要:命名实体识别是自然语言处理中的重要任务,相比于英文命名实体识别,面向中文的命名实体识别任务往往更具难度。针对中文命名实体识别中词语信息丢失的问题,提出了一种基于Transformer编码器的命名实体识别算法,在模型的字嵌入层中使用结合词典的字向

  摘要:命名实体识别是自然语言处理中的重要任务,相比于英文命名实体识别,面向中文的命名实体识别任务往往更具难度。针对中文命名实体识别中词语信息丢失的问题,提出了一种基于Transformer编码器的命名实体识别算法,在模型的字嵌入层中使用结合词典的字向量编码方法,从而让字向量包含了词语信息,同时针对Transformer编码器在注意力运算时会丢失字符的相对位臵信息的问题,修改了Transformer编码器的注意力运算方式并引入了相对位臵编码,最后引入条件随机场获取最优的标签序列。实验结果表明所提方法模型在两个中文命名实体识别数据集Resume和Weibo数据集上较现有的主流模型具有更好的识别效果。

  关键词:自然语言处理;中文命名实体识别;Transformer编码器;条件随机场;相对位臵编码

编码器论文

  自然语言处理是近几年热门研究方向,其目的是让计算机理解人类的语言并进行有效交互。命名实体识别技术是自然语言处理中一项非常重要的技术,其目的是识别语句中包含特定意义的实体,包括人名,地名,机构名,专有名词等。具体的命名实体识别任务又可分为通用领域的命名实体识别和特定领域的命名实体识别,如金融,医疗,军事领域等1]。

  命名实体识别技术的应用场景十分广阔,比如对文献关键词的提取,电子病历中疾病特征的抽取等早期专业领域的命名实体识别多基于词典和规则的方法,在过去的十年中基于统计学习的机器学习方法被广泛应用于命名实体识别任务中。近几年随着计算机性能的不断提升,基于深度学习的方法不断刷新了命名实体识别任务的准确率。基于深度神经网络的命名实体识别方法将命名实体识别任务视作序列标注任务,对文本中的每一个字打上对应的标签,最后根据标签序列识别命名实体。

  目前主流的基于深度学习的序列标注模型通常采用字嵌入层,编码层和解码层三层结构,文本中的字首先通过字嵌入层生成对应的字向量,然后在编码层进行上下文编码以学习语义,最后在解码层中生成对应的标签,而不同的命名实体识别模型正是针对这三层进行改动2]。

  在自然语言处理任务中,RNN(Recurrent NeuralNetworks,循环神经网络)被广泛应用于各种任务的编码层,其中BiLSTM(idirectionalonghortermemoryetworks,长短期记忆网络)是命名实体识别任务中最为常见的循环网络结构,Huang等人第一次提出了基于BiLSTM和CRF(ConditionalRandomField,条件随机场)的命名实体识别模型3],利用iLSTM的双向编码能力进行前后文编码,利用CRF学习标签间的序列顺序,是目前最为主流的命名实体识别模型。

  Zhang和Yang于2018年提出了LatticeLSTM模型,在BiLSTM模型的基础上进一步改进,通过对编码层的修改,在字向量中编码了词语的信息。文献[4说明了BiLSTM采用的门结构虽然能帮助解决梯度消失的问题,但是三个“门”单元也导致了计算量的增加,增加了模型的训练时间,而LatticeLSTM对编码层的改进也进一步增大了模型的训练负担。

  近几年来,由Vaswani等人提出的机器翻译模型Transformer开始被广泛应用于各大自然语言处理任务中,其基于注意力机制获取文本中字符间的长距离依赖,采用的并行结构也可以提高模型的训练效率。但是在命名实体识别任务中,使用Transformer作为编码器的表现并不理想,文献11]说明其采用的绝对位臵编码在经过模型自身的注意力运算后会丢失字符中的相对位臵信息,而影响最终的识别效果。

  综上所述,基于BiLSTM的模型在命名实体识别任务中表现良好,但是BiLSTM训练速度较慢,在此基础上的Lattice—LSTM模型通过对编码层的改动在字向量中添加了词的信息,但是进一步增加了模型的计算负担。基于Transforemr编码器的模型因为丢失字符相对位臵信息的问题,无法充分发挥其性能。针对上述问题,本文提出了一种基于Transformer编码器的命名实体识别模型,在模型的字嵌入层使用结合词典的字向量编码方式将词语信息编码进字向量中;在Transformer编码器层中,通过对自注意力计算方式的修改以及引入相对位臵编码,在模型中引入了相对位臵信息。最后通过在两个中文数据集上的对比实验验证了模型的实际效果。

  本文的整体结构如下,第二节详细介绍了给予Transformer编码器的命名实体识别模型的结构及原理。第三节介绍了实验数据集以及实验环境,并介绍了实验的结果以及不同模型的对比分析。最后一节对本文的工作作了总结与展望。基于Transformer编码器的命名实体识别模型模型的整体结构可以分为三层,字嵌入层,Transformer编码器层和条件随机场层。字嵌入层中使用结合词典的字向量编码方法,生成包含词语信息的字向量。Transformer编码器层对字向量进一步编码以学习前后文特征,同时通过修改注意力运算方式和引入相对位臵编码,引入了字符的相对位臵信息。最后通过条件随机场层获取最优的标签序列,根据标签序列识别命名实体。

  结合词语信息的字嵌入层在命名实体识别模型的字嵌入层,需要将输入语句的每一个字映射为固定维度的字向量,以便后续的编码。在中文命名实体识别任务中,基于字符的编码方法难以利用词语的信息,因此本文提出了一种结合词典的字向量编码方法,使生成的字向量可以包含词语的信息。对于字向量的生成,首先需要进行字嵌入模型的选择。Word2vec是一款经典的语言嵌入模型,文献12对其作了详细的介绍。其具体实现了两个模型,SkipGram跳字模型和CBOW(ContinueBagofWords)连续词袋模型。其中跳字模型的核心思想是使用中心字预测背景字,连续词袋模型的核心思想是使用背景字预测中心字,这两种方法都可以在不进行人工标注的前提下利用神经网络训练生成字向量,同时字向量包含了周围文本的信息15。在实际实验中,使用跳字模型生成字向量。

  在选择完字嵌入模型后,接下来具体介绍本章提出的融入词语信息的字向量编码方法。在Zhang和Yang提出的LatticeLSTM模型中,为了在编码中加入词语信息,对LSTM的结构作了大幅的修改,从而在字嵌入的同时引入了词的信息,并最终证明了在字向量中加入词语信息可以增强中文命名实体识别任务的准确率。

  但是,Zhang和Yang的模型对LSTM的修改增加了训练时需要更新的参数,提高了模型的计算开销,同时这种修改难以应用于使用其它神经网络进行编码的命名实体识别模型,比如本文使用的Transformer编码器模型。针对上述问题本文提出了一种相对简单的在字嵌入层引入词语信息的方法,这种方法只对命名实体识别模型的字嵌入层作了修改。从而保证了模型的整体计算效率不受太大的影响,同时这种方法也具有更强的可移植性。本文提出的字向量编码方法可以分为三步。

  首先,对于输入的文本,进行分句处理,然后使用Zhang和Yang在LatticeLSTM模型中开源的中文分词词典作为句中每个字对应的词典,其中包括约29万双字符词汇和28万三字符词汇。然后,对于文本中的每一个字符,根据词典匹配句子中所有包含这个字符的词,使用B(c),M(c),E(c)三个集合编码这个字具有的词信息。其中,B(c)表示所有以字符开头且长度大于的词,M(c)表示包含字符且字符不在开头和末尾的词,E(c)表示以字符结尾且长度大于的词,如果集合为空,则添加一个特殊的空词None到集合中。

  字符c5‘胃’出现在词‘肠胃炎’的中间,词‘胃炎’的首部,词‘肠胃’的底部,因此,根据本文制定的规则,其对应的词向量集合B(c5)为{‘胃炎’},(c5)为{‘肠胃’},(c5)为{‘肠胃炎’},这样做即可把句中字符‘胃’对应的三个词的信息‘肠胃’,‘胃炎’,‘肠胃炎’通过字符的三个集合完整的收录。

  实验结果及分析为了验证本章提出的基于Transformer编码器的命名实体识别模型的效果,同时与其它基于深度学习的命名实体识别模型进行对比,本文使用了两个中文命名实体识别数据集Weibo数据集和Resume数据集进行实验,使用精确率,召回率以及F1值作为实验的主要评估指标,通过最终的实验结果验证命名实体识别模型的效果。

  实验数据准备实验使用的Weibo数据集和Resume数据集均为公开的中文命名实体识别数据集。Weibo数据集是从中国的社交媒体新浪微博上选取并标注的信息,具体包括了从2013年11月至2014年12月从微博采样的约1900条消息。Resume数据集来源于新浪金融上的中文简历信息,包含人名,种族,职称等类实体,总共涉及4731条经过标注的中文简历信息20。

  其中,模型性能对超参数学习率和BatchSize较为敏感。在实际操作中,BatchSize选择16,通过使用小批量的样本集增加模型的迭代次数,更快的达到拟合点,相对的选择0.001的学习率以保持训练的稳定性,同时将dropout设为0.3防止模型过拟合3.3与其它模型的对比结果与分析为了验证本文提出的基于Transformer编码器的命名实体识别模型的性能,同时比较其它的命名实体识别模型,本章引入了基于卷积神经网络的IDCNN+CRF模型22和经典的BiLSTM+CRF模型作为对比模型,在Weibo数据集和Resume数据集上分别进行了对比实验。在实验结果中,因为在模型中加入了相对位臵信息,使用Transformer+RelativePosition+CRF表示本文提出的命名实体识别模型。

  本文提出的基于Transformer的命名实体识别模型在Resume数据集上取得了最好的成绩,F1值达到了94.7%,略高于基于BiLSTM的模型和基于IDCNN的模型。同时,基于Transformer编码器的模型在第20个Epoch时F1值即开始增长缓慢,模型趋近于收敛,说明基于Transformer编码器的模型相比基于BiLSTM的模型和基于IDCNN的模型取得了更快的收敛速度。在Weibo数据集上三个模型的效果都不理想,虽然本文提出的Transformer编码器模型的F1值仍然领先于其它两个模型,但也仅达到了百分之58.2,相比其它模型提升有限。

  根据对Weibo数据集的观察,三个模型识别效果均不佳的原因主要有两点,一是Weibo数据集的数据样本量较小,模型训练效果不佳,二是weioboNER数据集中包含大量的人名类实体和地名类实体,比如‘李开复’和‘台湾’,对于这种类型的实体基于深度学习的模型很难通过神经网络提取实体的特征,从而影响了最终的识别效果。

  在本文提出的基于Transformer编码器的命名实体识别模型中,分别对字嵌入层和Transformer编码器层作了改进,其中字嵌入层使用了融合词语信息的字向量编码方法,Transformer编码器层加入了相对位臵信息,为了验证这些改动的有效性,本文引入原生的Transformer+CRF的组合模型在Resume数据集上作进一步的对比实验。

  本文提出的基于Transformer的命名实体识别模型相比原生的Transformer+CRF模型,F1值取得了约2%的提升,证明了字嵌入层中词语信息的引入以及Transformer编码器层中相对位臵信息的引入提升了命名实体识别模型的最终识别效果。

  计算机论文范例: 电子信息类专业计算机网络课程的教学探究

  结束语

  本文针对中文领域命名实体识别任务,提出了一种基于Transformer编码器的命名实体识别方法,该方法通过在字嵌入层中使用结合词典的字向量编码方法让字向量包含了词语信息,在Transformer编码器层中通过对注意力运算方式的修改以及引入相对位臵编码增加了字符的相对位臵信息,实验表明本文提出的命名实体识别模型在两个中文数据集上相比其它主流的命名实体识别模型具有更好的效果,并验证了改动的有效性。在后续的工作中,将在更多数据集上与更多其它的基于深度学习的模型进行对比,同时进一步优化模型,增强模型的泛化能力。

  参考文献:

  [1]YinZhangzhi,LiXinzi,HuangDegen,etal.ResearchonChineseNamedEntityRecognitionBasedonwordmodel[J].ActaSinicaSinicaSinica,2019,V.33(11):100105+111殷章志,李欣子,黄德根等.融合字词模型的中文命名实体识别研究[J].中文信息学报2v.33(11):100105+111.

  [2]WangHong,ShiJinchuan,ZhangZhiwei.SemanticrelationextractionofLSTMbasedonattentionmechanism[J].Computerapplicationresearch,2018,5(5):14171420王红,史金钏,张志伟.基于注意力机制的LSTM的语义关系抽取[J].计算机应用研究,2018,5(5):14171420.

  [3]HuangZ,XuW,YuK.BidirectionalLSTMCRFmodelsforsequencetagging[J].arXivpreprintarXiv:1508.01991,2015.

  作者:司逸晨,管有庆

NOW!

Take the first step of our cooperation迈出我们合作第一步

符合规范的学术服务 助力您的学术成果走向世界


点击咨询学术顾问