技术综述十二:图网络的基本概念

一笑倾城 发表于 2021/06/01 14:56:12 2021/06/01
【摘要】 从与卷积网络的比较中,理解图卷积网络

基础概念

  笔者认为,图的核心思想是学习一个函数映射 f ( . ) f(.) ,借助该映射,图中的节点可以聚合自己的特征与邻居节点的特征,从而生成该节点的新特征表示。

Figure 1. 图的一般推理过程[1]

图神经网络 Vs. 卷积神经网络

  如图2所示,卷积神经网络的输入数据一般是规则的矩阵类型数据,例如图片。每个节点和其它节点的空间关系是固定的。而图神经网络的输入数据一般表现为不规则的拓扑结构,节点与节点的关系非常复杂,节点间的空间关系一般不做约束,节点间是否存在连接以及连接的数量不做约束。复杂的网络还涉及到连接的方向和子图等概念。

Figure 2. 图网络和卷积网络[1]

  如图3所示,如果将图的每个节点等价视为图像中的每个像素,其实,图的工作过程可以类比CV中的经典问题:semantic segmentation。

Figure 3. semantic segmentation[2]

图的基础组件及其实现

  图在工作过程中,主要需要处理的问题有两个,一个是节点信息的提炼方式;另一个是邻近节点的搜索方式。整理如下:

邻近节点的搜索方式:

  • 每个节点考虑全部其它节点
  • 基于欧氏距离,只搜索近邻N个节点

节点信息的提炼方式:

  • MLP+Max Pooling直接进行特征融合
  • 基于attention,对周边节点进行加权平均
    1. 普通attention
    2. Self-attention (Bert/Transformer)

  其中,邻近节点的搜索方式有两种,基于Bert作为图卷积网络的方案,一般是全部节点统一输入,每个节点在进行self-attention时,统一考虑其它节点,因此,可以视为全局搜索,典型的样例是LayoutLM。而基于某种距离度量搜索邻近的节点的方式, 一般来说更加注重局部信息。可以依据特定任务进行一些定制化的距离设计。缺点是过于注重局部信息,不能让图网络充分发挥能力。
  另一方面是节点信息的提炼方式,简单的方法就是直接对相邻节点做 1 × 1 1\times1 卷积,再进行max pooling。目前更流行的方法是基于attention,普通attention,如图4所示,输入特征一般由中心节点特征 t i t_i 和相邻节点 t j t_j ,以及彼此的距离等信息拼接而成,考虑周围32个节点,则生成32个特征,并在此基础上计算权重向量 α i \alpha_i ,得到这32个特征向量的权重,再进行加权和,得到节点 i i 的新特征表达 t i t'_i 。基于self-attention的方法工作机制类似。

Figure 4. 图节点信息的提炼过程

总结

  最后,图卷积和卷积之间的一些对比整理在图5中。我们可以观察到一些有趣的现象,其实在卷积网络中,也有邻近节点搜索方式的一些工作,例如空洞卷积和可变形卷积。

Figure 5. 图网络和卷积网络工作方式比较

 
 
【参考文献】
[1] Wu, Zonghan, et al. “A comprehensive survey on graph neural networks.” IEEE transactions on neural networks and learning systems (2020).
[2] Long, Jonathan, Evan Shelhamer, and Trevor Darrell. “Fully convolutional networks for semantic segmentation.” Proceedings of the IEEE conference on computer vision and pattern recognition. 2015.

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区),文章链接,文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:cloudbbs@huaweicloud.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。