基于自注意力机制与BiLSTM的短文本匹配模型

胡怡然,夏 芳

(1.浙江农林大学数学与计算机科学学院,浙江 杭州,311300;
2.浙江农林大学经济管理学院,浙江 杭州,311300)

近年来,智能问答系统逐渐普及,在应用过程中涌现出了大量短文本,如何设计高效且通用的短文本匹配模型成为国内外研究者关注的焦点。目前,深度学习方法已被用于人工智能研究的各个领域,包括计算机视觉、自然语言处理、语音识别等。基于深度学习的文本匹配方法可以分为预训练模型和基于“比较-聚合”框架的模型两大类[1]。预训练模型利用自监督学习,在海量的语料库中获得与具体任务无关的初始网络模型,再针对具体下游任务进行微调并修正网络[2]。预训练模型无需大量人工标注样本,可适用于不同的下游任务,灵活性强。但是,预训练模型需要大量的计算资源,难以在实际应用中快速执行。基于“比较-聚合”框架的方法是利用循环神经网络(recurrent neural network,RNN)、卷积神经网络(convolutional neural network,CNN)等对句子进行编码,将编码后的特征进行交互和聚合,生成统一的句子表示,通过句子相似性进行预测[3]。这种方法需要的计算资源少,更满足实际应用需求。然而,基于“比较-聚合”框架的模型的关注点在于寻找更好的交互方式,以获取更精确的语义匹配特征,较少关注输入文本自身信息的提取,通常只采用单一形式的特征表示。此外,由于缺乏全面的预训练特征表示,特别是缺乏对一些专业特殊词汇的预训练表示,导致基于“比较-聚合”框架的模型对输入文本自身特征表示较差。

针对以上问题,本文提出一种基于自注意力(self-attention)与双向长短期记忆网络(bidirectional long short-term memory network,BiLSTM)的短文本匹配模型,简称为SABiLSTM。该模型的特点在于,利用自注意力机制和循环神经网络提取句子本身的关键特征以及上下文特征,并利用残差连接来丰富特征表示,从多角度进行特征提取,以提升输入文本语义信息的表示能力;
同时,通过构造双向注意力网络学习交叉特征,将自注意力编码与双向注意力编码进行聚合后来预测文本匹配度。本文最后利用两个公开数据集Quora和MRPC来验证该模型的性能,并与已知同类较优模型进行对比分析。

精准的短文本匹配可以更好地服务于智能问答系统。本节简要回顾现有的基于“比较-聚合”框架的短文本匹配方法。

孪生网络是“比较-聚合”框架中最为常用的结构。孪生网络模型由两个相同结构的神经网络构成并利用距离公式进行相似度计算[4]。这类模型利用权重共享的方法有效减少模型参数量,模型简单且训练方便,但是没有考虑两个句子之间的交互,容易造成重要信息的丢失。为此,后续研究者在运用孪生网络时还考虑了句子交互,提出一系列“比较-聚合”框架下的交互模型[5]。这些模型通常利用RNN或CNN进行句子编码[6-7],并对两个句子进行特征交互表示,最后聚合成一个向量进行相似度预测,如Wang等[8]提出的BiMPM模型利用BiLSTM进行句子表示,并设计了多种匹配交互方式。

近些年来,研究者将注意力机制融入到“比较-聚合”框架中,最常见的应用形式是使用注意力进行句子间的交互。例如,Parikh等[9]提出的DecAtt模型利用可分解的注意力机制使输入得到充分交互;
Chen等[10]提出的经典文本匹配模型ESIM以及Yang等[11]提出的改进模型RE2均使用双向注意力机制来获取两个句子之间的高阶交互信息。除了选择不同的注意力机制外,将注意力和其他网络相结合也是常见的交互方式。例如,Zhang等[12]提出了DRr-Net模型,通过对人类阅读行为的理解,使用结合GRU的注意力机制反复理解重要信息;
Tay等[13]提出了注意力池化方式并融合多种注意力机制进行建模。

在基于注意力机制的文本匹配方法中,模型更关注句子间的信息交互,对于句子本身的信息表示考虑得较少,故本文利用自注意力机制、BiLSTM两种方式进行特征表示,并结合残差连接,对句子本身信息进行多角度挖掘,以提高模型的匹配能力。

本文构建基于自注意力与BiLSTM的短文本匹配模型SABiLSTM,其架构如图1所示。

图1 SABiLSTM模型架构

2.1 嵌入层

在嵌入层,首先使用预先训练好的词嵌入模型得到两个句子的向量表示,考虑到可能出现词典中不存在的词语,模型引入了字符级嵌入,通过对字符进行编码,可以更好地理解词语的语义信息,提高模型的准确率。然后将词嵌入与字符嵌入的表示结果进行拼接,得到本层最终的输出aemb=(a1,a2,…,ala)和bemb=(b1,b2,…,blb),其中aemb∈la×k,bemb∈lb×k,la、lb为输入文本长度,k为嵌入向量维度。

2.2 编码层

编码层由BiLSTM和多头自注意力两部分构成,分别从不同角度提取文本的语义特征。利用BiLSTM可以提取文本序列和上下文信息;
利用多头自注意力学习句子的内部依赖,捕捉句子中更重要的特征。

模型使用孪生BiLSTM对两个输入向量进行编码,孪生网络结构共享权重,可以有效减少模型参数。由于BiLSTM包含两个LSTM,将这两个LSTM的每个时间步长产生的隐藏状态连接起来表示该时间步长及其上下文特征,如式(1)和式(2)所示。

abilstm,i=BiLSTM(aemb,i),∀i∈[1,…,la]

(1)

bbilstm,j=BiLSTM(bemb,j),∀j∈[1,…,lb]

(2)

式中:abilstm,i∈2d是第i个时刻BiLSTM对编码层输入aemb生成的隐藏状态,其中d为BiLSTM的隐藏单元数;
bbilstm,j∈2d是第j个时刻BiLSTM对输入bemb生成的隐藏状态。

除了BiLSTM学习到的序列语义特征,模型进一步利用自注意力机制对两个短文本进行编码,加强对文本自身关键特征的注意力,并作为独立的语义特征加入到特征表示中,以提高特征的表示能力,从而筛选出对预测结果更重要的信息。自注意力计算如式(3)所示。

(3)

为了缓解信息丢失问题,模型引入了残差连接操作,将两种编码方式得到的输出向量分别与编码层的输入进行拼接,使得模型可以给交互层提供更丰富的特征。通过残差连接后,得到编码层的最终编码特征,如式(4)和式(5)所示。

(4)

(5)

2.3 交互层

为了能够充分挖掘句子之间的交互信息,在模型中设计了交互层,在考虑与另一个句子的交互效果的情况下,对每个句子进行相应的表示。模型使用注意力机制进行两个输入的对齐操作。首先获取每个时刻的注意力权重,计算句子中的每个词和另一个句子中各个词之间的相似度,得到注意力权重eij,如式(6)所示。利用该相似度矩阵,结合输入,生成彼此相似性加权后的句子表示,如式(7)和式(8)所示。

(6)

(7)

(8)

为了加强特征的表示能力,将交互层的输入特征和交互后的句子表示进行元素减法和元素乘法,这两种操作可以更好地学习到句子的不同和相同之处。最后将该注意力层的输入、输出和计算之后的结果进行拼接操作,得到句子新的特征表示,如式(9)和式(10)所示。

(9)

(10)

式中:va和vb是交互层最终的特征表示结果;
“-”表示元素减法;
“⊙”表示元素乘法。

2.4 融合预测层

将在交互层得到的两个句子的特征表示和在自注意力机制中得到的句子表示再次输入孪生BiLSTM中,既可以提取高阶特征,还可以有效降低参数规模以及进行维度压缩,从而更好地获取全局特征,随后对其进行池化操作。池化层的作用是将特征表示为一个长度固定的向量,同时起到降维的作用。

由于求和操作对序列长度敏感,单纯使用平均池化操作可能会降低预测结果精度,而最大池化只提取特征响应最大、最强烈的部分,会失去部分语义信息,因此,本文模型同时采用平均池化和最大池化两种操作,并将两个句子所有池化后的向量拼接起来,形成最终固定长度的向量,如式(11)和式(12)所示。

(11)

(12)

最后,采用元素减法和元素乘法再次进行交互,获得句子的相同与不同之处,并将结果进行拼接,得到最终的特征表示,用于相似度预测,如式(13)所示。

Output=[oa;ob;oa-ob;oa⊙ob]

(13)

将拼接后的向量送入多层感知机中,使用Sigmoid函数进行特征分类。Sigmoid函数对全连接层的输出进行归一化操作,映射到(0,1)区间内,得到两个输入短文本是否相似的最终预测结果。

3.1 数据集

本文利用两个公开的英文数据集Quora和MRPC对SABiLSTM模型的短文本匹配效果进行评估。前者来自于Quora社区问答网站的Quora Question Pair数据集,有301480条数据样本。后者来自于微软公司提供的MSR paraphrase数据集,有5801条数据样本。由于MRPC没有提供对应的验证集,因此,对该数据集进行再次划分,将训练集、验证集、测试集的比例划分为6∶2∶2。数据集信息如表1所示。

表1 数据集信息

3.2 实验设置

实验环境为Python3.6和TensorFlow框架。词嵌入采用Glove预训练好的300维词向量。隐藏层的激活函数为ReLU,优化器采用Adam,其余参数如表2所示。采用文本匹配准确率作为模型性能评价指标。

表2 实验参数

3.3 对比模型

将SABiLSTM模型与其他6种“比较-聚合”框架中常见的模型进行比较。

(1)MaLSTM模型[4]:首次将孪生LSTM应用于文本匹配,模型保持两个LSTM参数一致,并提出一种新的基于曼哈顿距离的度量方式用于计算文本相似度。

(2)Siamese BiLSTM模型[14]:基于孪生LSTM进行改进,将LSTM替换为BiLSTM,双向捕获上下文特征,使用余弦距离比较相似度。

(3)DecAtt模型[9]:首次将两个输入分解成词,使用注意力按词进行软对齐,通过词表示和注意力的聚合得到最终特征。

(4)BiMPM模型[8]:采用双向多角度匹配,定义一个新的基于余弦相似度的计算方式,并使用多种策略进行匹配。

(5)ESIM模型[10]:基于LSTM和注意力的推理模型,使用BiLSTM编码,利用双向注意力进行交互匹配,同时采用两种池化策略。

(6)RE2模型[11]:对ESIM模型进行改进,利用两次残差连接来丰富文本特征,采用循环块结构,多次进行特征提取和融合。

3.4 对比实验结果分析

针对Quora数据集和再次划分后的MRPC数据集,将本文模型SABiLSTM与对比模型的匹配效果进行对比实验,结果如表3所示。

表3 不同模型的短文本匹配准确率(单位:%)

从这两个数据集的匹配效果来看,Siamese BiLSTM模型要优于MaLSTM模型,由此可知,在LSTM的基础上加入一个反向的LSTM能更好地抓取上下文信息,从而有效提升文本匹配准确率。将DecAtt模型与MaLSTM等模型对比可见,仅仅使用注意力机制还不足以改善文本匹配效果,而使用LSTM、BiLSTM等编码方式对词嵌入后的文本进行再编码可以有效提取出文本特征信息。与MaLSTM模型相比,ESIM模型和BiMPM模型的文本匹配准确率有了显著提高,说明通过考虑两个句子之间的相互影响可以获取更为关键的信息。RE2模型与ESIM模型对比,前者在两个数据集上的准确率均有所提升,说明残差连接有助于提取更为丰富的文本特征,为匹配提供更加全面的信息。

将本文模型与DecAtt、ESIM、RE2等模型进行比较后可以看出,加入自注意力机制后,通过提高重要特征的权重,可以减少无用信息的影响,更好地保留文本关键信息,优化了模型性能。

3.5 消融实验结果分析

在Quora、MRPC数据集上进行本文模型的消融实验。分别将模型中的字符嵌入模块、自注意力模块、残差连接模块消去后进行短文本匹配,并与完整的SABiLSTM模型进行对比,结果如表4所示。

表4 SABiLSTM模型的消融实验结果

由表4可知,上述三个模块对于模型性能都有不同程度的贡献。对于Quora数据集,使用字符嵌入和自注意力编码都使得模型的匹配准确率提升了约1.4个百分点。对于MRPC数据集,字符嵌入模块使得模型的匹配准确率提升了0.73个百分点,自注意力模块使得模型的匹配准确率提升了0.88个百分点。因为字符嵌入有效弥补了部分预训练词嵌入模型中的词缺失问题,而自注意力编码的加入提供了额外的编码特征,提高了模型对句子本身的关注能力。

特别值得一提的是,加入残差连接模块后,模型的匹配准确率在Quora数据集上提升了4.78个百分点,在MRPC数据集上提升了4.95个百分点。残差连接将上一层网络中的信息直接传递到后续网络中,有效保留了原始信息,既增加了可利用的信息,又能防止梯度消失,因而提高了模型的匹配准确率。

总而言之,字符嵌入、自注意力、残差连接都能改善SABiLSTM模型的性能,是模型中不可或缺的一部分。

3.6 参数分析

本文对多头自注意力的头数量(head)设置进行了实验探讨。多头是指对相同输入多次求解注意力,得到不同的注意力权重,从而得到最终的注意力分值。下面将head设为1~6,实验结果如图2所示。

图2 自注意力头数对文本匹配精度的影响

相较于单头自注意力(head=1),多头注意力可以考虑到更多层面的信息,原则上说应该能提高文本匹配效果。然而由图2可知,简单增加自注意力头数量并不能保证提高本文模型的匹配精度,这是因为短文本语义稀疏,所能提供的信息较少,所以增加头数量不能给模型提供更多的视角,反而导致多头注意力生成的多个权重矩阵相似,最终影响自注意力结果。

寻找最合适的隐藏节点数可以有效提高模型中BiLSTM模块的编码能力,故本文还对编码层以及融合预测层的BiLSTM模块的隐藏节点数进行了寻优。将隐藏节点数分别设为50、100、200、300、400、500、600,实验结果如图3所示。

(a)编码层

根据实验结果分析可知,当编码层和融合预测层的BiLSTM模块的隐藏节点数低于300时,模型的特征提取能力下降,导致其可利用的特征数量减少;
而当BiLSTM隐藏节点数高于300时,由于模型的参数量大大增加,过拟合问题严重,干扰了模型的正常训练。综上,在BiLSTM隐藏单元节点数为300时,本文模型能获得最好的匹配性能。

本文针对目前短文本匹配方法对句子重要特征的提取考虑不足的问题,提出了一种结合自注意力机制和循环神经网络的匹配模型。该模型不仅可以捕捉上下文语义依赖关系,还能捕捉两个句子之间的相互依赖关系。此外,利用自注意力机制选择文本中的重要特征,提升了关键信息的表达能力。在Quora和MRPC两个数据集上的实验结果表明,相较于对比模型中性能最好的RE2,本文模型的文本匹配准确率分别提升了1.81和1.41个百分点,即其在大样本数据集和小样本数据集上都取得了较好的效果。下一阶段研究拟将该模型应用于实际的智能问答系统中,将用户输入问题与数据库中问题进行匹配,通过寻找最相似问题来提供最佳答案。

猜你喜欢残差短文注意力基于双向GRU与残差拟合的车辆跟驰建模网络安全与数据管理(2022年3期)2022-05-23让注意力“飞”回来小雪花·成长指南(2022年1期)2022-04-09基于残差学习的自适应无人机目标跟踪算法北京航空航天大学学报(2020年10期)2020-11-14基于递归残差网络的图像超分辨率重建自动化学报(2019年6期)2019-07-23KEYS时代英语·高二(2018年7期)2018-12-03Keys时代英语·高二(2018年3期)2018-06-06“扬眼”APP:让注意力“变现”传媒评论(2017年3期)2017-06-13A Beautiful Way Of Looking At Things第二课堂(课外活动版)(2016年2期)2016-10-21平稳自相关过程的残差累积和控制图河南科技(2015年8期)2015-03-11短文改错阅读与作文(英语高中版)(2013年12期)2013-12-11

推荐访问:匹配 注意力 模型