句法分析是自然语言处理领域的一个关键问题,依存句法分析作为句法分析中的一个文法体系,近年来,成为研究热点,并且逐渐广泛应用于其他自然语言处理任务中。文章研究了将高阶特征有效的结合到基于神经图网络(GNN)的依存句法分析。本文并没有显式地从中间解析树中提取高阶特征,而是开发了一种更强大的依存树节点表示,它可以简洁高效地捕获高阶信息,并使用GNN来学习依存树节点表示,并讨论了GNN更新和聚合函数的几种新配置。
论文地址:
暂无
引言
在依存句法分析的最新发展中,学习表示正变得越来越重要。从观察到的特征(单词、位置、postags)到潜在的解析状态,构建表达表示对于获得准确和健壮的解析性能至关重要。对于一个句子,解析器首先对所有单词对进行评分,以确定它们是否可能保持有效的依赖关系,然后使用解码器(例如贪婪的最大生成树)根据评分生成完整的分析树。分数函数是基于图的解析中的一个关键组件。通常,一个神经网络被分配用来学习单词的低维向量(即解析树的节点),而分数函数依赖于单词对的向量(如内积)。本文的主要任务是探索有效的依赖树节点编码系统。
GNN的节点表示
本文使用图神经网络(GNN)来学习句法依存树的节点表示,给出一个加权图,并通过递归地聚合其邻域的节点表示来嵌入一个节点。对于解析任务,我们在加权图的基础上构建GNN,这些加权完图可以在基于图的解析器中获得。通过对多个GNN层的叠加,一个节点的表示逐渐收集各种高阶信息,并将全局证据带入译码器的最终决策中。
GNN框架
令N(i)N(i)N(i)作为图GGG中节点iii的邻居,则vitv_i^tvit为iii在第ttt-th个GNN层的向量表示:
其中ggg为非线性激活方程(本文使用LeakyReLU),WWW和BBB为参数矩阵。接下来使用不同的边权重alphaijtalpha_{ij}^talphaijt来对不同的节点赋予权重。
GNN可以天然的捕捉多跳关系,另一方面为了直接解析GNN而不是对每个节点进行编码,需要同时处理有向图GGG的的头表示hih_ihi和相关表示did_idi。这些图保留的所有信息可以派生任何中间解析树。因此,它可以降低在次优中间体上提取高阶特征的风险。
高阶信息
节点iii三个类型的高阶信息,分别是父级别(grandparents),子级别(grandchildren)和同级别(sibling)。需要调整GNN的通用更新公式以将三种类型的高阶信息正确编码。
父级别的更新公式如下:
同级别的更新公式如下:
子级别的更新公式如下:
除此之外,本文还提出了一种异步方法:
其中先更新hhh,接下来用已经更新过的hhh去更新ddd。
图权重
基于图的句法解析,它的拓扑结构主要由边权重αijt\alpha^t_{ij}αijt决定,所以如何定义αijt\alpha^t_{ij}αijt对图网络来说极其重要。本文使用了三种方式给αijt进行赋值\alpha^t_{ij}进行赋值αijt进行赋值
给$\alpha^t_{ij}$0、1值以建立稀疏图:
在这种情况下,节点只关注最高概率的头节点。
给αijt\alpha^t_{ij}αijt概率赋值:
给αijt\alpha^t_{ij}αijt平均赋值:
训练
对于标准树TTT,损失函数为:
对于GNN的每一层,损失函数为:
总的损失函数为L=λ1L0+λ2L′L= \lambda_1L_0+\lambda_2L'L=λ1L0+λ2L′,实验中λ1=1,λ2=0.5\lambda_1=1, \lambda_2=0.5λ1=1,λ2=0.5。
实验
本文使用PTB 3.0(English Penn Treebank)和CoNLL2018中的通用依存数据(UN 2.2)进行实验。使用了五个参数:UAS(Unlabeled attachment scores),LAS(Labeled attachment scores),UCM(Unlabeled complete match),LCM(Labeled attachment scores)和(Label accuracy score)。
结论
文章研究了将高阶特征有效的结合到基于神经图网络(GNN)的依存句法分析。本文并没有显式地从中间解析树中提取高阶特征,而是开发了一种更强大的依存树节点表示,它可以简洁高效地捕获高阶信息,并使用GNN来学习依存树节点表示,并讨论了GNN更新和聚合函数的几种新配置。
扫码识别关注,获取更多新鲜论文解读