Every Document Owns Its Structure: Inductive Text Classification via Graph Neural Networks
作者:迪
单位:燕山大学
论文来源:ACL2020
前言
阅读理解任务首先使模型先读懂文章,再根据理解的内容回答问题。因此,理解文章的内容并将其表示出来是非常重要的。使用图结构表达文章的信息,效果是怎样的呢?
概述
文本分类是NLP的基础,在读懂一段文本后需要判别此文本属于哪种类别。而机器阅读理解是模型在理解文本后,根据相应的问题找出对应的答案。因此,文本分类可以当做简单的机器阅读理解。学习这篇论文主要学习该作者怎样对文本进行建模。
本文指出现有的基于图神经网络的方法在解决该问题时,不能捕捉文档的上下文单词关系,也不能实现新单词的归纳学习。作者提出了一种新的文本分类方法-TextING,通过对每篇文档应用滑动窗口单独构图,增强了模型对文本的处理能力。并且单词节点的信息通过门控图神经网络传播到它们的邻居,然后聚集到文档的信息,可以获得更加详尽的单词-单词信息。
主要贡献
- 作者提出了一种新的用于文本分类的图神经网络,其中每个文档都是一个单独的图,在图中可以学习文本级别的单词交互信息。
- 作者的方法可以推广到训练中没有出现的单词,因此该方法适用于归纳学习。
- 相比于文本分类的其他方法,作者达到了SOTA的效果。
模型
TextING包括三个主要部分:构图、基于图的词交互和Readout功能。在每个文档图中,每个单词节点从邻居节点更新自己的信息,最终聚合得到文档图。模型结构如下图所示:
图构建
作者将单词作为图的顶点(重复单词算一个节点),将单词之间的共现表示为边进行文本构图。表示为 G = ( V , E ) G=(V,E) G=(V,E),其中 V V V代表节点集合, E E E代表边集合。通过滑动窗口(默认长度为3)描述词之间的共现关系,即词与词之间的联系,它在图上是没有方向的。
在构建图之前,文本需要进行标准化处理,需要去除停用词。节点信息被表示为 h ∈ R ∣ V ∣ ∗ d h\in\R^{|V|*d} h∈R∣V∣∗d,其中 d d d是向量维度。由于为每篇文档都进行了构图,因此在词交互阶段单词特征信息会被传播并结合到上下文中。
基于图的词交互
在每篇文档形成的图上,作者使用门控图神经网络的方式更新节点的表示。一个节点可以接收相邻节点的信息,然后与自身信息合并以进行更新。由于图在更新时,一次只对一阶邻居进行操作,可以使用这样的结构堆叠 t t t次,以实现更高阶的特征交互。特征交互如下:
a t = A h t − 1 W a z t = σ ( W z a t + U z h t − 1 + b z ) r t = σ ( W r a t + U r h t − 1 + b r ) h ~ t = t a n h ( W h a t + U r h t ⨀ h t − 1 + b r ) h t = h ~ t ⨀ z t + h t − 1 ⨀ ( 1 − z t ) a^t = Ah^{t-1}W_a\\ z^t = \sigma(W_za^t+U_zh^{t-1}+b_z)\\ r^t = \sigma(W_ra^t+U_rh^{t-1}+b_r)\\ \widetilde{h}^t = tanh(W_ha^t+U_rh^t{\bigodot}h^{t-1}+b_r)\\ h^t = \widetilde{h}^t{\bigodot}z^t+h^{t-1}{\bigodot}(1-z^t) at=Aht−1Waz