APP下载

基于多头自注意力机制的实体识别研究

2022-09-13吴云志余克健

蚌埠学院学报 2022年5期
关键词:命名注意力标签

陈 伟,吴云志,2*,涂 凌,刘 航,余克健,乐 毅,2

(1.安徽农业大学 信息与计算机学院,安徽 合肥 230036;2.安徽省北斗精准农业信息工程实验室,安徽 合肥 230036;3.安徽大学 物质科学与信息技术研究院,安徽 合肥 230601)

随着互联网技术的日益进步,信息的海量增长也愈来愈快,由于绝大部分的数据格式都为非结构化数据,加上数据自身结构无序的原因导致传统的数据挖掘工具无法对其进行有效的信息挖掘,因此从规模庞大的信息中准确并且高效地找到所需要的内容,已经成为了文本挖掘领域所需要解决的关键性问题[1],信息抽取便在这个大背景下应运而生,随着近年来信息抽取的兴起,命名实体识别研究问题进一步得到广泛的关注和深入研究。命名实体识别是信息抽取里重要的一部分[2-3]。

本文是从人民日报中识别实体并抽取实体之间的语义关系,主要基于统计机器学习的方法。命名实体识别可自动化地提取出动作节点,组织机构,人物,变迁等具有语义特征的实体,有助于知识图谱的构建,为人工智能领域提供更高效、便捷的实体抽取方法。

1 研究方法

实体抽取与关系抽取是典型的文本序列标注问题,是自然语言处理领域中的重要组成部分之一[4-5],在情感分析的方面也应用过,一共有四大类方法。一是基于规则和词典的方法[6],此类方法主要需要语言学家来构建规则的模板,将关键字、标点符号等作为特征选取,以此作为系统,但同时依靠建设知识库和词典,知识库和词典也可以叫做语料库,所需要的成本过高,并且构建系统的时间周期也较长[7]。二是基于统计学和机器学习的预测方法,其中最具代表性的预测方法有:隐马尔可夫模型(Hidden Markov Model)、条件随机场(Conditional Random Field)[8],这些模型各有其优缺点,首先隐马尔科夫模型通过已观测序列来预测未观察的序列,在训练数据和字的时候,实体被识别的速度较快。条件随机场具有特征设计灵活、全局最优的标注的优点,但收敛速度较慢、训练数据的时间过长,CRF中运用Viterbi算法的动态规划寻找最短路径,求解命名实体类别序列,从而达到较高的效率,此方法对语料库的依赖比较大[9]。三是混合方法,自然语言处理中的任何一种方法都有一定的局限性,基于统计的方法会使搜索空间大,所以必须要先对知识进行筛选和数据处理,几乎没有单纯用统计模型的命名实体识别的系统,大多数情况都是用混合方法,例如将规则的方法和传统的机器学习的方法相互结合来进行实体识别,或者统计学的方法之间内部的融合[8],还有将人工整理的知识与机器学习的方法结合。四是基于神经网络的方法,近年来有许多学者将神经网络的方法应用在各个领域,最广泛的应用是在图像处理方面,同时神经网络模型也可以处理许多NLP的任务,并且有明显的效果,主要的模型有CNN、RNN、CNN-CRF、RNN-CRF、LSTM-CRF[10],神经网络是一种数据驱动的方法,并不依靠特征提取等框架,训练数据量大,大约百万数据作为标记样本,模型的网络结构复杂,对参数设置的依赖大。从整个命名实体识别的过程来看,有着数量大,识别准确率低,影响分词效果等问题,但实体识别是自然语言处理中必不可少的重要组成部分,为构建知识图谱奠定了基础[11-13]。

2 模型介绍

2.1 HMM

隐马尔可夫模型是统计学的方法,它是由一个隐变量或者离散的隐状态,生成了一种不可观测的状态序列,并且都是随机的,将命名实体识别任务转化为序列标注的问题[14]。在使用HMM解决命名实体识别这种序列标注问题的时候,我们能用眼看到的是由字组成的序列,实体和非实体中输入的词或者字就是观测序列,而每个字对应的标注是我们观察不到的,也就是状态序列,然后通过训练生成可观测的预测随机序列,这样与原标签对比来判断其准确率。如今这样的统计模型已经广泛应用在自然语言处理的任务中,比如人名、地名、组织机构的实体识别。命名实体识别从根本上来说可以作为一种序列标注问题,需要词和句子提供更多的特征,包括上下文的信息,前后的时间信息关系,但HMM观测的句子中的每个字都是具有独立意义的单个个体,所以存在缺陷。

2.2 BiLSTM模型

BiLSTM(Bi-directional Long-Short Term Memory)是双向长短期记忆网络,是在LSTM基础上改进的。LSTM是在解决循环神经网络(RNN)问题时提出的模型,此问题是RNN模型网络结构只能短期记忆,而且还存在梯度爆炸和梯度消失的问题[15],若时间间隔过长,则很难建成长距离的依赖关系,所以LSTM由输入门、遗忘门、输出门三个门来控制信息的传递[16]。BiLSTM 网络模型包括前向传播和后向传播两个过程。将训练序列输入到前向LSTM网络模型通过前向传播计算得到前向特征信息,同样地,输入后向 LSTM网络模型通过后向传播计算得到后向特征信息,再将前向特征信息与后向特征信息拼接获得最终的隐藏状态,能够兼顾上下文的字和句子信息,方便提取特征,这样就汇总了前向和后向双向语义特征。RNN基本结构由输入层、隐藏层和输出层组成(见图1)。

图1 基本的RNN结构

LSTM的基本结构如图2所示。

图2 LSTM内部单元结构

前文说到增加序列的长度在RNN里,会导致梯度爆炸或者梯度消失[17],所以利用长短时记忆(LSTM)在RNN基础上解决了这个问题。

2.3 CRF模型

条件随机场(CRF)是一种直接建模条件概率的无向图模型,也叫逻辑回归层[16],它作用于整个句子中,进行语句和序列的标注,条件随机场常会引入一个自定义的特征函数,不仅能够表达当前观测和前后多个状态之间的相互依赖,还能够表示当前的观测和前后多个状态之间的相互复杂依赖,可以有效地克服HMM面临的问题。为了设计和建立一个条件随机场模型,我们首先需要明确地定义一个特征函数集,该特征函数集内的每一个特征函数都以提取标注的序列作为输入,提取出的所有特征作为输出[6]。CRF没有标签偏差的问题,并集合了隐马尔可夫模型和最大熵的优势。在计算节点值的同时CRF模型还可以输出节点值所对应的条件概率。

2.4 BiLSTM+CRF模型

BiLSTM+CRF是在BiLSTM基础上增加CRF层,BiLSTM是对标注过后的单词进行独立的分类,并不能直接用上下文的信息,但BiLSTM网络模型可以解决人工提取特征的繁琐和复杂性问题,在命名实体识别任务中,CRF能够衡量标签之间的关系,比如B-LOC类标注(表示某实体的开头)后面不会继续接一个B-LOC类标注,使得序列化标注更精确,CRF的优点就是建立一个新的模型在隐藏的状态下,有着学习状态序列特征的优势,也同时能增加一定的约束条件,但它有个劣势是序列的特征需要人工来慢慢完成提取[18,19]。所以我们将BiLSTM与CRF网络模型结合起来(CRF层放在BiLSTM后),以获得两者的优点。

2.5 改进模型介绍

本节将提出多头自注意力机制(Multi-head Self-attention)与CRF结合的改进模型,并开展实体抽取实验,验证方法的有效性。本实体抽取方法的研究架构一共分为四大环节,分别是数据处理,模型设计,模型训练,模型测试与实验分析。其中数据处理是为了建立语料库,在模型设计中分为嵌入层预训练模型,Multi-head Self-attention层,然后将CRF层连接起来。在训练好的模型中对汉字进行顺序标记,并对得到的最优状态标记进行解码以识别实体。此外在Multi-head Self-attention中也用到了Transformer结构[20]。实验是先在公开数据集上进行模型训练与测试,然后对五种不同的命名实体识别模型之间的实验结果进行对比,从各项评价指标中分析并验证提出算法模型的有效性,最后应用在水下机器人任务文档的实体抽取实验中,并对结果进行分析,如图3为改进的模型结构图。模型分为嵌入层,多头自注意力机制层和CRF层,首先是嵌入层为达到计算机能获取自然语言蕴含信息的目的,需要将字符串表示形式的自然语言转换成计算机易于处理的数值型数据,将离散字符序列的句子转换为低维的分布式表示,这有利于学习丰富的语义信息,提高模型的性能,可以对自然语言进行建模和特征学习,它将词汇表中的单词或短语映射成计算机能够识别且计算的向量。然后第二层是基于多头自注意力机制层进行特征加权,该方法能让模型减少了对上下文中相对距离过多的约束,计算词的重要性,实现了全局上下文信息的获取能力,但会使模型对绝对位置不敏感。然而在语言任务中,文本的语句顺序是至关重要的,绝对位置信息的缺失会使模型失去对句子顺序的拟合能力,进而影响模型效果。因此,本文采用位置编码的方式,对字的顺序进行标记,使得模型能学习到语言顺序信息。最后是CRF层,其作用是输出最大的标签序列,根据相邻标签之间的关系,可以得到一个最优的预测序列,达到精确的实体识别目的[21]。

图3 改进模型的结构图

3 实验结果与分析

将本文提出的多头自注意力机制与CRF相结合的实体识别模型与四种典型的实体识别模型HMM、CRF、BiLSTM、BILSTM+CRF在公开数据集上进行实验对比分析,以验证本文模型的性能,并在水下机器人任务作业文档中开展实体抽取实验,从多个评价指标角度分析本文模型的表现和效果,验证本文多头自注意力机制与CRF相结合模型的有效性。

3.1 实验说明与数据语料标注

人民日报语料库数据集。实验数据集为国内公开的2014年人民日报语料库数据集,数据包含了 3 种实体类型,分别是人名、组织机构和地名[19]。其中训练集中共包含1000043个字,测试集包括223832个字,验证集包含112187个字,实验主要对人名、地名以及组织机构进行识别评测。实验分别用HMM,BiLSTM,BiLSTM+CRF,Multi-head Self-attention+CRF四个模型在数据集上开展命名实体识别,图4为实验流程图。

图4 实验流程图

本文采用BIO标注法进行位置信息的标注,B(Begin)表示实体的开头,I(Intermediate)表示实体的中间,O(Other)表示非实体。在实验中用BIO标注法进行标注的字的名称和含义如表1所示,以人民日报语料库为例,语料数据标记后,将语料数据集进行分割,其中80%的数据集作为训练集用于模型实验的训练,并单独保存在训练集(train data)文件中。剩下的数据集分别作为10%测试集和10%验证集,用于模型实验的测试,单独保存在测试集(test data)文件和验证集(dev data)文件中,形成完整的实验1语料库。

表1 命名实体识别标注方法

水下机器人任务文档数据。水下机器人任务文档数据采用的数据集是中国科学院委托项目协同作业基本流程试验(软件和协议部分)文档。

首先,将文档里关于水下机器人任务作业的动作节点和所属主体有关的语句提取出来,放在一个新的文档里,也就是数据获取和数据筛选,共有8000多字和字符,将这些数据作为训练集;接着;将动作节点和所属主体单独放在另一个文档当作测试集,共有860个字和字符;然后是数据处理即数据序列标注等预处理,模式是BIO标注法,B代表实体首字,I代表实体非首字,O代表非实体。因此,B-ACT、I-ACT分别表示动作节点首字、动作节点非首字,B-SUB、I-SUB分别表示所属主体首字、所属主体非首字,B-STA,I-STA分别代表的是所属阶段首字,所属阶段非首字,O代表非命名实体,形成完整的实验2语料库。

3.2 实验环境和参数设置

本实验使用Pytorch1.6的深度学习框架,具体训练环境配置如表2所示。

表2 环境配置

3.3 参数设置

batch_size是网络训练一次读入数据的大小,lr表示权重迭代的步长,emb_size表示字向量的维度,hidden_size表示lstm隐藏层的大小,epoch指迭代次数,为了避免过拟合问题,用dropout参数对模型中的神经元按一定比例让其停止工作,从而提高网络的泛化能力,表3中的数据是根据众多论文中的人民日报有关的命名实体实验的参数设置。

表3 参数设置

3.4 评价指标

为了准确验证实体抽取模型的实验结果,并对模型的各项性能进行全面分析,本实验采用了在机器学习中常用的三个评价指标对实验结果进行评估:准确率 P(Precision)、F-值及召回率 R(Recall)。

评估机器学习模型在人民日报实体抽取中的性能。将真实类别标签与计算机预测类别标签相互组合,分别记为真正例(TP)、假正例(FP)、真反例(TN)与假反例(FN),则计算公式:

P=TP/(TP+FP)×100%,R=TP/(TP+FN)×100%,F1=2RP/(P+R)

total代表的是各类标签的综合评价指标。

3.5 实验结果与分析

由表4至表9可知,每种模型统计的每一类预测标签数目是一样的。

表4 HMM模型实验各项评价指标结果

表5 BiLSTM模型实验各项评价指标结果

表6 CRF模型实验各项评价指标结果

表7 BiLSTM+CRF模型实验各项评价指标结果

表8 Multi-head Self-attention+CRF 模型实验各项评价指标结果

表9 统计模型实验各项评价指标结果

首先比较BiLSTM+CRF和BiLSTM模型,BiLSTM+CRF的F1值比BiLSTM高2.9%,主要原因在于CRF 模块能够充分运用相邻的两个标签的关联关系,像“B-PER I-ORG”这样的标签序列无法有效地输出,使得序列化标注更精确,除此之外,这个模块能容纳任意的上下文信息,算出整句话的概率分布,从而可以获得全局最优的标签序列,进而能够改善实体识别性能,改进的模型用时最短,减少了一定的时间成本。

实验结果表明Multi-head Self-attention+CRF模型在2014年人民日报文档的实体识别中效果最好,各项评价指标也是最高的。Multi-head Self-attention+CRF模型在PER类标签上的F1值比HMM高21.08%,比BiLSTM高11.92%,比BiLSTM+CRF高8.05%;在ORG类标签上的F1值比HMM高41.38%,比BiLSTM高20.22%,比BiLSTM+CRF高14.48%;在LOC类标签上的F1值比HMM高30.62%,比BiLSTM高15.67%,比BILSTM+CRF高11.16%。结果显示Multi-head Self-attention+CRF模型效果最好,其次模型在准确率P值上总体预测标签比其他模型分别高9.08%,4.57%,2.75%,在召回率R值上总体预测标签比其他模型分别高18.52%,6.77%,3.76%,在F1值上总体预测标签比其他模型分别高16.05%,6.5%,3.6%,从各项指标上看效果都比其他模型优越,对于模型特征提取能力,优势主要是基于多头自注意力机制进行特征抽取的模型明显比基于BiLSTM的模型效果好,这表明基于多头自注意力机制的Transformer 相对于基于双向长短期记忆网络能更有效获取人民日报上下文中命名实体的关键潜在特征,与其他方法相比可以忽略相对距离计算词的权重,能更好地获取上下文信息。其通过拼接多个自注意力机制,进一步提高了上下文信息的获取能力,首先将原本的Q、K、V通过线性变换得到多组不同的结果,将最后得到的结果连接到一起,通过线性变换调整输出维度,可以同时计算多组注意力机制,加快计算速度方便并行计算,获取更充分的信息;同时对循环神经网络及其变体而言,参数量更少,训练速度更快。

结合CRF的优势,进一步提高了中文实体识别的效果,有更强的信息利用能力。基于多头自注意力机制与CRF的结合模型整体在命名实体识别任务表现上更优异,验证了本文使用Transformer的多头自注意力机制作为特征提取器的合理性(见表10)。

将提出的多头自注意力机制与CRF结合模型应用在水下机器人作业文档中,使用新型[实体开始位置,实体非开始位置,非实体]的三元标签,实验结果表明Multi-head Self-attention+CRF模型在水下机器人任务作业文档这样的特定领域中的实体识别效果最好,各项评价指标也是最高的,F1值达到了98.79%,比CRF,HMM,BiLSTM,BiLSTM+CRF分别提高了0.93%,18.74%,15.41%,13.08%。这为水下机器人作业领域的命名实体识别任务开展奠定了坚实的基础,也为后面知识抽取和构建知识图谱提供了有效的方法。

4 结论

基于多头自注意力机制提出了一种多头自注意力机制与CRF结合模型,首先对实体抽取任务过程进行综合阐述,然后对提出的模型详细介绍,分别阐述了数据处理标注、模型中的嵌入层、多头自注意力层和CRF层的基本原理,并介绍了每个模块之间的联系。在NER任务中,实体的识别很大程度上依赖于上下文信息,多头自注意力机制减少了对上下文中相对距离过多的约束,计算词的重要性,通过拼接多个自注意力机制,进一步提高了上下文和全局信息的获取能力,且模型的泛化能力得以提高。然后与传统的命名实体模型进行对比分析,在公开的2014年人民日报语料库数据集上进行实验,结果表明改进的模型在公开数据集上取得了有效的识别效果,最后应用在水下机器人任务作业文档中,验证了此方法的有效性。

猜你喜欢

命名注意力标签
让注意力“飞”回来
命名——助力有机化学的学习
无惧标签 Alfa Romeo Giulia 200HP
不害怕撕掉标签的人,都活出了真正的漂亮
有一种男人以“暖”命名
为一条河命名——在白河源
“扬眼”APP:让注意力“变现”
A Beautiful Way Of Looking At Things
标签化伤害了谁
科学家的标签