大家好,欢迎来到IT知识分享网。
机器之心发布
机器之心编辑部
近年来,图神经网络的研究异常火爆,被各大顶会录取的文章数量爆炸式增长。然而,目前大部分图卷积网络,尤其是面向节点分类的网络,都是浅层网络。这些模型分类效果往往随着深度加深而变差(即使使用残差连接),这与用于图片分类的卷积网络动辄超过几十层的现象很不一致。图卷积神经网络变深之后难以训练的现象严重制约了其表达能力。所以,如何有效的训练超深图卷积网络是图学习研究的一个重大挑战。这项工作由腾讯 AI Lab 与清华大学合作完成。
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图1 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
腾讯 AI Lab 和清华大学的这项研究表明,图神经网络无法做深由两个原因造成:过拟合 (Overfitting) 和过平滑(Oversmoothing)。为了解决这两个问题,文章提出了一种简洁但非常有效的方法:随机删边技术,DropEdge,极大提升了超深图卷积网络的训练效率和节点分类效果。值得注意的是,文章投稿到 openreview 的时候就引来了众多研究同行的关注。文章正式被接收后,图灵奖获得者 Yoshua Bengio 的团队成员 Petar Veličković(注意力图网络 GAT 的发明者)在 openreview 平台上也给与了关注与好评。
- 论文地址:https://openreview.net/forum?id=Hkx1qkrKPr
- 代码地址:https://github.com/DropEdge/DropEdge
引言
图神经网络(GNN)在近年取得了长足的发展。非常多的图神经网络的模型,例如图卷积神经网络(GCN),图注意力网络(GAT)等,在各种图学习的应用上都取得了非常不错的结果。但是,现在大部分的图卷积网络结构,其实都是浅层的(两层)。这种浅层网络极大的限制了图卷积网络的表达能力。最近,基于卷积神经网络里面的经验,有一些对图卷积网络做深的模型修改尝试。但是这些工作并没有真正去分析为什么图卷积网络很难做深以及去解释模型修改在图卷积网络里面是有效的。
这篇论文希望能够对图卷积网络不能做深这一问题得到一个完善的理论分析;并且基于理论的结果,寻找到可以解决深度图卷积网络训练的问题:过拟合 (Overfitting) 和过平滑(Oversmmothing)。在这里,过拟合指的是使用复杂模型去拟合少量数据的时候造成的泛化能力变差的情况。过拟合的现象在深度学习模型中是广泛存在的。
而过平滑则是指在图神经网络消息传递过程中,所有节点的输入特征会收敛到一个和输入无关的子空间的过程。这一过程会导致输入 GCN 的特征失效并造成梯度消失。过平滑是 GCN 模型特有的问题,它造成了深层图神经网络的训练困难。
下图的虚线部分是原始的 4 层和 8 层 GCN 在 Cora 数据集上的训练曲线(这里为了更好展示过拟合和过平滑,取消了 GCN 层中的 bias),可以看到,在 GCN-4 上,验证集 (Validation Set) 的损失函数在训练经过一定轮数后反向增长。这个增长是优于过拟合。而在 GCN-8 上,训练集 (Training Set) 上的损失函数则根本没有下降,这是因为过平滑的存在,导致 GCN-8 上训练失效。
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图3 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
文章定义了一个 subspace 和-smoothing 的概念去刻画过平滑这一现象。具体地,
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图5 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
其中为一个 GCN 层。是正则化后的邻接矩阵,为当前层参数。通过将过平滑的收敛目标定义为一个子空间而非一个固定点,-smoothing 可以刻画包含非线性激活函数和参数矩阵的 GCN。
DropEdge
本质上,减缓过平滑的影响就是要去增加-smoothing layer 的层数,以及减少收敛到子空间
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图7 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
的信息损失。基于此,文章设计了一种非常简单但是有效的方法 DropEdge。在每轮训练的时候,DropEdge 会随机去掉输入的图上的边,即会将邻接矩阵
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图9 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
中
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图11 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
的非零元素置 0,
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图13 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
是删边概率。如果用
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图15 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
表示 DropEdge 后的邻接矩阵,则
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图17 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
,
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图19 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
是被去掉的边的邻接矩阵。在得到
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图21 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
后,对其进行正则化得到
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图23 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
代替
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图25 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
进行计算。
基于 relaxed -smoothing layer 的定义,文章证明了经过 DropEdge 后的邻接矩阵
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图27 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
在进行 GCN 计算中可以减弱过平滑对模型的影响,即:
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图29 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
这种随机删边技术,可以看作是 Dropout 在图结构上的推广:Dropout 是通过丢掉特定的特征来实现模型内部的 Ensemble,而 DropEdge 则是通过丢掉边来实现 GNN 的 Ensemble,所以 DropEdge 也有防止 Overfitting 的作用。有趣的是,这种防止 Overfitting 的作用可以和 Dropout 一起使用来防止模型过拟合。同时,DropEdge 作为一个前处理的步骤,可以和任意 GNN 方法结合,具有非常强的普适性。
从图 1 可以看出,在加了 DropEdge 后,GCN-4 在验证集的损失函数不再升高,而 GCN-8 可以成功进行训练,得到下降的损失函数。这验证了 DropEdge 可以在防止过拟合和过平滑两个方面提升深层 GNN 的训练效率和模型效果。
为了进一步验证这一简单方法的有效性,文章在不同模型,不同层数,不同数据集上进行了大量的实验,可以看到不同模型添加 DropEdge 可以显著提升节点分类任务的效果:
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图31 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
同时,在四个数据集上,添加 DropEdge 后均可以超过现有的 STOA 模型,值得注意的是,大部分的结果都是在大于等于 4 层图神经网络上得到的。
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图33 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
另外,下表也展示了 Dropout 和 DropEdge 在减弱过拟合上的协同效果:
![如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge插图35 如何让图卷积网络变深?腾讯AI Lab联合清华提出DropEdge](https://yundeesoft.com/wp-content/uploads/2022/11/2022112316405970.jpg)
总而言之,这篇文章提出了一个新颖且有效的方法 DropEdge 来提高深度图卷积网络训练效率和在节点分类任务上的性能。DropEdge 具有很好的通用性可以很方便地应用到已有的图卷积网络的架构中。更重要的是,文章给出了图卷积网络训练过程中遇到的过平滑现象详细严谨的理论描述,这为未来研究人员进行深度图神经网络的研究提供了非常重要的指导意义。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/73911.html