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解决

tree-lstm初探的更多相关文章

  1. awesome-nlp

    awesome-nlp  A curated list of resources dedicated to Natural Language Processing Maintainers - Keon ...

  2. (转)Awesome PyTorch List

    Awesome-Pytorch-list 2018-08-10 09:25:16 This blog is copied from: https://github.com/Epsilon-Lee/Aw ...

  3. (zhuan) Recurrent Neural Network

    Recurrent Neural Network 2016年07月01日  Deep learning  Deep learning 字数:24235   this blog from: http:/ ...

  4. 26 THINGS I LEARNED IN THE DEEP LEARNING SUMMER SCHOOL

    26 THINGS I LEARNED IN THE DEEP LEARNING SUMMER SCHOOL In the beginning of August I got the chance t ...

  5. 《Graph Neural Networks: A Review of Methods and Applications》阅读笔记

    本文是对文献 <Graph Neural Networks: A Review of Methods and Applications> 的内容总结,详细内容请参照原文. 引言 大量的学习 ...

  6. 【ASE高级软件工程】第二次结对作业

    重现baseline 我们选择重现CODEnn模型(论文:Deep Code Search),因为它结构简单.端到端可训练,且相比其它方法拥有较高的性能. Baseline原理 为了根据给定的quer ...

  7. ASE第二次结对编程——Code Search

    复现极限模型 codenn 原理 其原理大致是将代码特征映射到一个向量,再将描述文字也映射到一个向量,将其cos距离作为loss训练. 对于代码特征,原论文提取了函数名.调用API序列和token集: ...

  8. 自然语言处理资源NLP

    转自:https://github.com/andrewt3000/DL4NLP Deep Learning for NLP resources State of the art resources ...

  9. Decision tree(决策树)算法初探

    0. 算法概述 决策树(decision tree)是一种基本的分类与回归方法.决策树模型呈树形结构(二分类思想的算法模型往往都是树形结构) 0x1:决策树模型的不同角度理解 在分类问题中,表示基于特 ...

  10. 蒙特卡罗方法、蒙特卡洛树搜索(Monte Carlo Tree Search,MCTS)初探

    1. 蒙特卡罗方法(Monte Carlo method) 0x1:从布丰投针实验说起 - 只要实验次数够多,我就能直到上帝的意图 18世纪,布丰提出以下问题:设我们有一个以平行且等距木纹铺成的地板( ...

随机推荐

  1. IVIEW对的table组件超出长度用省略号代替,使用气泡提示。

    render: (h, params) => { return h('div', [ h('Tooltip', { props: { placement: 'top' } }, [ h('spa ...

  2. 输出JSON

    <?php header("Content-type: text/html; charset=utf-8"); $host = '数据库IP'; $dbname = '数据库 ...

  3. Learning-Python【14】:匿名函数与函数递归

    一.什么是匿名函数 匿名函数就是没有名字的函数,又叫lambda表达式.用于一些简单的需要用函数去解决的问题,特点是只能在定义时使用一次,且函数体只有一行 匿名函数的定义就相当于只产生一个变量的值,而 ...

  4. oracle的存储过程的作用

    oracle的存储过程的作用 1.存储过程可以使得程序执行效率更高.安全性更好,因为过程建立之后 已经编译并且储存到数据库,直接写sql就需要先分析再执行因此过程效率更高,直接写sql语句会带来安全性 ...

  5. navicat 链接 mysql 报错1251

    使用版本: navicat for mysql 10.1.7版主 mysql-8.0.11-winx64 版本 报错原因:navicat版本太低(使用新版本navicat或者使用旧版本mysql) 解 ...

  6. Zabbix4.0+第三方报警平台OneAlert监控报警

    1. 前言 告警将重要信息发送给运维「或者其他相关人」,及时发现并且处理问题.在所有开源监控软件里面,Zabbix 的告警方式无疑是最棒的.告警的方式各式各样,从 Email 告警到飞信.139/18 ...

  7. inline-block和float 布局的选择

    浮动通常表现正常,但有时候搞起来会很纠结.特别是处理内部容器中的浮动,比如对一排图片使用浮动后对齐出现问题.Inline-block是我们的另一种选择.使用这种属性可以模拟部分浮动的特征,而不需要处理 ...

  8. MQTT简介

    MQTT简介 MQTT是IBM开发的一个即时通讯协议,该协议支持所有的平台,几乎可以把所有联网的物品和外部连接起来,被用来当做传感器和致动器(比如通过Twitter让房屋联网)的通信协议 MQTT的特 ...

  9. vue和react全面对比(详解)

    vue和react对比(详解) 放两张图镇压小妖怪 本文先讲共同之处, 再分析区别 大纲在此: 共同点: a.都使用虚拟dom b.提供了响应式和组件化的视图组件 c.注意力集中保持在核心库,而将其他 ...

  10. 跟随我在oracle学习php(9)

    三目运算符:表达式? 表达式: 表达式: 自增在前在后没有影响 参与表达式需要注意 在前先计算,在后最后加1. + 字符串拼接. 字符串转数字:从左到右第一个不是数字的位置结束 取整 parseInt ...