Every Document Owns Its Structure: Inductive Text Classification via Graph Neural Networks论文理解

[标题]
《Every Document Owns Its Structure: Inductive Text Classification via Graph Neural Networks》

[代码地址]
https://github.com/CRIPAC-DIG/TextING

[知识储备]
什么是GNN(Graph Neural Networks)?

什么是transductive learning 和 inductive learning?

目录

一、背景与概览

1.1 相关研究

文本分类主要依赖于特征的建模。传统方法有朴素贝叶斯、k近邻、支持向量机,特征工程耗费很大;深度学习方法有RNN、CNN、TextCNN、TextRNN、TextRCNN,但缺乏长距离或者是非连续的单词交互;为了解决序列模型的缺陷,图卷积神经网络方法有TextGCN,之前的方法中,1. 单词之间的上下文关系被忽略了 2. 在训练过程中,测试样本也被构建成图,这导致它们天生具有传导性(transductive),不容易进行归纳学习(inductive)。(意思是:TextGCN把test data作为unlabeled data和train data一起构建成图,在训练过程中就利用了test data的特征,这是transductive learning;而inductive learning也同样是这样做的,但一起构建成图的哪些unlabeled data只是单纯的不带标签的数据,而不是test data,真正的test data并不参与训练,而是另外进行预测)

1.2 贡献点

-使用GNN,每篇文章是单独的图,单词之间的上下文关系可被学习
-inductive learning而非transductive learning
-SOTA

1.3 相关工作

基本都在相关研究中

二、模型

2.1 Graph Construction

Every Document Owns Its Structure: Inductive Text Classification via Graph Neural Networks论文理解

和textgcn不同,其图中没有句子节点,而都是单词节点,图的符号表示如下:
Every Document Owns Its Structure: Inductive Text Classification via Graph Neural Networks论文理解
其中,V是单词节点的集合, E是边的集合,和textgcn一样,使用固定大小的窗口,描述了单词之间的共线信息(可能也用的是PMI指标)
看到这里觉得单词的上下文关系似乎依然没有解决?

2.2 Graph-based Word Interaction

Every Document Owns Its Structure: Inductive Text Classification via Graph Neural Networks论文理解
Every Document Owns Its Structure: Inductive Text Classification via Graph Neural Networks论文理解
Gated Graph Neural Networks的过程,这里的A是邻接矩阵,公式(1)是GCN的内容,在此基础上,借由门控机制的思想,引入z(更新门)和r(重置门),来做进一步的计算。图没看懂…

2.3 Readout Function

Every Document Owns Its Structure: Inductive Text Classification via Graph Neural Networks论文理解
Every Document Owns Its Structure: Inductive Text Classification via Graph Neural Networks论文理解
公式(6)是图中的attentin layer,但似乎是每一个单词( h v h_v hv​)有一个由自己计算而来的权重( s i g m o i d ( f 1 ( h v ) ) sigmoid(f_1(h_v)) sigmoid(f1​(hv​)))。
公式(7)是图中的 average pooling 和 max pooling,但不知道为什么 average pooling在图重是Sum…

2.4 training object

Every Document Owns Its Structure: Inductive Text Classification via Graph Neural Networks论文理解
得到了document的向量表示,拿去分类。

2.5 Model Variant

缝合怪似乎又出现了。
a multichannel branch TextING-M利用投票机制,第一个voter就是上述TEXTING模型,第二个voter是TextGCN,具体看代码。

三、实验与评估

超参数

  • lr=0.01
  • dropout=0.5
  • word interaction step:视数据集而定
  • sliding window size:视数据集而定

使用glove embedding
Every Document Owns Its Structure: Inductive Text Classification via Graph Neural Networks论文理解

四、结论与个人总结

  • 词向量使用glove
  • 图中不存在句子节点,句子向量表示通过pooling得到
  • GNN感觉和GCN差不多,但文中用的是GGNN
  • 如何批处理?

五、参考

如何理解 inductive learning 与 transductive learning? - CharlesFeng的回答 - 知乎
https://www.zhihu.com/question/68275921/answer/529156908

六、拓展

下面是部分代码的理解。

上一篇:NET CLR via C#读书笔记 - 第十一章 事件


下一篇:CLR via C# 笔记 -- 委托(17)