融合知识图谱信息的命名实体识别方法
2021-04-17阎志刚李成城林民
阎志刚,李成城 ,林民
内蒙古师范大学计算机科学技术学院,呼和浩特 内蒙古010022
0 引言
命名实体识别(Named Entity Recognition,NER)作为自然语言处理中的一项基本任务,在问答系统[1]、句法分析[2]以及机器翻译[3]等高级自然语言处理任务中广泛应用.其具体任务目标是从文本中有效提取并识别出各类实体,具体包含三大类(实体类、时间类和数字类)、七小类(人名、机构名、地名、时间、日期、货币和百分比)命名实体.NER 主要经历了传统方法、基于传统机器学习的方法和基于深度学习的方法三个阶段.
早期主要有基于字典[4]、基于规则[5]与基于统计[6]等传统的识别方法,识别过程通常需要大量人工参与,识别效率低下.基于传统机器学习的命名实体识别方法[7~9]主要经历了监督、半监督、无监督和混合方法等发展历程.
随着深度学习的迅速发展,研究者开始使用深度神经网络[10](Deep Neural Network,DNN)来进行命名实体识别.神经网络模型RNN[11](Recurrent Neural Network,RNN)有长期记忆的性能并且能解决可变长度输入,在各个领域都表现出良好的性能,但是会伴有梯度消失的问题.于是在RNN 神经网络模型的基础之上提出了长短时记忆(Long-short Term Memory,LSTM)模型[12].张海楠等人[13]将字特征和词特征统一结合,解决了基于词特征的分词错误和字典稀疏问题.针对传统机器学习方法需要人工设计特征及语料不足的问题,冯艳红等人[14]提出使用基于BLSTM 的命名实体识别方法,对于每一个输入序列,通过上下文关系可以获取当前词项的语义信息,利用双向LSTM(Bidirectional LSTM,BLSTM)来解决LSTM 无法捕捉到文本后续相关语法语义信息的问题.Liu 等人[15]提出字符任务感知型神经语言模型,将字符进行向量化表示,可以很好地识别新实体.刘宇鹏等人[16]提出了BLSTM-CNN-CRF 模型,可以同时自动获取基于字符和词语的语义表示,不再需要人工选择特征和数据预处理. Devlin 等人[17]提出了基于Transformer 的BERT 模型.该模型采用先预训练,再微调的方法可以捕获到更加丰富的语义信息.基于注意力机制建模的Transformer 模型在特征提取方面性能良好,采用编码器-解码器的架构,可以捕获长距离的依赖关系,还可以进行并行化处理.通过缩小序列中任意两个位置之间距离的方法,为不同的信息分配不同的注意力权重,从而提取出长距离的全局信息.王子牛等人[18]提出了基于BERT 的神经网络方法进行中文命名实体识别,利用大规模未标注语料对BERT 进行训练,获得文本抽象特征. 然后利用BiLSTM 神经网络捕获序列化文本的上下文特征.最后,通过CRF 进行序列解码标注,提取出相应的实体. 杨飘等人[19]通过嵌入BERT 预训练语言模型,构建BERT-BiGRU-CRF 模型用于表征语句特征.利用具有双向Transformer 结构的BERT 预训练语言模型增强字的语义表示,根据其上下文动态生成语义向量. 针对BERT 模型参数量大,训练时间长,实际应用场景受限等问题,邓博研等人[20]提出了一种基于ALBERT(A Lite BERT,ALBERT)的中文命名实体识别模型ALBERT-BiLSTM-CRF.在结构上,先通过ALBERT 预训练语言模型在大规模文本上训练字符级别的词嵌入,然后将其输入BiLSTM 模型以获取更多的字符间依赖,最后通过CRF进行解码并提取出相应实体.
鉴于中文命名实体存在结构复杂、形式多样、一词多义等问题,同时考虑到知识图谱可以提供丰富的结构化知识事实,从而更好地进行语言理解.本文提出了一种融合知识图谱的中文命名体识别方法,通过知识图谱中的信息实体增强语言的外部知识表示能力,从而提升中文命名体的识别效果.
1 相关工作
1.1 知识图谱
图是一种有效表述数据间结构的表示形式,知识图谱是由图和知识组成的[21].知识总体上可以分为陈述性知识和过程性知识两大类.陈述性知识是描述客观事物的性能、状态等静态信息,主要分为事物、概念、命题三个层次.过程性知识是描述问题如何求解的动态信息,分为规则和控制结构两种类型.根据知识的主客观性,又可以把知识分为事实性知识和主观性知识.事实性知识通常是指确定的、不随状态的变化而改变的知识.在知识图谱中,存储的大都为事实性知识.
将数据结构化并与已有的结构化数据相关联,就构成了知识图谱.2012 年谷歌正式提出知识图谱(Knowledge Graph)的概念,旨在实现更智能的搜索引擎[22].知识图谱本身是一个网状知识库,由实体通过关系链接而形成.它以结构化的形式描述客观世界中的概念、实体及其之间的关系,将互联网的信息表达成更接近人类认知世界的形式.知识图谱的表示形式为G=(E,R,S),其中E={e1,e2,…,e|E|}表示知识库中的实体集合,R={r1,r2,…,r|E|}表示知识图谱中的关系集合,S⊆E×R×E 表示知识图谱中三元组的集合[23].
1.2 BERT 模型
1.2.1 Transformer 体系结构
BERT 的模型体系结构是基于Vaswani 等人[24]描述的原始实现,是一个多层的Transformer,具体Transformer 模型的编码器共四层,第一层是多头注意力机制(Multi-Head Attention);第二层是求和与归一化层,用于解决深度神经网络中的梯度消失问题;第三层是前馈神经网络层;第四层也为求和与归一化层,用于生成中间语义编码向量并传送给解码器.
解码器和编码器结构类似,共包含六层.区别在于第一层是带MASK 操作的多头注意力机制层,在输出时,当前时刻无法获取未来的信息,因此解码器的输出需要右移,并遮挡后续的词项进行预测.最后解码器再经过一个线性回归和Softmax 层输出解码器最终的概率结果.Transformer 模型架构如图1 所示.
1.2.2 BERT 模型的输入表示
BERT 模型将词向量、句向量和位置向量叠加起来一同作为输入,且在开头和结尾分别加入[CLS]、[SEP]两个特殊字符,两个句子之间使用[SEP]进行分割,BERT 模型的输入具体包括以下三个方面:
(1)使用学习的位置向量,支持的序列长度最多为512 个词项.每个序列的第一个词项始终是特殊分类嵌入([CLS]),对应于该词项的最终隐藏状态(即Transformer 的输出),常被用作分类任务的聚合序列表示.对于非分类任务,将忽略此向量.
(2)句子对作为一个序列进行输入,以两种方式区分句子.首先,用特殊标记([SEP])将它们分开.其次,添加一个学到的句子A 嵌入到第一个句子的每个词项中,一个句子B 嵌入到第二个句子的每个词项中.
(3)对于单个句子输入,只使用句子A 嵌入.
图1 Transformer 模型架构Fig.1 Transformer model architecture
2 融合知识图谱信息的命名实体识别方法
传统的BERT 可以较好地挖掘出文本数据中的语义信息,但几乎没有考虑结合知识图谱对命名实体进行识别.针对语言理解,知识图谱能够为其提供更丰富的结构化信息.基于传统的BERT 模型,该方法加入了知识图谱信息,使词嵌入以及知识嵌入联合嵌入,这样可以更有效的学习到语义知识单元的完整语义表示,提升命名实体识别的性能.
2.1 标记策略
设定词项序列标记设定为{w1,w2,…,wn},其中n 是词项序列的长度.同时将与词项序列对齐的实体序列标记设定为{e1,e2,…,em},其中m 表示实体序列的长度. 此外,将包含所有标记的整个词汇表记为V,包含知识图谱中所有实体的实体序列表的集合记为E.如果一个词项w∈V,并且有与其对齐的实体e∈E,则定义这种对齐方式为f(w)= e.
2.2 模型结构
模型主要包含抽取知识信息与训练语言模型两大步骤:
(1)对于抽取并编码的知识信息,首先识别文本中的命名实体,然后将识别出的实体与知识图谱中的实体进行匹配.该模型并不直接使用知识图谱中基于图的事实,而是通过知识嵌入算法对知识图谱的图结构进行编码,并将多信息实体嵌入作为相关输入,基于文本和知识图谱对齐,将知识模块的实体表示整合到语义模块的隐藏层中.
(2)借鉴BERT 模型的思想,该模型采用带Mask 的语言模型,同时预测下一句文本作为预训练目标.除此之外,为了更好地融合文本和知识特征,设计了一种新型的预训练目标,即随机掩盖掉部分对齐了输入文本的命名实体,并要求模型从知识图谱中选择合适的实体以完成对齐.此外,相较于传统BERT 模型仅利用局部上下文预测词项的方法,本文模型要求同时聚合上下文和知识事实的信息,并预测词项和实体,从而构建出一种知识化的语言表示模型.
模型结构如图2 所示,一方面,利用T-Encoder 从文本中捕获基本的词法和语法信息.另一方面,利用K-Encoder 将知识图谱集成到底层的文本信息中.最终将词汇信息和实体的异构信息表示为统一的特征空间.
2.2.1 T-Encoder 与K-Encoder 编码器
在T-Encoder 编码器中,首先对词嵌入、句子嵌入及位置嵌入进行合并,作为T-Encoder 的输入,即图2的词项输入.而后通过式(1)计算词法和语义特征.
图2 模型结构Fig.2 Model structure
图3 K-Encoder 编码器中的聚合器Fig.3 Aggregators in the K-Encoder
如图3 所示,在K-Encoder 编码器中,首先抽取文本中对应的实体,通过知识图谱嵌入法将实体转为对应向量表示{e1,e2,…,em}.然后将{w1,w2,…,wn}及{e1,e2,…,em}作为K-Encoder 的输入,即式(2).
2.3知识增强
为了将知识融入信息性实体的语言表示中,提出了一项新的预训练任务,该任务随机掩盖了一些已经对齐的词项和实体,而后要求系统根据对齐的词项来预测所有相应的实体.给定词项序列{w1,w2,…,wn}和与它对齐的实体序列{e1,e2,…,em},关于词项wi,对齐的实体分布定义如式(8),式中Li 表示线性层,该式也将用于计算预训练任务的交叉熵损失函数.
鉴于词项实体对齐方式存在一些问题,制定以下操作:
在5 %的时间内,对于给定的词项实体对齐方式,将实体替换为另一个随机实体,目的是训练相关的实体模型,解决词项与错误实体对齐的问题;
在15 %的时间内,掩盖掉词项实体对齐方式,目的是训练相关模型,解决实体对齐方式未提取全部现有对齐方式的问题;
在剩余时间内,保持词项实体对齐不变,使得模型将实体信息集成到词项表中,以更好地理解语言.
与BERT 模型相似,该模型还采用掩码语言模型(MLM)以及下一个句子预测作为预训练任务,使模型能够从文本标记中捕获词汇和句法信息.
3 实验设计
3.1 数据集与评价指标
实验数据集采用MSRA 以及搜狐新闻网数据集,其中MSRA 数据集是由微软亚研院发布的专门用来做实体识别的数据集,该数据集16 MB 左右,共计50 000 余条信息,标注质量较高,是传统NER 的首选数据集.搜狐新闻网数据集为手工标注数据集,大小6 MB 左右,共计20 000 余条信息.实验中将上述数据集随机划分为三部分,即训练集占比70 %、验证集占比20 %、测试集占比10 %.在中文命名体识别研究领域,MSRA 以及搜狐新闻网数据集被广泛应用在科学研究中.
基于准确率P、召回率R 以及F1值对模型性能进行全面评估,即式(9).
式(9)中,TP表示正确识别出的命名实体数量,FP表示识别错误的命名实体数量,Fn表示未识别出的命名实体数量.
3.2 实验参数设置
相关实验的软硬件环境如表1.
在对模型进行训练时,基于随机梯度法优化模型,通过Dropout 层减少过拟合情况的发生. 训练迭代次数默认为8 500 次,初始学习率为5e-5,权重惩罚项为权重衰减,预设值为0.05. 惩罚attention 时,softmax 后dropout 概率为0.3,激活函数选择ReLU 函数,隐藏层的Dropout 为0.5,隐藏层单元数为768,初始化范围为0.02,用于生成位置嵌入的参数设置为512,每个隐藏层中的注意力头数为12,隐藏层数为12,segment_ids 类别[0,1],词典中词数为30522. 具体设置如表2 所示.
3.3 实验结果分析
3.3.1 相关对比模型
为验证提出模型的有效性以及鲁棒性,对比以下3 种较经典的命名体识别模型,进而评价改进模型的性能.相关解释分析如下:
(1)HMM:隐马尔可夫模型是关于时序的概率模型,随机生成状态序列,每个状态生成一个观测,而由此产生的随机序列称为观测序列.
(2)BiLSTM-CRF:该模型是序列标注任务中的经典神经网络模型,采用预训练好Word2Vec 向量作为BiLSTM 网络的输入进行特征提取,最后将其特征矩阵输入到CRF 中完成序列标注.
(3)BERT:该模型将文本中的每个字转换为一维向量,作为模型输入;模型输出则是融合全文语义信息后的向量表示.此外,模型输入除了字向量,还包含另外两个部分:
文本向量:该向量的取值在模型训练过程中自动学习,用于刻画文本的全局语义信息,并与单字/词的语义信息相融合.
位置向量:由于出现在文本不同位置的字/词所携带的语义信息存在差异(比如:“我爱你”和“你爱我”),因此,BERT 模型对不同位置的字/词分别附加一个不同的向量以作区分. 最后,BERT 模型将字向量、文本向量和位置向量的加和作为模型输入.
3.3.2 改进方法的单一性能评估
为验证本文方法对特定种类实体的识别效果,基于手工标注的搜狐新闻数据集,实验选取了人名、地名、组织名三类特定实体,与现有方法进行对比,实验结果如表3 ~表5 所示.
表1 相关实验的软硬件环境Tab.1 Hardware and software environment of relevant experiments
表2 模型相关参数设置Tab.2 Model parameters setting
表3 地名识别效果对比Tab.3 Comparison of place name recognition effect
表4 人名识别效果对比Tab.4 Comparison of name recognition effects
由表3 ~表5 可知,与现有的模型相比,改进方法的准确率、召回率以及F1值均有一定程度的提升,说明了融合知识图谱信息对中文命名实体检测的方法是有效的.此外,由于组织类实体容易出现地名以及人名的嵌套,对其识别造成了一定的干扰,识别难度与地名、组织名相比有所提升.观察实验结果可知,组织名的识别效果相较于地名、人名有所下降,符合实验预期结论.
3.3.3 改进方法的综合性能评估
借助混淆矩阵,在两个数据集上分别进行训练,对模型的综合性能进行评估,相关结果如表6 所示.
表5 组织名识别效果对比Tab.5 Comparison of organizational name recognition effects
表6 实验结果对比Tab.6 Comparison of experimental results
由表6 可知,本文提出模型的识别效果领先于HMM、BERT 与BiLSTM-CRF.BERT 模型强调通过强力的Transformer 直接构建语言模型,而本文模型一方面通过融入知识图谱信息加强模型学到的语言知识.另一方面,通过K-Encoder 知识聚合器和知识增强策略,将文本和知识图谱中的异构信息更好的相融合.此外,对比不同模型的数据量(删除MSRA 数据集中的部分数据,再将删除后的数据用于本文模型的训练,此次训练的数据量为原有MSRA 数据集的50 %),可以得出所提出模型的命名体识别效果优于HMM、BILSTM-CRF 与BERT 不是因为数据量.
综上所述,本文提出的模型更具有竞争力,明显优于对比的其他方法.在MSRA 与搜狐新闻网标注数据集的实验对比中取得了最佳的结果,F1值分别达到了95.4 %与93.4 %,验证了该模型在中文命名实体识别中的有效性.
4 结束语
在本文中,将知识图谱信息融入命名体识别模型中,为了更好地融合文本和知识图谱中的异构信息,使用了K-Encoder 知识聚合器和知识增强策略.实验结果表明,与传统的命名体识别模型相比,如HMM、BiLSTM-CRF 等,融合知识图谱信息的命名实体识别方法具有更好的识别效果.未来的研究主要从两方面进行,一方面,将多种结构的知识引入命名体识别模型,从而增强模型的鲁棒性.另一方面,启发式地标注更多真实语料库,以进行更大规模的预训练.