Deep Learning

文献阅读笔记:ABCNN: Attention-Based Co

2017-10-26  本文已影响2393人  generalz

关键词:Attention机制;CNN;卷积神经网络;文本分类;智能问答

开胃水果

文献:ABCNN: Attention-Based Convolutional Neural Network for Modeling Sentence Pairs
这篇文章结合卷积神经网络CNN和Attention机制,提出应用到文本分类中。

文本贡献:

在一些自然语言处理任务中,构建合理的句子对是非常关键的。比如QA问题中,匹配问题和答案。从问题中抽取关键的决定性的词语,去匹配合理的答案。

文章中综述了Attention机制在自然语言和非自然语言处理中的一些应用文章。

主要思路

BCNN结构 image.png

每个句子被填充为相同长度s,使用词向量映射每个句子为矩阵s*300维矩阵。

输入层 卷积层
w 应该是卷积核过滤器的宽度。卷积时如果会对周边做填充。也就是当j<1 或 j>s时,就是按照w*d0的过滤器做卷积。

选用平均池化作为baseline


池化层

两次卷积和池化,输出层softmax
BCNN方式就是正常的一个CNN网络架构。

ABCNN-1 image.png

结构中增加了一个抽象层级,就是在原有单词级上增加了一个短语级的抽象。单词级的抽象文中重新命名为unit,作为低级别的表示,短语级的作为更高一级的表示。图中那个红色的与BCNN网络中的输入是一样的,是句子的词向量矩阵,两个句子。第一个句子5个单词,第二个句子7个单词。
蓝色的为短语级高一级的词向量表示。蓝色表示是由Attention Matrix A和红色词向量计算生成
Attention Matrix A是由左右两个句子的情况生成。 A中的 i 列值是由左边句子(五个单词)中第 i 个单词(unit)的向量与右边句子的Attention值分布(),j行值是由右边句子中第j个单词的向量与左边句子的Attention值分布. 计算在下面定义

Matrix A的计算:

Matrix A
d 表示词向量维度,s表示的是句子的长度(句子长度填充为相同长度)。使用欧几里德距离。Matrix A中数值Ai,j的计算是由左边句子向量表示的第i列向量和右边句子第j列的距离度量, 度量方式有差异。作者使用的是两个向量的欧几里德距离。

获取的Matrix A后,对两个句子分别应用不同的权重矩阵(模型在学习的时候要学习的参数),生成两个句子的新的Attention特征表示。计算方法:

new attention feature map

接下来将句子的原始词向量表示和Attention特征表示作为3D 张量形式输入到卷积层进行计算。

ABCNN-2 image.png

ABCNN-2架构是在以初始词向量形式输入并经过卷积后的输出的向量表示中(两个句子分别变成了7col和9col),计算出Attention Matrix A. 计算方法还是计算两个句子对应单词向量的欧式距离,生成向量矩阵,方法同ABCNN-1的架构。
第二步:计算卷积向量权重,给每个单词计算一个权重值。左边句子(7col)的每个单词对应的Attention权重是由Matrix A中列向量求和的值作为权重值,col-wise sum,右边句子中每个单词的权重值是Matrix A中行向量求和值作为权重值,row-wise sum.

句子S0中第j个单词的Attention值
句子原始输入是词向量矩阵,左边的是5d,右边是7d,w是3
句子的卷积输出(c表示卷积输出,就是原始词向量经过一次卷积生成的矩阵,w是卷积宽度,si是句子长度,d是词向量长度)
将卷积输出的特征矩阵,基于Attention权重值,做池化。i 取值为0,1,j取值为句子长度。
基于Attention权重的平均池化计算,池化输出特征矩阵,p表示池化输出

ABCNN-1和ABCNN-2比较:1、ABCNN-1中Attention是间接的影响卷积,ABCNN-2中通过Attention权重直接影响池化。2、ABCNN-1需要两个权重矩阵需要学习,并且输入特征矩阵要两次, 相比ABCNN-2网络需要更多的参数学习,容易过拟合。3、ABCNN-2执行更大粒度的池化,如果在卷积层输入的是词粒度的,那么ABCNN-2在池化时就已经是短语粒度的(经过卷积了),池化时的w和卷积的w保持一致。

将ABCNN-1和ABCNN-2结合,作为架构,这样保留word level信息,也增加了phrase level的信息。更加高层次的特征抽象。


ABCNN-3 image.png

文中提到,在最后输出层,使用线性SVM和默认参数的LR分类器效果似乎比LR层更好,在输出层似乎能够获得更优的全局解。

分类器: 网络参数配置 image.png image.png image.png
上一篇 下一篇

猜你喜欢

热点阅读