A Hybrid CNN-RNN Alignment Model for Phrase-Aware Sentence Classification
论文地址:下载
论文提出的模型框架如下如所示
![](https://img.haomeiwen.com/i9060795/2f1c7869caba5495.png)
整体是一个CNN-RNN结构的框架,这里的RNN使用的是GRU, 这里有一篇博客详细介绍了GRU, 其中一个用来构造sentence representation,一个用来计算Ci的值。关于Ci,文中的解释是这样的:模型决定哪一个短语更加的合理基于当前句子的表示(状态)。
我们从这个图出发:这个图由三个部分构成,第一个部分是通过CNN得到短语的表示,这里采用三个不同大小的卷积核[2,3,4],卷积得到2-gram, 3-gram,4-gram的表示,这里用P来表示。第二部分是通过双向的RNN得到句子的表示(状态),这里用S表示。最后一部分,以求平均的方式得到句子的最终表示,然后softmax得到句子的类别。
具体地从第二部分来看,每一个步骤的RNN由三个部分组成:当前单词的向量,Ci和上一个时刻的隐状态。下面是是论文中的公式:
![](https://img.haomeiwen.com/i9060795/6d22cfe913fb2ca4.png)
关键是对Ci的理解,该模型想要通过Ci得到与当前输入相关度比较大的短语向量,这样的motivation也是非常直观的,论文中举了这样的一个例子:
对于句子:(就是图中的那句话)Elling really is about a couple of crazy guys. 如果当前的单词是:guys, 那么选取couple of crazy guys, of crazy guys, crazy guys作为被选的短语, 对于当前的句子表示,究竟上面三个短语中的那个短语比较重要,Ci要做的事情就是选择重要的短语,或者说是给他们一些权重。
论文就采用点乘的方法,把当前句子的表示Si和由当前单词Xi的构成的2-gram,3-gram,4-gram的短语Pi相乘得到Attention Scoring, 有3个.
![](https://img.haomeiwen.com/i9060795/6153d01fda18adc4.png)
但是图中右边的Attention Gates是怎么回事呢?干什么用到呢?
![](https://img.haomeiwen.com/i9060795/4a82eab0aa76cc6f.png)
论文有这样的说法:神经网络模型有一个潜在的假设就是一个神经元的输入来自另外的神经元的输出,但是对于这样的例子Then one day, completely out of the blue, I had a letter from her就没有必要了. 对于blue这个词语跟前面结合构成的短语才有意义,跟后面的“I”结合在一起就没有意义了,所以论文就说到这样的一段话:
Accordingly, a loosely coupled framework that dynamically incorporates or omits phrase vectors is necessary. 也就是说当模型到了blue的时候,读下面的一个单词I,就没有必要把前面的单词输入过来构成短语来计算了。所以模型就再一次利用GRU模型得到这样的一个Ci,公式如下:
![](https://img.haomeiwen.com/i9060795/cb2aba9f2a0c8de8.png)
可以看出来Ci最后是一个向量,对每一个短语加了权重的一个向量
模型就这样。
论文说到两个数据集[SST2, SST5], Yelp, 前面两个是一样的数据集,不同的地方在于标签的个数。这两个数据集一个是clean, 一个是noisy, 对应的模型有structure-free, structure-dependent.
关于结果,这里不多说,直接看图
![](https://img.haomeiwen.com/i9060795/a3f4026664822b42.png)
网友评论