知识图谱作为一种知识表示形式,可以为强人工智能提供决策依据.实体是知识图谱最重要的组成部分,命名实体识别对于知识图谱的构建具有重要意义.军事描述文本存在数据量少、实体密集的特点,本研究以美军驻日本和韩国的军事基地描述文本为实验对象,通过传统的基于规则和统计学习方法和深度学习方法的对比,研究小样本数据集命名实体识别的方法.传统的统计学习方法须要根据不同的数据结构,通过领域专家进行较为细致的特征设计,人工参与度较高,难以满足大数据环境下军事知识图谱自动化构建的需求.目前实体识别的研究在诸多细分领域都有涉及,主要集中在医疗、电商和网络运维[1]等领域.目前命名实体识别的研究仅在有限的领域和有限的实体类型取得较好的效果.针对常用标准数据集提出的模型很多,但在特定领域背景下,这些模型难以直接迁移.究其原因,一是这些特定领域有自己须要识别的实体类型,而不是仅有人名、地名和机构名称等通用类型,须要进行有针对性的研究;二是领域资源具有封闭性,数据的整理和研究的人员相对较少,标记的数据集稀缺;三是不同语言描述的多样性给自然语言理解带来困难.本研究首次在中文小样本数据集上针对性地使用深度学习方法进行命名实体识别研究,探究如何在数据稀缺环境下实现较优命名实体识别模型的构建;针对军事领域实体识别的开源数据集的匮乏,提出了一种针对细分领域的命名实体识别模型建立的研究思路,并可为企业在构建细分领域知识图谱过程中提供参考;创造性地将基于迁移学习的ALBERT模型、泛化能力较强的BiGRU模型和增加约束能力的CRF模型相结合用于命名实体识别,缓解了在数据集较小的情况下,传统识别模型F1值较低的问题.1 实验设计以美国驻韩、日的军事基地自然语言描述文本为例对小样本数据集命名实体识别进行建模研究.通过维基百科、百度百科和中国军网等渠道获取军事基地文本集合T,在T中存在实体集合E,假设en为描述军事基地信息的某个实体,目的是获得的每个en都唯一映射实体类型集合P中的实体类型pn,并根据实体中字符的开始和结束添加BIOES (B-begin,I-inside,O-outside,E-end,S-single)格式信息.首先,根据7:2:1的比例,将数据划分为训练集、验证集和测试集;然后,人工使用Doccano[2]等标注工具,将口语化文本转换为机器可以识别的BIOES标注格式,得到可用于监督学习的标注数据集;最后,构建不同的命名实体识别(named entity recognition,NER)模型,给出军事基地文本集合T,抽取T中包含的实体集合,并预测每个实体的标记类型集合P.具体的细分领域实体识别方法实验流程如图1所示.其中,数据预处理的过程可以采用领域词典比对和逐句人工筛查的形式进行.另外,由于数据集相对规模较小,因此采用了随机打乱段落并复制回数据集的方式,增加数据集的规模,同时最大限度地保证句子序列的完整性.10.13245/j.hust.220218.F001图1细分领域实体识别方法实验流程图2 模型对比和新模型构建2.1 模型对比为验证本研究所提模型的有效性,设计了六组对比实验,模型1为HMM模型[3],HMM模型使用了动态规划中的维特比算法,计算耗时较少,但使用该模型须提出两个假设:一是各输出观察值之间相互独立;二是状态转移过程中当前状态只与前一时刻的标注相关.在命名实体识别的场景中,由于这两个假设并非都能全部满足,因此模型有局限性.模型2为CRF模型[4],CRF模型不用拘泥于HMM模型的假设限制,主要难点在于构建标注函数.模型3为BiLSTM模型[5],在词向量领域,BiLSTM模型与传统循环神经网络模型相比,可以更好地学习和链接到较远处的信息;与传统单向长短期记忆网络(LSTM)模型[6]相比,BiLSTM模型可以从前后和后前两个方向捕获数据的特征,使得序列标注结果更加准确.模型4为BiLSTM-CRF模型[7],BiLSTM模型能充分利用当前词的上下文信息,获取较为拟合的特征信息模型.BiLSTM模型的输出为每个字的标签分值(最可能的分类),但是在序列标注任务中,不能保证预测的标签值一定是符合实际要求的.CRF层在这里的作用是设置一些约束条件,保证标签的序列顺序是符合要求的,增加预测的准确率.模型5为BiGRU-CRF模型[8],将泛化能力较强的BiGRU模型和具有约束能力的CRF模型结合.模型6为ALBERT-BiLSTM-CRF模型[9],通过ALBERT生成词向量,使用BiLSTM-CRF进行特征提取.2.2 ALBERT-BiGRU-CRF模型构建2.2.1 模型结构ALBERT[10]是一个轻量级的基于转换器的双向编码表征(BERT[11])模型,主要用于语言表示领域的自监督学习.在标记数据较少的自然语言处理(natural language processing,NLP)领域中,通常考虑使用迁移学习的方式来改进性能,研究表明:经过预训练的大参数量模型相比以往的传统模型有着更优秀的性能.BERT是一个无监督的NLP预训练模型,刷新了当时非常多的数据集记录,推动了NLP领域的高速发展;文献[12]提出的Xlnet通过使用排序语言模型,解决了BERT模型中MASK操作引入的人为误差,在阅读理解等领域取得更好的性能;文献[13]提出的Roberta提高了训练序列的长度,性能相比Xlnet得到了一定的提升.上述基于BERT的改进模型朝着不断堆数据和参数量的角度对BERT模型进行改进.为解决参数量过大的问题和改善参数过多模型效果反而降低的现象,ALBERT模型被提出,将BERT模型中的内嵌矩阵分解和设计层次间的参数共享,不仅减小参数量,还保持了较好的性能.小样本情况下的命名实体识别问题,一般采用加入远程监督、聚类等方法,本研究针对小样本环境下训练数据较少的问题,将迁移学习引入命名实体识别,以ALBERT为基础进行建模,提出一种基于ALBERT-BiGRU-CRF的命名实体识别模型.根据命名实体的特点,采用ALBERT模型作为模型字符向量的输入模型,然后利用双向门控循环单元(BiGRU)提取实体前向和后向的信息.由于BiGRU忽略了各个标签之间的隐含顺序关系(如B-*必须在I-*之前),因此总模型还须要加入CRF模型来保证输出标签符合实际的标签标记顺序,提高预测的准确率和召回率.该模型主要分为三层,其整体结构如图2所示.10.13245/j.hust.220218.F002图2ALBERT-BiGRU-CRF命名实体识别模型整体结构2.2.2 字符向量表示层(ALBERT层)在自然语言处理任务中,首先须要将离散的数据类型转换为机器可以识别的向量类型,即假设存在一个字符集合C,目的是找到一个合适的多维向量V,使得每一个字符得到唯一对应的向量编码.常见的字符向量表示方法有独热编码、整数编码和连续型编码.独热编码比较适用于须要避免人为引入上下文关联的情况,占用的空间过大,容易导致维度灾难;整数编码无法表达词语之间的关系,同时该编码的可解释性程度较低.基于连续型编码则没有上述问题,将文本通过低维向量来表达,同时字符与字符的语义特征关系也可以在向量空间中表示,因此选择连续型编码的字符向量.连续型编码的字符向量可以采用Word2Vec[14],Glove[15],BERT和ALBERT等方法来获得.BERT作为一种使用迁移学习的模型,采用了创新的预训练方法,通过对大量的语料进行自监督学习,模型的效果较Word2Vec模型和Glove模型好,但BERT模型过于庞大,计算效率不高,故本研究通过ALBERT生成字符向量,生成的向量共768维.与BERT模型相比,ALBERT模型的改进主要有:a. ALBERT采用了矩阵分解的方法降低参数量,其方法是引入一个低维的向量空间E,将原本词汇表向量V和隐含层向量H的直接映射改为间接映射,O表示参数量级,即OV×H⇒OV×E+E×H;b. ALBERT采用了层之间参数共享的方法来减少参数量;c. ALBERT创新性提出句子顺序预测(sentence order prediction,SOP)预训练策略替代下一句预测(next sentence prediction,NSP)策略.原本的NSP策略将一个语料中的前后两个句子的后一个句子按照一定的比例替换,作为自监督学习的训练数据,但NSP训练策略对预训练模型有负面影响,故ALBERT采用SOP策略作为预训练策略,使用一个文档中的两个连续片段作为正样本,将这两个片段交换顺序作为负样本.NSP预训练策略可能会导致最终模型变成判断前后两个句子是否来自相同的主题的文档,而SOP策略则规避了这个问题,让模型对两个同样主题的句子也有了判断顺序的能力.预训练语料库中两个句子原顺序为正例,颠倒的顺序为负例.ALBERT依然保留BERT模型的随机遮盖自监督预训练.数据预处理阶段对预训练语料库中的句子进行首尾标记([CLS]和[SEP])和随机遮盖([MASK]),之后语料库中原有的句子用于验证,这样的好处是模型的训练数据不须要人手工标记,海量的数据可以在没有人工监督的情况下进行标记处理.实验中首先使用大量的中文预训练语料库得到训练好的ALBERT模型,之后将句子输入预训练模型中,即可得到细致化刻画字词特征的词向量.2.2.3 BiGRU层循环神经网络(RNN)可以用于处理NER问题,与传统的卷积神经网络相比,RNN能更好地学习到当前元素和过去元素之间的关系,赋予了网络对内容的记忆功能.LSTM和GRU都是RNN的模型变体,可以有效地处理序列数据.GRU是LSTM的变体,模型的结构更为简单,效果也很好.一个GRU由重置门和更新门两个门控组成.重置门r(t)负责控制前一个状态有多少信息写入到当前候选隐藏状态h˜(t)上,更新门z(t)负责控制前一时刻的状态信息被带入到当前隐藏状态h(t)中的程度.图3为GRU单元结构图,图中:σ为激活函数Sigmoid,用于将函数数值压缩在区间(0,1);tanh为tan的激活函数,用于将函数数值压缩在区间(-1,1).10.13245/j.hust.220218.F003图3GRU单元结构图详细的计算公式为z(t)=σ(W(z)x(t)+U(z)h(t-1));r(t)=σ(W(r)x(t)+U(r)h(t-1));h˜(t)=tanh(r(t)*Uh(t-1)+Wx(t));h(t)=(I-z(t))*h(t-1)+z(t)*h˜(t),式中:W(z)和U(z)为更新门中须要由神经网络反向传播学习的权重矩阵;W(r)和U(r)为重置门中须要由神经网络反向传播学习的权重矩阵;W和U为h˜(t)中须要由神经网络反向传播学习的权重矩阵;I为单位矩阵;*为哈达马积,即矩阵中对应的元素相乘;t为单位时间.在序列标注任务中,关注过去和未来的上下文信息对解决实体识别问题有所帮助.但单向GRU隐藏状态h(t)仅能从过去的序列元素中获取信息,对反方向的信息无法兼顾;因此,采用BiGRU来解决实体识别过程中这一问题,主要思想是将序列从前到后和从后到前两个方向的信息分别由两个隐藏状态神经元进行学习.2.2.4 CRF输出层对于序列标注任务,实体邻域标签具有一定的相关性,这可以作为预测输入句子标签序列的有利约束条件.例如:I-标签不能紧跟着B-标签,B-标签和I-标签之间不能存在O或者S标签等不符合标记规则的情况;因此,本文模型采用CRF层作为输出层,输入的数据为BiGRU输出的隐含层的特征向量h,CRF用于纠正BiGRU层预测的不符合依赖的标记序列.CRF层的计算规则为:首先,输入CRF的数据向量X=h={h1,h2,⋯,hi},通过计算得到每个输入值在每个位置的得分矩阵S(h, y)=∑i=1NRyi,yi+1+∑i=1NKi,yi,式中:N为观察字符序列长度;Ryi,yi+1为标签的转移分数矩阵,即标签字符yi到标签字符yi+1的转移分数;Ki,yi为发射分数矩阵,即第i个观察字符到标签字符yi的发射分数.然后,使用最大似然估计得到似然函数L=∑i=1Nlog(P(yi|hi))+λ2||θ||2,式中:λ为似然函数中参数的系数;θ为须要估计的参数分布.使用Softmax函数计算标准化序列y的可能性P(y|h)=exp[S(h,y)]∑y'∈Yhexp[S(h,y')],式中Y(h)为所有可能的标签序列集合.最后,通过维特比(Viterbi)算法取出最高得分的标签序列,即y*=argmaxy'∈Yh P(y'|h).3 实验与结果分析3.1 数据集和评价方法美国驻日基地数据集包含中文字符1.653 5×104个,其他字符1 142个,总行数为610;美国驻韩基地数据集包含中文字符2.313 9×104个,其他字符858个,总行数为725.命名实体识别(NER)的评价方法一般采用正确率P、召回率R和F1值(F),计算公式为P=TPTP+FP;R=TPTP+FN;F=2PRP+R,式中:TP为正确预测的实体个数;FP为将负例预测为正例的数量;FN为将正例预测为负例的数量.3.2 实验环境与模型参数设置软件环境和机器配置如下:Windows 10系统、Intel 酷睿i5-9400H处理器、16 GiB内存、Python 3.7编程语言、PyTorch1.4.0+cu92深度学习框架.实验采用高斯误差线性单元(GELU)算法作为激活函数,利用随机失活率(Dropout)函数剪枝减少过拟合的影响.主要模型参数设置如下:字符向量长度为128,ALBERT隐藏层的大小为768,ALBERT学习率为1×10-4,随机种子为42,Dropout值为0.2.3.3 实验结果分析实验采用人工构建的军事重要目标实体识别语料库进行训练,多轮训练后在测试集上进行评测.数据集上预定义10种命名实体类型,本文模型的实体识别实验结果如表1所示.10.13245/j.hust.220218.T001表1本文模型的实体识别实验结果实体类型准确率召回率F1值基地名称0.944 41.000 00.971 4基地位置1.000 00.857 10.923 1时间0.987 11.000 00.993 5武器装备1.000 01.000 01.000 0驻扎部队1.000 01.000 01.000 0基地设施0.880 30.970 60.923 2设施编号1.000 01.000 01.000 0设施属性1.000 01.000 01.000 0设施位置0.975 80.666 70.792 2基地评价1.000 01.000 01.000 0从表1可以看出:基地名称、时间、武器装备、驻扎部队、设施编号、设施属性、基地评价的F1值较高.分析数据集发现:这些实体相对其他实体表达形式固定且实体出现的次数较多,而基地位置和设施位置实体相对较长且语法语义较为复杂,如描述三泽基地的位置的文本信息为东京东北644 km本州岛北端的青森县三泽市.3.4 对比分析为了说明ALBERT-BiGRU-CRF模型的优势,本研究在数据集上,分别使用HMM,CRF,BiLSTM,BiLSTM-CRF,BiGRU-CRF,ALBERT-BiLSTM-CRF和本文模型进行对比实验.以准确率、召回率和F1值对模型进行评测对比,各模型实验结果对比如表2所示.10.13245/j.hust.220218.T002表2各模型实验结果对比模型名称准确率召回率F1值HMM0.918 70.868 50.892 9CRF0.956 50.834 20.891 2BiLSTM0.940 40.860 60.898 7BiLSTM-CRF0.954 10.920 90.937 2BiGRU-CRF0.952 50.937 80.945 1ALBERT-BiLSTM-CRF0.974 10.929 80.951 4本文模型0.978 80.949 40.963 9从表2中可知:传统机器学习模型HMM性能较低,说明神经网络模型能更好地对语料库的文本语义特征进行学习;CRF模型的准确率不低,甚至处于相对较高的水准,但须要人为根据数据集来增减其使用的特征模板,降低了实体识别的自动化水平;BiLSTM-CRF模型采用通用的CRF模块,避免了深度学习模型无法确保输出实体标签不符合依赖的问题,又减少了设计特征的人为干预,得到相对较好的效果;BiGRU-CRF模型泛化能力得到一定的提升;ALBERT-BiLSTM-CRF模型作为对比模型,召回率比本文模型低,证明了BiGRU更优的泛化能力;本文模型使用ALBERT对词向量进行精细化编码,可以更好地刻画句子特征,BiGRU模型泛化性强,可以更好地学习到文本的序列特征,同时也采用了通用的CRF模块.实验结果表明:本研究提出的ALBERT-BiGRU-CRF模型在小样本数据集命名实体识别上取得较好的效果,可以在人为干预较少的前提下实现命名实体识别的较优性能.4 结语本研究针对知识图谱自动化构建阶段,军事重要目标实体自动获取的问题,提出了一种基于ALBERT-BiGRU-CRF的小样本数据集命名实体识别方法.实验结果表明:该方法相对于传统机器学习模型和简单神经网络模型有了进一步提升;同时,该模型可以避免须要人工根据数据集定义特征模板的问题.但该模型相对于BiLSTM-CRF和BiGRU-CRF等参数较少的神经网络模型训练时间大大延长,须要占用的硬件系统性能也较为庞大,且没有考虑到命名实体重合等复杂实体识别的问题.
使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,
确定继续浏览么?
复制成功,请在其他浏览器进行阅读
复制地址链接在其他浏览器打开
继续浏览