首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >ICLR'22| 如何提升任意GNN的表现能力?

ICLR'22| 如何提升任意GNN的表现能力?

作者头像
Houye
发布2022-06-06 08:23:05
发布2022-06-06 08:23:05
5000
举报
文章被收录于专栏:图与推荐图与推荐

  • 论文地址:https://openreview.net/pdf?id=Mspk_WYKoEH
  • 欢迎关注小编知乎:戴鸽

消息传递是图网络中的一种常见方法了,一般来说都是传一个节点信息,但是在这篇文章中,作者认为局部子图信息也是能传信息的,并且这种信息一样能提高模型表现能力,使其能抓住更多的局部信息。另外,这个模型是可以通用到任意一个图网络上的,包括但不限于GCN,GIN。

Introduction

图网络通常采用信息传递的方式收集邻居节点信息,然后采用聚合的方法更新当前节点。然而这样的方法经常被认为不能完整的刻画一张图。因此,作者将一个图分解为多个子图来增强图网络的表达能力,并且,这种方法在任何图网络上都是能适用的。如图所示,子图分割的方法采用以一个点为中心,采样其邻居构成一个小图,这种操作参考了CNN的设计,将每个点视作一个像素,这样每个小子图都是一个kernel,因此这个方法也叫做GNN-AK(GNN As Kernel)。

由于参考了CNN的做法,所以Base GNN本质上是统一的一套参数。图中的Emb(i | Sub[j])项表示每个节点的信息都是由某种子图中的信息带来的,并且,作者定义了3中聚合器来整合这些信息。

Method

考虑到这些节点可能在不同子图里被反复选择,造成信息冗余,因此,对整个图而言,是有一个对子图的采样的,如图所示:

采样方法包括随机采样(Random Sampling),按照最远节点距离采样(Farthest Sampling)和最小重叠子图采样(Min-set-cover sampling)。

Experiment

实验方面选用了大规模的数据包括ZINK-12K,CIFAR10,一些来自OGB的数据包括MolHIV,MolPCBA和一些小规模数据包括MUTAG,TUDataset等。实验机器为RTX-A6000。具体为:

在大图上的总体表现为:

可以发现,加入GNN-AK+的方法只要不超计算资源,基本都能有效提高实验结果,如果GNN-AK+都超时的数据,那么其他图网络模型也大概率会超时。其运算资源上的对比如下:

R表示采样子图的个数,一般要用的话取3就好了,能在较为有限的时间和资源里取得较优的表现。

另外加一个小图上的实验效果:

虽然也是不错,但效果提升没有大图数据上的明显。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-04-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 图神经网络与推荐系统 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 📷
    • Introduction
    • Method
    • Experiment
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档