Hierarchical Attention Networks for Document Classification论文阅读笔记

 

Hierarchical Attention Networks for Document Classification

(ACL2016)

 

动机

在分类任务中,句子中包含的每个词语相对于分类任务的重要性并不一样,比如在IMDB影评数据集中, like, amazing, terrible 这样的词语更能够决定句子的情感。一篇document也由多个句子组成,在篇章级别的分类时,每个句子的重要性也不相同。所以作者提出一种使用self-attention的层次模型来给单词或者句子赋予权重,以提升分类的准确性。

 

模型

网络包含四个层次:

1、word sequence layer

2、word-attention layer

3、sentence sequence layer

4、sentence-attention layer

 

编码层

包括word sequence layer,sentence sequence layer,其作用分别是对句子和篇章编码,直接使用BI-GRU实现。

 

注意力机制

该模型与上次所说的层级门结构篇章情感分类很相似,不同之处在于有了uw(词语级别的context vector)和us(句子级别的context vector), 利用它们产生attention value, 就可得出每个词语或句子的任务相关程度。

本文中self-attention的实现方式:

把每一个句子用双向GRU进行表示,再把句子中的每个词语的隐层向量表示(hit)经过如下变换实现self-attention:

 

式1:把某个词的隐层向量表示输入到一个单层感知机得到uit

式2:度量这个词的重要程度:方法是直接计算uit和uw(context vector)的相似度,然后用softmax函数将相似度归一化从而得到每个词的attention值,用α表示。

式3:最后以该α值为权重,加权求和得到整个句子的attention向量表示。

关于 context vector:

The context vector uw can be seen as a high level representation of a fixed query “what is the informative word” over the words.The word context vector uw is randomly initialized and jointly learned during the training process.随机初始化,随着模型反向传播不断学习和更新。

 

补充:传统注意力机制

传统attention机制的应用,总是要求任务本身同时有源和目标的概念。比如在machine translation里, 我们有源语言和目标语言,在QA里我们有问题和答案,在这类问题里面Attention常常被定义为目标和源的相关程度

但是存在一些其他任务,不同时具有源和目标。比如document classification, 它只有原文,没有目标语言或篇章。那么这种情况下attention就需要其变种self-attention,即原文自己内部的注意力机制。

传统注意力机制:

 

以 “Tom chase Jerry”这句话为例,对于采用RNN的Decoder来说,在时刻i,如果要生成yi单词,我们可以知道在i-1时刻隐层节点的输出值 Hi-1 ,目的是计算输入句子中的单词 “Tom” 、“Chase”、“Jerry” 相对 Yi 来说的注意力概率分布。可以用 i-1时刻的隐层节点状态Hi-1去 一 一 和输入句子Source中每个单词对应的RNN隐层节点状态 hj 进行对比,即通过函数F( hj , Hi-1 )来获得目标单词yi和每个输入单词对应的相关程度,F函数在不同论文里可能会采取不同的方法,最后将函数F的输出经过Softmax层归一化就得到了attention值。

 

实验

 

数据集:

在六个大规模的documen classifaication data sets进行,数据集主要分为两大块:

sentiment estimation and topic classification

Yelp reviews(2013,2014,2015),IMDB reviews,Yahoo answers,Amazon reviews

 

baseline:

Linear methods:

 A linear classifier based on multinomial logistic regression is used to

classify the documents using the features:

1、BOW and BOW+TFIDF

2、n-grams and n-grams+TFIDF

3Bag-of-means :The average word2vec embedding

 

SVMs:

including SVM+Unigrams, Bigrams,Text Features, AverageSG, SSWE.

1、Text Features are constructed according to (Kiritchenko et al., 2014), including word and character n-grams, sentiment lexicon features etc.

2、AverageSG constructs 200-dimensional word vectors using word2vec and the average word embeddings of each document are used.

3、SSWE uses sentiment specific word embeddings according to (Tang et al., 2014)

 

Neural Network methods:

1、CNN-word Word based CNN models like that of (Kim, 2014) are used.

2、CNN-char Character level CNN models are reported in (Zhang et al., 2015)

3、LSTM takes the whole document as a single sequence and the average of the hidden states of all words is used as feature for classification.

4、Conv-GRNN and LSTM-GRNN were proposed by (Tang et al., 2015). They also explore

the hierarchical structure: a CNN or LSTM provides a sentence vector, and then a gated

recurrent neural network (GRNN) combines the sentence vectors from a document level

vector representation for classification.

HN代表Hierarchical Network, AVE 代表 averaging, MAX代表max-pooling, and ATT 代表 hierarchical attention model.

 

Analysis

1、The improvement is regardless of data sizes.比如:在小规模数据集Yelp2013和IMDB中,本文的模型比baseline中表现最好的模型分别提升了3.1%和4.1%。在大规模数据集上表现也是一致的,Yelp2014(3.4%),Yelp2015(3.4%),Yahoo Answers(4.6%),Amazon Reviews(6.0%)。The improvement also occurs regardless of the type of task:YElps是情感分析,其他的是主题分类。

2、没有用 hierarchical document structure的神经网络, such as LSTM, CNN-word, CNN-char,相对于传统方法性能提升很少。SVM+TextFeatures gives performance 59.8, 61.8, 62.4, 40.5 for Yelp 2013, 2014,2015 and IMDB respectively, while CNN-word has accuracy 59.7, 61.0, 61.5, 37.6 respectively。

3、对比只使用了hierarchical structure(不包括attention)的模型和没使用hierarchical的网络,可以发现明显的性能提升。比如HN-AVE outperforms CNN-word by 7.3%,8.8%, 8.5%, 10.2% than CNN-word on Yelp 2013, 2014, 2015 and IMDB respectively.

4、使用了attention的HN-ATT模型,比只使用hierarchical的模型:LSTM-GRNN模型,也有明显的提升,分别提升了3.1%, 3.4%, 3.5% and 4.1%。HN-AVE和HN-MAX表现几乎一致,但是HN-ATT相对于这两个模型还是要更好一些。

 

Visualization of attention

为了验证模型是否能正确选出有用的句子和单词,作者进行了如下得可视化工作。

每一行是一个句子,红色代表句子的注意力权重,蓝色代表单词的权重。由于使用了hierarchical structure,作者实现了用句子权重来权衡折中单词的权重。如下例所示:

GT:4,实际标签是4:代表5星评价。GT:0,代表一星评价。可以看出那些带有强烈感情色彩的单词的权重较大,很多无关词直接被忽略。同时,由于是层次结构,所以综合考虑句子和单词的权重后所得的结果才是最终结果,所以即使左边的评价中:“i don’t even like scallops(我不是很喜欢扇贝)”这样一句消极情感的句子并没有误导整个评论的实际含义,可以看出这句话的句子权重较低。

 

 

可以沿用作者的思路,attention结合hierarchical representation用在罪名预测fact部分的编码上,应该会有效果。

你可能感兴趣的:(Hierarchical Attention Networks for Document Classification论文阅读笔记)