摘要:结合recursive neural networks和CRF。该模型学习了high-level discriminative features and double propagates information between aspect and opinion terms.
过去的研究中:一个方法是从一组没有label的信息中累积aspect和opinion terms,通过使用句法规则或modification relation between them,但是这个方法太依赖于hand-coded rules并且is restricted to certain Part-of-Speech(POS)词性,例如:opinion words是形容词。 另一个方法是:基于定义好的lexicons词汇,句法分析。labeling classifier用来构建aspect和opinion terms。需要很多精力去设计hand-crafted features,并且为分类器只线性的结合features,忽略了higher order interactions。
本文的方法:基于句子的dependency tree的recursive neural network,目的是学习每个句子中在上下文中每个词的high-level feature representation,根据dependency structure学习aspect和opinion terms的关联。RNN输出到一个CRF中,learn a discriminative mapping from high-level features to labels,例如:aspect, opinions 或其他。
最大的贡献:encode aspect-opinion relations in high-level representation learning,联合optimization方法,基于最大似然估计和后向传播,来学习RNN和CRF。
Related Work:
1. Aspect and Opinions Co-Extraction
Hu et al.(2004a) 通过association mining提取商品的aspect,opinion terms是通过使用WordNet中的同义词和反义词增大一个seed opinion。然后,有的研究者学习句法关系syntactic relations。Qiu et al.(2001)使用syntactic relations来double propagate,增大aspect和opinions的集合。以上方法是无监督的,太依赖predefined rules for extraction和词性。
Jin et al.(2009) Jakob et al.(2010) Ma et al.(2010)认为提取方法是一系列的tagging problem,并且提出了HMMs或CRFs来解决,这个方法依赖hand-crafted features,并且不考虑aspect和opinion terms之间关系。
Liu et al. 2012 使用word alignment model来捕获句子中的opinion relations,这个方法requires sufficient data for modeling desired relations。
2. Deep Learning for Sentiment Analysis
dl模型可以学习inherent semantic and syntactic information from data并且可以达到better performance for sentiment analysis。这些方法大多都是句子级别或短语/词语级别的sentiment polarity predictions情感极性预测。Irsoy et al.(2014) 应用deep recurrent neural network来做opinion expression extraction。Dong et al.(2014)提出了一个adaptive recurrent neural network来做target-dependent sentiment分类,target或aspect是输入。Tang et al.(2015)使用LSTM做了同样的任务。
但是,很少有人使用dl模型做aspect and opinions co-extraction。
相关的就是Liu et al.2015提出了一个结合recurrent neural network和word embeddings来提取explicit aspects。然而,这个模型只在word embeddings上使用recurrent neural work,所以performance会严重依赖word embeddings的质量。除此之外,它没有提取句子的句法结构。
最近,Yin et al.(2016)提出了一个无监督的学习模型使用dependency path embeddings来改进word embeddings。使用embeddings independently训练CRF。
本文:与Yin不同的是,不focus在构建一个无监督的word embeddings methods,相反encoding the information of dependency paths into RNN来构建句法的意义和discriminative hidden representations with label。并且构建一个joint optimization approach而不是向Yin一样将word embeddings和CRF分开。Weiss et al.(2015)提出做language parsing,将dl和结构学习structured learning,可以通过structured perceptron学习到。然而,他同样可以将神经网络的训练和structured prediction分开。
在deep learning方法中,RNN解决了很多NLP任务:例如learning phrase representations,sentence-level sentiment analysis,language parsing和question answering。
用于RNN的树形结构包括constituency tree和dependency tree。在constituency树种,所有词都在页节点,每个内部节点代表短语或a constituent of a sentence,并且根节点代表整个sentence。在一个dependency tree中,每个节点包括terminal和non-terminal节点,代表一个词,with dependency connections to other nodes。
使用dependency tree的好处是the ability to extract word-level representations考虑syntactic relation句法关系和semantic robustness情感鲁棒性。
因此文本使用DT-RNN(dependency-tree RNN)
Problem Statement:
1. Dependency-Tree RNNs
将每个词和一个feature向量关联,which corresponds to a column of a word embedding matrix 如图1,v是vocabulary的数目。
每个句子,构建一个基于corresponding dependency parse tree和word embeddings的DT-RNN。
在DT-RNN中,每个节点n,包括叶节点、内部节点和跟节点,在具体的句子中是和一个词w关联的,一个输入feature向量xw,一个隐向量
和xw是相同维度的。每个dependency relation r是和一个矩阵相关联的
Wv用于计算叶节点的隐状态:
内部节点的隐状态用corresponding relation matrix Wr和the common transformation matrix Wv计算:
任意节点的与一个word vector相关联的hidden vector可以通过以下方法计算:
Kn是节点n的子节点,rnk是节点n和它的子节点的dependency关系,hk是子节点k的隐状态。
2. Integration with CRFs
DT-RNN的输出的句子中每个词的hidden representation,给一个CRF
使用linear-chain CRF,有两种不同的cliques:unary clique(U)一元团代表input-output connection,和pairwise clique(P)二元团代表adjacent output connection
During inference, 模型希望能输出y^,使得p(y|h)的conditional probability(条件概率)最大,The probability is computed from potential outputs of the cliques:
Z(h)是normalization term
增加上下文窗口,大小是2T+1 when computing unary potential。节点k的potential of unary clique可以写成:
W0是CRF再当前位置的权重矩阵, W+t是向右t个位置的权重矩阵, W-t向左t个位置的权重矩阵。yk indicates the corresponding row in the weight matrix。
增加二元团的一个例子:
window size为3,where the first tree terms in the exponential of the RHS consider unary clique while the last term considers the pairwise clique with matrix V representing pairwise state transition score.
训练RNCRF:
CRF的参数:一元团 W0, W+t, W-t,二元团V矩阵,by applying chain rule to log-potential updates.
讨论部分:
SemEval challenge 2014 task4(subtask 1)Toh and Wang, 2014使用了CRFs,包括extensive hand-crafted features including those induced from dependency trees。但是实验证明从依存关系中提取的feature不能改进performance,这表示显式的使用依存结构作为输入特征是infeasibility或困难的。所以作者使用DT-RNN来encode dependency between words for feature learning.
RNCRF最大的优势在于学习aspect和opinion terms之间的underlying dual propagation。例如,在依存树中,food依赖于like with the relation DOBJ。在训练过程中,RNCRF计算like的隐状态hlike,同时也可以从hfood中获取。因此like的预测是受到hfood的影响的。在反向传播时,the error for like is propagated through a top-down manner to revise the representation hfood。
增加Linguistic/Lexicon features:
增加light hand-crafted features到RNCRF可以增加其心梗,例如POS tags,name-list,或sentiment lexicon。这些特征增加到每个词的隐状态的后面,但是在训练时keep fixed,不像learnable neural input 和CRF的权重。
没有任何hand-crafted特征的RNCRF比 拥有heavy特征的best performing systems好,并且RNCRF with light feature可以达到better performance。
实验:
原始数据集only includes manually annotate labels for aspect terms but not for opinion terms,手动为opinion terms添加注释
word embedding使用word2vec on the Yelp Challenge dataset for the restaurant domain and on the Amazon reviews reviews.
dependency trees使用Stanford Dependency Parser。
使用CRFSuite实现一个linear-chain CRF。
数据集少,参数多,在DT-RNN上使用pretraining,用cross-entropy error(交叉熵误差),which is a common strategy for deep learning。
使用mini-batch stochastic gradient descent(SGD) with a batch size of 25 和 adaptive learning rate(AdaGrad),初始化为0.02
joint model RNCRF,使用SGD with a decaying learning rate initialized at 0.02。尝试不同的context窗口大小。all parameters are chosen by cross validation。
lexicon features词汇特征:构建2D binary vector。
POS tags,使用Stanford POS tagger