论文阅读总结(Text Level Graph Neural Network for Text Classification)

论文阅读总结(Text Level Graph Neural Network for Text Classification)
From EMNLP2019


论文链接:Text Level Graph Neural Network for Text Classification

Abstract

作者简述了当前GNN文本分类的现状,指出了先前大多数方法的问题:主要都是在整个语料库上建图(Transductive learning),不支持在线测试并且导致大量存储空间消耗。然后作者提出了他们的模型:为每个文档单独建图,参数全局共享,通过在text上的小滑窗来建图的边(作者说这样更好的捕捉了局部特征并且大大减少了需要消耗存储空间的边数),实验得到了SOTA的效果。
总的来说:就是SOTA+少存储消耗+inductive learning。

1. Introduction

此部分作者回顾了text classification的发展及当前主流方法,并指出当前大多数GNN-based model的缺点(transductive learning+高存储消耗),然后引出自己的模型。

2. Method

此部分作者解释了自己的模型,包括建图及建立的消息传播机制。

2.1 Building Text Graph

首先,对于每一个text,给出了文本图的节点集及边集表示:
论文阅读总结(Text Level Graph Neural Network for Text Classification)其中,ri为text中的i号单词的节点表示,初始化为d维的词嵌入,通过训练更新;边权eij通过大小为p的滑动窗口在文本中滑动得到。
text的节点表示和边权都是全局共享的矩阵。
论文阅读总结(Text Level Graph Neural Network for Text Classification)


2.2 Message Passing Mechanism

作者使用了非谱类的方法作为消息传播机制(MPM)。对于每个节点,MPM先聚合其邻接节点的信息,然后更新节点的特征表示:
论文阅读总结(Text Level Graph Neural Network for Text Classification)
其中M是邻居节点聚合得到的消息(reduction function为max:结合所有邻居节点的每一维的max value作为新张量),eane_{an}是边权,rar_{a}是n节点的邻居节点a的特征。
得到M之后通过可训练参数η\eta得到节点n的新特征表示,其中η\eta决定了节点n原来的特征保留多少。
MPM使得节点的表示可以通过邻居节点进行变换,因此对于多义词也能得到很好的处理。其次,对text建立的图,其参数矩阵是全局共享的,因此词的表示也可以带来全局信息。


最终,通过该text的所有节点表示经过线性变换+非线性变换再通过softmax层预测文本的标签。(本文的MP框架跳过了Readout得到图特征的操作)
论文阅读总结(Text Level Graph Neural Network for Text Classification)以上训练过程是通过交叉熵损失函数来最小化真实标签和预测标签之前的损失。(其中真实标签gig_{i}是one-hot编码的向量)

论文阅读总结(Text Level Graph Neural Network for Text Classification)

3. Experiments

作者使用了300维的随机初始化GloVe词向量,对于所有的数据集,将训练集划分了10%作为验证集,当验证集损失超过10轮没有降低时即停止训练。
从实现效果可以看出,对比baseline模型,作者的模型取得了SOTA的效果。
论文阅读总结(Text Level Graph Neural Network for Text Classification)
同时,作者与TextGCN对比了存储消耗,从实验结果可以看出,作者模型不但取得SOTA的效果,而且所需存储边数大大降低,减少了存储开销。
论文阅读总结(Text Level Graph Neural Network for Text Classification)