tree-lstm初探

https://zhuanlan.zhihu.com/p/35252733

可以先看看上面知乎文章里面的例子

Socher 等人于2012和2013年分别提出了两种区分词或短语类型的模型,即SU-RNN(Syntactically-Untied RNN)和MV-RNN(Matrix-Vector RNN)。

1)SU-RNN对不同类型的组合节点使用不同的组合参数,如ADJ与NN组合时,使用WADJ-NN

但是,相同的节点类型也未必可以共享同一套组合参数,如同样是形容词,“好”和“坏”与其它词在组合时,获得的结果应该是不同的。

2)因此,MV-RNN将这种不同体现在每个节点上,而非不同种类的节点。它认为,每个节点除了需要使用向量表示外,还需要使用一个矩阵来表示,其中向量表示节点自身的属性,而矩阵则表示其在组合时,对另一个节点的操作。例如,“红”与“苹果”组合的结果是“红苹果”,它仍然是一种“苹果”,只是属性发生了一些改变,可以通过将“红”的矩阵与“苹果”的向量相乘获得“红苹果”的向量。

然而MV-RNN对每个节点除赋予一个向量外,还需要赋予一个矩阵,其中涉及到太多的参数需要学习,所以往往学习的并不充分。

3)为了获得更好的学习效果,Socher等人于2013年提出了RNTN(Recursive Neural Tensor Networks)模型,即使用张量(Tensor)来表示组合参数。常用的三阶张量可以被理解为多个矩阵构成的向量,其中每个矩阵可以被认为是某种类型的组合操作,最终组合在一起。通过张量,既可以减少所需学习的参数,也可以表示丰富的组合操作,因此RNTN模型也取得了较好的效果。在细粒度情感分析任务上,将MV-RNN获得的44.4%的准确率,提高到了45.7%。其中细粒度情感分类指的是将句子所表达的情感,如褒贬等划分为5个级别,对应的是评论网站对商品打分的星级。

Socher等人以上一系列的工作都充分利用了自然语言树结构的特性,因此事先需要对输入的文本进行句法分析操作,然而由于句法分析自身并不完美,其个别错误的分析结果必然对上述模型的应用带来不良的效果。

所以有一些学者,试图将模型构筑在非树结构之上,并取得了非常好的结果。

4)如Le and Mikolov于2014年提出了Paragraph Vector模型,将著名的word2vec模型扩展到更长的文本之上,并在相同的情感分类任务上,将准确率进一步提高到48.7%。Kim于同年使用了更简单的单层CNN(Convolutional Neural Networks)模型,在Dropout等技术的帮助下,也获得了48.0%的准确率。在其它自然语言处理任务上,Zeng等人(2014)以及Zhou和Xu(2015)也在不使用句法分析的条件下,超越了基于树结构的传统模型(非深度学习模型)。

以上的工作是否就证明了,面向自然语言处理的深度学习模型真的不需要树结构了呢?结论并没有那么简单,基于树结构的模型也在不断的发展

5)Tai等人2015年提出了Tree-LSTM模型,将序列的LSTM模型扩展到树结构上,即可以通过LSTM的忘记门机制,跳过(忘记)整棵对结果影响不大的子树,而不仅仅是一些可能没有语言学意义的子序列。由于有了树结构的帮助,就更容易对长距离节点之间的语义搭配关系进行学习,从而取得了更好的准确率(50.6%)。此工作也被Zhou和Xu(2015)所关注,并在其论文的最后说明,如果在其模型中使用树结构,也许会取得更好的效果。当然,是否会如其所愿还需要进一步的研究。

 

其中需要说明的是,在细粒度情感分类任务中,Li等提出可以使用标点符号这一简单的特征,将句子分割成小的片段,然后构建层次化Bi-LSTM模型,即对每个小片段使用Bi-LSTM建模,获得其表示。然后再使用一个Bi-LSTM模型将各个小片段的表示统一建模,获得整个句子的表示。经过这种简单的操作,一定程度上提高了序列模型的性能,使其又超过了树结构模型的性能。

可以参考的论文:

Socher 等人于2012和2013年分别提出了两种区分词或短语类型的模型,即SU-RNN(Syntactically-Untied RNN)和MV-RNN(Matrix-Vector RNN)。

Socher等人于2013年提出了RNTN(Recursive Neural Tensor Networks)模型,即使用张量(Tensor)来表示组合参数。

Le and Mikolov于2014年提出了Paragraph Vector模型,将著名的word2vec模型扩展到更长的文本之上,并在相同的情感分类任务上,将准确率进一步提高到48.7%。

Kim于2014年使用了更简单的单层CNN(Convolutional Neural Networks)模型,在Dropout等技术的帮助下,也获得了48.0%的准确率。

在其它自然语言处理任务上,Zeng等人(2014)以及Zhou和Xu(2015)也在不使用句法分析的条件下,超越了基于树结构的传统模型(非深度学习模型)。

Tai等人2015年提出了Tree-LSTM模型,将序列的LSTM模型扩展到树结构上,即可以通过LSTM的忘记门机制,跳过(忘记)整棵对结果影响不大的子树,而不仅仅是一些可能没有语言学意义的子序列。

此工作也被Zhou和Xu(2015)所关注,并在其论文的最后说明,如果在其模型中使用树结构,也许会取得更好的效果。

Li等人(2015)在多个自然语言处理任务中,对序列模型(如双向LSTM)和树模型(如Tree-LSTM)进行了深入的对比。

Bowman等人(2015)研究结果甚至一定程度上证明,序列模型(LSTM)能够发现隐含的树结构。 

[5].Richard Socher, Cliff Lin, Andrew Y. Ng, and Christopher D. Manning. Parsing Natural Scenes and Natural Language with Recursive Neural Networks. ICML 2011.
[7].Richard Socher, Brody Huval, Christopher D. Manning and Andrew Y. Ng. Semantic Compositionality through Recursive Matrix-Vector Spaces. EMNLP 2012.
[8].Richard Socher, Danqi Chen, Christopher D. Manning, Andrew Y. Ng. Reasoning With Neural Tensor Networks for Knowledge Base Completion. NIPS 2013.

[6].Richard Socher, John Bauer, Christopher D. Manning and Andrew Y. Ng. Parsing with Compositional Vector Grammars. ACL 2013.

[9].Kai Sheng Tai, Richard Socher and Christopher D. Manning. Improved Semantic Representations From Tree-Structured Long Short-Term Memory Networks. ACL 2015.
[11].Jie Zhou and Wei Xu. End-to-end learning of semantic role labeling using recurrent neural networks. ACL 2015.
[1].Samuel R. Bowman, Christopher D. Manning, and Christopher Potts. Tree-structured composition in neural networks without tree-structured architectures. arXiv manuscript 1506.04834. 2015.

5)《Vinyals O, Kaiser L,Koo T, et al. Grammar as a foreign language[J]. arXiv preprint arXiv:1412.7449,2014.》

把LSTM用于句法分析任务,文章把树状的句法结构进行了线性表示,从而把句法分析问题转成翻译问题,然后套用机器翻译的seq2seq框架使用LSTM解决

原文地址:https://www.cnblogs.com/rosyYY/p/10167721.html