Aspect-level Sentiment Classification using attention mechanism

这篇论文其实是无意间发现的,其中运用到了attention的思想。其实当我发现机器翻译里可以引入attention机制后,我就一直在琢磨,文本的情感分类是不是也可以引入这种思想,但是不知道该如何用,该在什么领域用,终于《Attention-based LSTM for Aspect-level Sentiment Classification》EMNLP 这篇论文给了我一定的启示,发现竟然还有这种方式的分类场景或者应用场景。刚开始看题目都不太明白,不知道什么算是aspect-level的Sentiment Classification,后来看了论文里给的例子,才知道原来还有这种情感分类方式,即和描述内容相关的情感分类。比方说有一句话:这家店的服务很好,但是饭菜的味道不好吃。如果我们是对于服务评价的话就是正向情感,如果是对饭菜评价的话就是负向情感。了解了aspect的含义之后,咱们再来看这篇论文是如何引入attention机制的。

Aspect-level Sentiment Classification using attention mechanism_第1张图片
上面的图就是引入了attention机制之后的分类架构图。如图所示该模型主体使用的是LSTM,序列依次输入产出hidden state h1,h2,h3....hn ,那么在最后表征整个句子的时候是把所有的state乘上一个系数向量 α ,然后在此基础之上进行分类。对于一句话,不同的aspect对应不同的 va ,这里面的 va 向量代表了不同的aspect,是一个模型训练的参数。因此对于不同的aspect计算出来的权值向量 α 是不一样的,这也影响了最后的最后得出的最终向量和分类结果。具体公式如下:
Aspect-level Sentiment Classification using attention mechanism_第2张图片
MR(d+da)N,αRN,rRd,WhRdd,WVRdada,wRd+da 。其中 da 代表了aspect词向量的维度, d 代表了hidden state的维度, N 代表了序列的长度, va 代表了aspect词向量。也就是说对于同样的一句话,分析不同的aspect所依据的向量 r 是不同的。这样一句话拆分出不同的aspect就会得到不同的结果,而我们最后的训练目标也是依据这些不同的aspect。其实有意思的一点是,论文中最后的预测并不是基于这个 r 向量的,而是采用了如下的方式: h=tanh(Wp.r+Wx.hN) ,其中 hN 则代表LSTM最后一时刻的隐藏向量,而这个系数矩阵 Wp Wx 也是需要学习的参数。最后的预测其实是基于 h 的,论文里说这种方式比直接使用 r 更能提高分类的准确率。

论文为了进一步考虑aspect的信息,又在原来模型的基础上进行了小小的修改,得到了如下的模型:
Aspect-level Sentiment Classification using attention mechanism_第3张图片

我感觉这种aspect的分类场景自然而然的就能和attention模式结合在一起,看来以后还是要增加自己的知识面,才能更好的融会贯通,更好的做科研。

你可能感兴趣的:(深度学习)