【GNN综述3】Deep Learning on Graphs: A Survey

转载LemonQC

论文 Deep Learning on Graphs: A Survey paper

翻译见 1  2  3

主要分为三大类(分类比较明确):半监督学习包括图神经网络和图卷积神经网络;无监督学习图自编码机;最新的进展,图对抗神经网络和图强化学习。分析了不同方法的特点和联系。

未来研究方向:1)不同类型的图。图数据的结构各异,现有的方法不能够适用于所有场景。大多数模型针对同质图,包含不同形态的异质图研究很少。标定图、超图等。2)动态图。社交网络中,关系的建立于remove。3)可解释性。4)复合性

目录

引言:

1、Introduction:

2、符号和假设。

3、分类

1 半监督--GNNS图循环神经网络:

2、半监督--GCN图卷积神经网络

3、无监督--GAE图自编码器

4、最新进展--Graph Reinforcement Learning图强化学习

5、最新进展--GAN图对抗方法

3、总结和讨论


引言:

图神经网络作为一种愈发火热的机器学习技术,在很多的领域展现出了独特的作用力。本人在研一的主要研究方向是 服务机器人云服务平台的研究及智能调度算法的研究,趁着新冠肺炎期间,在家利用接近一个月的时间内,研究了图神经网络相关的基础内容,同时复现一些经典的算法,当然,这些算法也是基于github上一些开源代码参考。现阶段主要做的是supervised-graph-classification方面的内容,想对之前阅读的优秀的文章进行一下分享。加之本人能力有限,文中难免出现偏颇或者错误之处,也希望有兴趣阅读的同学们能积极的指正,我们一起学习,共同进步。

深度学习在大量领域表现出明显的效果,无论是语音,图像,还是自然语言处理。但是由于图结构数据具有独特的属性,深度学习并不是自然的适用。最近,在这个方向进行了大量的研究极大地促进了图分析技术。调研了可以应用于图的不同种类深度学习方法,主要分为三大类:半监督学习包括图神经网络和图卷积神经网络;无监督学习图自编码机;最新的进展,图对抗神经网络和图强化学习。分析了不同方法的特点和联系。

【GNN综述3】Deep Learning on Graphs: A Survey_第1张图片

该文章作为比较经典的综述,将现阶段研究方法基于其模型架构分为五个方面图循环神经网络(Graph Recurrent Neural Networks)、图卷积神经网络(Graph Convolutional Networks)、图自编码器(Graph Autoencodrs)、图强化学习(Graph Reinforcement Learning)及图对抗方法(Graph Adversarial Methods)。在不同的综述中,一般的分类方式不太一致,我们可以参考其包含的相应的方法进行研究。

【GNN综述3】Deep Learning on Graphs: A Survey_第2张图片

1、Introduction

图在现实世界中具有复杂的结构,可以包含大量的信息,如何有效的结合深度学习算法是一个很值得研究的点,文中引出了应用传统深度学习框架几个存在的问题,如图1所示。

【GNN综述3】Deep Learning on Graphs: A Survey_第3张图片

图1.存在的问题

文中指出一些解决上述问题的方法,主要包含监督、非监督、半监督(经典的gcn,文中并未指明该方法,不过个人以为这个可能是研究热点)、卷积和递归等等。作者将这些方法进行归类,划分为5小类,这些种类的主要特性如下表1所示。

【GNN综述3】Deep Learning on Graphs: A Survey_第4张图片

相关工作分析:文献[7]总结了一些在manifold(流式学习)上的GCN和CNN方法,并且通过几何深度学习对这些算法进行研究。文献[9]指出了如何在统一的框架(图网络)上,使用CNN和GCN进行关系推理。Lee等人研究了图的注意力模型[10],Zhang等人对GCN进行总结[11],Sun等人简要的研究了图的对抗攻击[12]。当然,貌似他们课题组的也对某些相关方面进行研究,有兴趣的可以参考综述《Graph Neural Networks: A Review of Methods and Applications》、《A comprehensive survey on graph neural networks》,将来我也会对这些文献进行总结分享。

文中还提到,Network embedding也是一个很火的研究点,可以实现将节点嵌入到低维的向量空间。和本文所提及的方式的不同是,本文专注于可以应用于图的不同的方法,也包括非深度学习方法(比如说基于Kernel的算法,如GK、WL)。

2、符号和假设。

主要叙述了一些符号和假设,建议在阅读的时候拿个小本本记一下,方便查找。当你阅读了比较多的论文的时候,对这些符号就不是很陌生了。下面核心内容的每一章,为了方便总结查看,故将相关的内容和算法做成思维导图。

【GNN综述3】Deep Learning on Graphs: A Survey_第5张图片

3、分类

1 半监督--GNNS图循环神经网络:

图神经网络(Graph Neural Networks, GNNs)是最早明确针对图数据的半监督深度学习方法。详情见:图神经网络模型。GNNs为了达到图的稳定状态,假设扩散函数是一个压缩映射,限制了建模能力,同时为了达到图的稳定状态,需要在梯度下降步之间进行多次迭代,计算复杂度高。
GNNs经过不断改进,应用广泛:CommNet, Interaction Network, VAIN, Relation Networks.

 

在图卷积神经网络中,GRU和LSTM及其改进的方法是长用来构建序列数据的方式,文章亦是从节点层级和图层级的RNN方式对之前论文的研究方法进行分类,具体方法如下表2

【GNN综述3】Deep Learning on Graphs: A Survey_第6张图片

表格2.图循环神经网络

构建的思维导图如下图2.

【GNN综述3】Deep Learning on Graphs: A Survey_第7张图片

图2. 图神经网络

图循环神经网络在GNN的基础上,将参数函数或者LSTM、GRU等方法应用在里面,捕获时间和空间信息,提升其在图层面和节点层面的分类或者其他任务的精度。

2、半监督--GCN图卷积神经网络

图卷积神经网络模仿CNN的特性,通过设计相应的卷积层和readout操作,学习局部和全局的结构特征,也可以通过反向传播来进行训练。在原作的表格4中对不同图卷积网络进行对比,有兴趣的可以从中选择适合自己研究方向的算法进行研究。

【GNN综述3】Deep Learning on Graphs: A Survey_第8张图片

在本章中,作者从卷积运算、readout操作及GCN的拓展(原文是improvement)三个方面阐述相关的GCN(详情见)研究。据此,绘制的思维导图如下图3

【GNN综述3】Deep Learning on Graphs: A Survey_第9张图片

图3. 图卷积神经网络

图卷积神经网络作为目前主流的图网络框架,在此基础上进行修改的算法不胜枚举,在我所研究的图分类领域中,大部分都是将自己的算法和传统的kernel算法和几个常见的图算法进行对比。由此可见,在这方面上改进自己的聚合算子或者更新算子(即readout操作)也许可以实现较好的分类效果或者提升自己想做的任务结果精度。

3、无监督--GAE图自编码器

图自编码器常被用来学习非线性、低秩图的节点表示,如果你接触过图像处理中的编码解码器的话应该会不难理解。在图学习中一些常见的GAE列举如下图4(原文截图),大家也可以参照原文的table.5。从图中或者说从编码器的常用方法来看,研究者比较专注的优化目标是降低重构损失的数值,这一块我们是否可以采用一些智能优化算法来寻求参数的最优解呢?可以考虑一下。

【GNN综述3】Deep Learning on Graphs: A Survey_第10张图片

图4. 常见的GAE

对于该章,作者主要从自编码器、变分编码器和编码器方面一些拓展来阐述总结的。依照惯例,绘制的思维导图如下图5所示。

【GNN综述3】Deep Learning on Graphs: A Survey_第11张图片

图5. 图自编码器

图自编码器的大部分思想主要是从图像处理中的自编码器和GAN网络中迁移而来,本人在这方面的研究不是很多,有兴趣的同学可以去github找几个关于GAN网络相关的项目,个人感觉还是比较好玩的。

4、最新进展--Graph Reinforcement Learning图强化学习

由于目前强化学习在游戏等AI任务上展现出的优势,得到许多研究者的青睐。此外,它可以依据反馈学习,也就是reward-action。而且,RL在处理不可差分的目标和限制上具备很大的优势。本人在研一期间,对单智能体有过一段时间的研究,如果有兴趣的话,可以阅以一下Sutton的《An Introduction to Reinforcement Learning》。

在强化学习中,核心就是如何设计一个好的回报奖励函数,我们也可以将这种方式迁移到图处理中。作者对此总结如下图6,参见原文的table.6

对此,构建的思维导图如下图7所示。

【GNN综述3】Deep Learning on Graphs: A Survey_第12张图片

图6. 图强化学习

在图强化学习中,虽然单智能体强化学习的算法不少,但是很多还没有很好的结合到GNN中,也许将来这也是一个很好的结合点。

5、最新进展--GAN图对抗方法

图对抗方法主要包含两个方面:图对抗训练和图对抗攻击。作者在原文中对其主要的方法和特性进行总结(Table.7)。我直接截取原图,如下图7

【GNN综述3】Deep Learning on Graphs: A Survey_第13张图片

图7. 图对抗方法

当然,构建的思维导图如下图8

【GNN综述3】Deep Learning on Graphs: A Survey_第14张图片

图8. 图对抗

由于我对这方面没有什么研究,暂时也想不出比较好的研究点。在文中作者指出,大部分的文中都是有目的得攻击,比如,错误的将一些节点进行分类等等。极少的paper提及到non-targeted攻击,感兴趣的同学可以对这方面进行研究、

3、总结和讨论

作者在最后一章针对图神经网络的应用、未来的研究方向及实现等三个大的方面进行总结。

应用方面,作者提到基于图的方法应用在方方面面,如构建社会关系网络、推荐系统、化学分子分析及疾病预测等。两个值得注意的方面是,①将模型和其相关领域的知识进行结合②基于图的模型是建立在其他架构的基础上,而不是独立的工作③将不同的模型集成

实现方面,个人比较倾向于用python相关的库,比如pytorch geometric和 deep graph library,他们里面封装了基本的图神经网络搭建的函数,可以配合networkx来使用,利用matplotlib来绘制图形。这些库在github上都已经开源,在以后,我也会将这方面的研究和大家进行分享。

研究方面,作者指出了几个未来的研究方向,①对于一些没有研究的图结构如何使用新的模型,也就是解决异构图的问题②对现有的一些模型实现组合③如何处理动态图④如何保证所提出算法和模型的可解释性和鲁棒性。

在未来方向方面:1)不同类型的图。图数据的结构各异,现有的方法不能够适用于所有场景。大多数模型针对同质图,包含不同形态的异质图研究很少。标定图、超图等。2)动态图。社交网络中,关系的建立于remove。3)可解释性。4)复合性

个人心得

至此,这个简短的综述也算是分享完成了,由于本人对其中一些内容没有涉及,所以只能简单的复述原著中的言论。在以后的工作中,还需要阅读大量的相关文献,对一些小概念、基本概念才能有自己独到的见解。当然,也十分希望看到这篇文章的同学,可以有所启发,针对文中的问题,大家可以直接发邮件([email protected])或者留言,我们一起学习,共同进步。

 

 

 

你可能感兴趣的:(图神经网络)