论文赏析[TACL17]基于中序转移的成分句法分析(一)

简介: 论文地址:In-Order Transition-based Constituent Parsing代码地址:github今天要介绍的这篇论文是成分句法分析领域目前的第三名,结果最高的几篇paper可以参见ruder在github整理的列表:github。下面就是成分句法分析目前排名:

摘要


image.png

基于转移的成分句法分析主要分为两种:一种是自顶向下(top-down)的方法,按照前序遍历(pre-order)的顺序生成句法树。这种方法可以更好地利用全局信息,但是需要一个强大的编码器来对每个短语成分进行编码。一种是自底向上(bottom-up)的方法,按照后序遍历(post-order)的顺序生成句法树。这种方法可以充分利用子树的特征来进行分析,但是却无法利用全局信息。

本文的模型就对这两种方法进行了改进,采用中序遍历(in-order)的顺序来生成句法树。单模型最终取得了91.8的F1值(貌似也不是特别高?),采用监督重排序之后F1值提升到了93.6,采用半监督重排序之后F1值提升到了94.2。所以看起来还是重排序起了很大的作用。

基于转移的成分句法分析


首先简要介绍一下这三种基于转移的句法分析方法。

自底向上的转移系统

自底向上的转移系统是基于后序遍历的,例如对于下图这棵句法树,算法产生结点的顺序为3、4、5、2、7、9、10、8、6、11、1。

image.png

a图是未经二叉化的句法树,b图是二叉化之后的句法树,二叉化之后的结点要用l和r来区分头结点。其实不二叉化也是可以的,伯克利一帮人的做法就是用 image.png 来作为临时结点,构造树的时候去掉就行了。

句法分析系统如下:

image.png

每个时刻的状态用三元组 image.png 来表示,分别表示栈中元素、buffer的第一个元素在句子中的下标、句法分析结束标记。

系统一共有四个操作:

  • SHIFT:从buffer中移进一个单词到栈里。
  • REDUCE-L/R-X:将栈顶两个结点归约为一个父结点X。
  • UNARY-X:将栈顶元素归约为一元结点X。
  • FINISH:句法分析结束。

上面那个句法树按照该模型分析的话过程如下:

image.png

优缺点很显然,可以充分利用已生成的子树来对父结点的预测进行分析,但是不能利用全局信息(也就是其他子树、父结点等信息),并且需要提前进行二叉化(这点可以用临时结点标记来规避)。

自顶向下的转移系统

自顶向下的转移系统是基于前序遍历的,例如对于之前那棵句法树,算法产生结点的顺序为1、2、3、4、5、6、7、8、9、10、11。

句法分析系统如下:

image.png

系统一共有三个操作:

  • SHIFT:从buffer中移进一个单词到栈里。
  • NT-X:对一个父结点生成出它的一个子结点X。
  • REDUCE:将栈顶的若干个结点归约为一个结点,并且全部出栈,注意它们的父结点这时已经在栈顶了。

上面那个句法树按照该模型分析的话过程如下:

image.png

优缺点也很显然,可以充分利用全局信息,但是因为预测子树的时候,子树还没有生成,所以无法利用子树的特征来进行分析,所以需要提前对句子的每个短语进行编码。

采用中序遍历的转移系统

为了协调上面的两种问题,本文提出了一种基于中序遍历的转移系统。

其实采用中序遍历也符合人们的直觉判断,比如你读到一个单词“like”,脑子里首先就会想到,这个可能和下面短语共同组成了动词短语VP,然后接着往下看,果然印证了你的猜想。

中序遍历就是采用这种思想的,例如对于之前那棵句法树,算法产生结点的顺序为3、2、4、5、1、7、6、9、8、10。

句法分析系统如下:

image.png

系统一共有四个操作:

  • SHIFT:从buffer中移进一个单词到栈里。
  • PJ-X:向栈里移进父结点X,来作为栈顶结点的父结点。
  • REDUCE:将栈顶的若干个结点归约为一个结点,并且全部出栈,注意它们的父结点在出栈元素的倒数第二个。然后再将父结点入栈。
  • FINISH:句法分析结束。

上面那个句法树按照该模型分析的话过程如下:

该转移系统还有很多变体。对于短语(S, a, b, c, d),可以令它在栈中S结点之前的子结点个数为 k ,例如对于上面的中序转移系统,栈里存放顺序是“a S b c d”,那么 image.png ,如果栈里存放顺序是“a b S c d”,那么  。而对于自底向上的转移系统, image.png 就是正无穷,对于自顶向下的转移系统, k 就是0。

相关文章
|
机器学习/深度学习 Oracle 算法
论文赏析[TACL17]基于中序转移的成分句法分析(二)
论文地址:In-Order Transition-based Constituent Parsing 代码地址:github 今天要介绍的这篇论文是成分句法分析领域目前的第三名,结果最高的几篇paper可以参见ruder在github整理的列表:github。下面就是成分句法分析目前排名:
141 0
论文赏析[TACL17]基于中序转移的成分句法分析(二)
|
自然语言处理 并行计算 算法
论文赏析[ACL18]直接到树:基于神经句法距离的成分句法分析(一)
今天要讲的这篇论文发表在ACL18上面,一句话概括,本文就是将句法树序列化,通过预测序列进行句法分析。
163 0
论文赏析[ACL18]直接到树:基于神经句法距离的成分句法分析(一)
|
机器学习/深度学习 自然语言处理
论文赏析[ACL18]直接到树:基于神经句法距离的成分句法分析(二)
今天要讲的这篇论文发表在ACL18上面,一句话概括,本文就是将句法树序列化,通过预测序列进行句法分析。
125 0
论文赏析[ACL18]直接到树:基于神经句法距离的成分句法分析(二)
|
机器学习/深度学习 自然语言处理
论文赏析[ACL18]基于RNN和动态规划的线性时间成分句法分析(一)
好像已经很久没有看论文了呢,开学了一堆事情,以后还是要抽空阅读论文,保持一定的阅读量,并且不能光看最新的论文,还得去前人传统的方法中去寻找有没有能应用于深度学习的东西,说不定就发ACL了呢(手动滑稽)。 论文地址:Linear-Time Constituency Parsing with RNNs and Dynamic Programming 代码地址:github
105 0
论文赏析[ACL18]基于RNN和动态规划的线性时间成分句法分析(一)
|
机器学习/深度学习
论文赏析[ACL18]基于RNN和动态规划的线性时间成分句法分析(二)
好像已经很久没有看论文了呢,开学了一堆事情,以后还是要抽空阅读论文,保持一定的阅读量,并且不能光看最新的论文,还得去前人传统的方法中去寻找有没有能应用于深度学习的东西,说不定就发ACL了呢(手动滑稽)。 论文地址:Linear-Time Constituency Parsing with RNNs and Dynamic Programming 代码地址:github
106 0
论文赏析[ACL18]基于RNN和动态规划的线性时间成分句法分析(二)
|
Oracle 关系型数据库
论文赏析[AI18]更快的基于非二叉化自底向上策略的转移系统成分句法分析(一)
这篇论文提出了一种非二叉化、自底向上的转移系统,并且针对它提出了一种Dynamic Oracle,用损失函数的形式来实现它。
197 0
论文赏析[AI18]更快的基于非二叉化自底向上策略的转移系统成分句法分析(一)
|
Oracle 关系型数据库
论文赏析[AI18]更快的基于非二叉化自底向上策略的转移系统成分句法分析(二)
这篇论文提出了一种非二叉化、自底向上的转移系统,并且针对它提出了一种Dynamic Oracle,用损失函数的形式来实现它。
129 0
论文赏析[AI18]更快的基于非二叉化自底向上策略的转移系统成分句法分析(二)
|
Oracle 关系型数据库
论文赏析[EMNLP18]针对自顶向下和中序移进归约成分句法分析的Dynamic Oracles(二)
本文是发表在EMNLP18上的一篇关于Dynamic Oracle的论文,主要介绍了针对自顶向下和中序两种移进归约成分句法分析模型的Dynamic Oracles。在PTB数据集上,取得了单模型最高的F1值92.0(截至论文发稿时是最高的,张岳TACL18的论文已经取得了92.4的最高F1值)。
论文赏析[EMNLP18]针对自顶向下和中序移进归约成分句法分析的Dynamic Oracles(二)
|
Oracle 关系型数据库
论文赏析[EMNLP18]针对自顶向下和中序移进归约成分句法分析的Dynamic Oracles(一)
本文是发表在EMNLP18上的一篇关于Dynamic Oracle的论文,主要介绍了针对自顶向下和中序两种移进归约成分句法分析模型的Dynamic Oracles。在PTB数据集上,取得了单模型最高的F1值92.0(截至论文发稿时是最高的,张岳TACL18的论文已经取得了92.4的最高F1值)。
213 0
论文赏析[EMNLP18]针对自顶向下和中序移进归约成分句法分析的Dynamic Oracles(一)
|
机器学习/深度学习 自然语言处理
论文赏析[TACL18]隐式句法树模型真的能学到句子中有意义的结构吗?(一)
本文是一篇分析类论文,主要对近年来几种无监督句法分析模型(RL-SPINN和ST-Gumbel)进行了分析,得出了如下三个结论: 在句子分类任务上,只有一种模型效果好于传统的树结构模型。 这些模型随机性很大,初始化不同,结果也都差距很大。 这些模型产生的句法树的平均深度比PTB数据集的平均深度浅。
151 0
论文赏析[TACL18]隐式句法树模型真的能学到句子中有意义的结构吗?(一)