赞
踩
文章原名:ABCNN: Attention-Based Convolutional Neural Network for Modeling Sentence Pairs
作者:Wenpeng Yin, Hinrich SchÜtze, BingXiang, Bowen Zhou
单位:Center for Information and Language Processing, LMU Munich; IBM Watson
译者:吴佳炜
链接:
https://www.transacl.org/ojs/index.php/tacl/article/view/831/194
1
导读
这篇文章来自于慕尼黑大学信息语言处理中心,第一作者为Wenpeng Yin,文章发表于期刊TACL。
这篇文章介绍的是利用带注意力机制的卷积神经网络进行句子对建模(示例如下表所示)。句子对建模是自然语言处理中的一个经典问题,在诸如答案选择(Answer Selection, AS)、 释义鉴定(ParaphraseIdentification, PI)、文本继承(Textual Entailment, TE)等场景中都有应用。之前的相关工作多局限于:(1) 设计针对特定场景的特定系统;(2) 对每个句子分开考虑,很少考虑句子之间的影响;(3) 依赖人工设计的繁杂特征。因此,这篇文章提出了带注意力机制的卷积神经网络进行句子建模。相比之前的工作,该模型主要贡献有:(1) 可以应对多种场景的句子对建模问题,泛化能力强;(2) 利用注意力机制,在建模时考虑句子之间的影响;(3) 在答案选择、释义鉴定、文本继承三个场景中都达到了目前最好的效果。
2
模型
这篇文章提出的模型ABCNN(Attention-BasedCNN)的基础是BCNN(Bi-CNN)模型。BCNN的模型架构如下图所示:
BCNN主要由四个部分构成:输入层(Inputlayer)、卷积层(Convolution layer)、平均池化层(Average pooling layer) 和输出层(Output layer)。整体结构较为清晰,和之前用 CNN 对句子建模的模型较为类似,值得注意的是,卷积层采用了宽卷积(wideconvolution)的方式来保证在句子长度不一致时,有效捕捉完整的句子信息。
在BCNN模型的基础上,文章作者提出了三种加入注意力机制的ABCNN结构,分别叙述如下:
1. ABCNN-1
如上图所示,ABCNN-1的注意力机制是加在卷积层之前的。对于任意第i个句子的向量表示 Fi,r,其注意力权值矩阵为:
函数match-score的定义为1/(1+|x-y|)。
因此,句子的注意力特征值Fi,a 可按如下公式计算:
其中,W0和W1均为学习优化的的参数矩阵。
将Fi,r和Fi,a进行叠加后,输入到卷积层中,其余步骤和BCNN相同。
2. ABCNN-2
如上图所示,ABCNN-2的注意力机制是加在平均池化层前的,即对卷积层的输出进行注意力操作。对于注意力权值矩阵,其计算方式是对于每个位置:
则句子的注意力特征值为:
其余部分的注意力操作和 ABCNN-1类似,剩余层操作和BCNN相同。
3. ABCNN-3
如上图所示,ABCNN-3的注意力机制即是 ABCNN-1和 ABCNN-2两个模型的叠加。
3
实验
本文提出的模型分别在三个任务:答案选择(AS)、 释义鉴定(PI)和文本继承(TE)上进行了测试。
1. 答案选择(AS)
对于答案选择任务,本文采用了WikiQA 数据集。任务为对于一指定的问题,对候选回答进行排序。评测指标选用平均正确率均值(MAP)和平均倒数排名(MRR),测试结果如下表所示:
2. 释义鉴定(PI)
对于释义鉴定任务,选用MSRP语料库。测试结果如下表所示:
3. 文本继承(TE)
对于文本继承任务,选用SemEval 2014 Task 1数据集。测试结果如下表所示:
4
总结
本文提出了三种用于卷积神经网络的注意力机制来进行句子对建模,并在三个常见任务上达到了较好的效果,体现了方法的泛化能力。同时也作者也指出,在三个任务上,两层注意力网络并不会明显优于一层注意力网络,可能是由于相关数据集较小的原因。总的来说,在自然语言处理的相关任务上,卷积神经网络上的注意力机制研究相比长短时记忆网络(LSTM)来说还相对较少,本文是一个较为不错的实现方式。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。