基于GNN,强于GNN:胶囊图神经网络的PyTorch实现 | ICLR 2019
https://www.toutiao.com/a6672580496238576140/
【新智元导读】胶囊图神经网络(CapsGNN)是在GNN启发下诞生了基于图片分类的新框架。CapsGNN在10个数据集中的6个的表现排名位居前两名。与所有其他端到端架构相比,CapsGNN在所有社交数据集中均名列首位。
本日Reddit上热议的一个话题是名为“胶囊图神经网络”(CapsGNN)的新框架。从名字不难看出,它是受图神经网络(GNN)的启发,在其基础上改进而来的成果。
CapsGNN框架的作者为新加坡南阳理工大学电气与电子工程学院的Zhang Xinyi和Lihui Chen,该研究的论文将在ICLR 2019上发表。
目前,从图神经网络(GNN)中学到的高质量节点嵌入已经应用于各种基于节点的应用程序中,其中一些程序已经实现了最先进的性能。不过,当应用程序用GNN学习的节点嵌入来生成图形嵌入时,标量节点表示可能不足以有效地保留节点或图形的完整属性,从而导致图形嵌入的性能达不到最优。
胶囊图神经网络(CapsGNN)受到了胶囊神经网络的启发,利用胶囊的概念来解决现有基于GNN的图嵌入算法的缺点。CapsGNN以胶囊形式对节点特征进行提取,利用路由机制来捕获图形级别的重要信息。因此,模型会为每个图生成多个嵌入,从多个不同方面捕获图的属性。
CapsGNN中包含的注意力模块可用于处理各种尺寸的图,让模型能够专注处理图的关键部分。通过对10个图结构数据集的广泛评估表明,CapsGNN具有强大的机制,可通过数据驱动捕获整个图的宏观属性。在几个图分类任务上的性能优于其他SOTA技术。
胶囊图神经网络基本架构
上图所示为CapsGNN的简化版本。它由三个关键模块组成:1)基本节点胶囊提取模块:GNN用于提取具有不同感受野的局部顶点特征,然后在该模块中构建主节点胶囊。 2)高级图胶囊提取模块:融合了注意力模块和动态路由,以生成多个图胶囊。 3)图分类模块:再次利用动态路由,生成用于图分类的类胶囊。
注意力模块
在CapsGNN中,基于每个节点提取主胶囊,即主胶囊的数量取决于输入图的大小。在这种情况下,如果直接应用路由机制,则生成的高级别的胶囊的值将高度依赖于主胶囊的数量(图大小),这种情况并不理想。因此,实验引入一个注意力模块来解决这个问题。
注意力模块架构。首先压平主胶囊,利用两层全连接神经网络产生每个胶囊的注意力值。利用基于节点的归一化(对每行进行归一化)来生成最终注意力值。 将标准化值与主胶囊相乘来计算标度胶囊。
实验设置与结果
我们验证了从CapsGNN中提取的图嵌入与大量SOTA方法的性能,与一些经典方法的最优性能做了对比。此外还进行了实验研究,评估胶囊对图编码特征效率的影响。我们对生成的图/类胶囊进行了简要分析。实验结果和分析如下所示。
表1为生物数据集的实验结果,表2为社会数据集的实验结果。对于每个数据集,以粗体突出显示前2个准确度。
与所有其他算法相比,CapsGNN在10个数据集中的6个的表现排名位居前两名,并且在其他数据集上也实现了基本相当的结果。与所有其他端到端架构相比,CapsGNN在所有社交数据集中均名列首位。
表1:生物数据集的实验结果
表2:社交数据集的实验结果
胶囊的效率
在胶囊的效率测试实验中,GNN的层数设置为L = 3,每层的通道数都设置为Cl = 2。通过调整节点的维度(dn)、图(dg)、胶囊和图形、胶囊的数量(P)来构造不同的CapsGNN。
表3:胶囊效率评估实验中经过测试的体系结构详细信息
图3:特征表示效率的比较。横轴表示测试架构的设置,纵轴表示NCI1的分类精度。
图胶囊的可视化
分类胶囊的可视化
胶囊图网络:基于GNN的高效快捷的新框架
CapsGNN是一个新框架,将胶囊理论融合到GNN中,来实现更高效的图表示学习。该框架受CapsNet的启发,在原体系结构中引入了胶囊的概念,在从GNN提取的节点特征的基础上,以向量的形式提取特征。
利用CapsGNN,一个图可以表示为多个嵌入,每个嵌入都可以捕获不同方面的图属性。生成的图形和类封装不仅可以保留与分类相关的信息,还可以保留关于图属性的其他信息,这些信息可能在后续流程中用到。CapsGNN是一种新颖、高效且强大的数据驱动方法,可以表示图形等高维数据。
与其他SOTA算法相比,CapsGNN模型在10个图表分类任务中有6个成功实现了更好或相当的性能,在社交数据集上的表现尤其显眼。与其他类似的基于标量的体系结构相比,CapsGNN在编码特征方面更有效,这对于处理大型数据集非常有用。
关于开源代码和模型的一些补充信息
数据集
代码会从input文件夹中获取训练图,图存储形式为JSON。用于测试的图也存储为JSON文件。每个节点id和节点标签必须从0开始索引。字典的键是存储的字符串,以使JSON能够序列化排布。
每个JSON文件都具有以下的键值结构:
边缘键(edges key)具有边缘列表值,用于描述连接结构。标签键具有每个节点的标签,这些标签存储为字典- 在此嵌套字典中,标签是值,节点标识符是键。目标键具有整数值,该值代表了类成员资格。
输出
预测结果保存在output目录中。每个嵌入都有一个标题和一个带有图标识符的列。最后,预测会按标识符列排序。
训练CapsGNN模型由src /main.py脚本处理,该脚本提供以下命令行参数。
论文地址:
https://openreview.net/pdf?id=Byl8BnRcYm
Github相关资源:
https://github.com/benedekrozemberczki/CapsGNN#outputs
基于GNN,强于GNN:胶囊图神经网络的PyTorch实现 | ICLR 2019相关推荐
- 门控图神经网络及PyTorch实现
门控图神经网络及PyTorch实现 前言 GNN预备知识 面对一大串公式不得不说的定理 *巴拿赫不动点定理* GNN信息传播特点--可达性任务展示 具体实现 *隐藏状态的计算* *GNN网络框架* * ...
- 【GNN报告】赵越-图神经网络与异常检测
目录 1.简介 2.图神经网络与异常检测 小引 图异常检测 背景 系统PyGOD 基准BOND综述 未来方向 总结 小结 QA 3.参考 1.简介 摘要: 在这次演讲中,赵越会围绕异常检测与图上的异常 ...
- WWW 2021最佳论文亚军:基于属性补全的异质图神经网络新架构
©作者 | 机器之心编辑部 来源 | 机器之心 4 月 23 日,万维网顶会 WWW-2021(The Web Conference 2021: International World Wide We ...
- 【Mo 人工智能技术博客】现在最流行的图神经网络库 pytorch geometric 上手教学
简介 Graph Neural Networks 简称 GNN,称为图神经网络.近年来 GNN 在学术界受到的关注越来越多,与之相关的论文数量呈上升趋势,GNN 通过对信息的传递,转换和聚合实现特征的 ...
- 【图神经网络】Pytorch图神经网络库——PyG异构图学习
PyG异构图学习 举个例子 创建异构图 Utility函数 异构图Transformations 创建异构图神经网络 自动转换GNN模型 使用异构卷积包装器 部署现有的异构算子 异构图采样 参考资料 ...
- 同构和异构经典图神经网络汇总+pytorch代码
收集一些讲解比较好的博客或者知乎文档,以及对应的代码 1.同构图神经网络-GCN/GAT/GraphSAGE 图卷积:从GCN到GAT.GraphSAGE图卷积:从GCN到GAT.GraphSAGE ...
- python的神经网络模块接法图解_图神经网络库PyTorch geometric
如何快速理解gcn的在文章<一文读懂图卷积GCN>中已经有比较详细的说明,建议没有任何基础的小伙伴先读下理论入门. 我们不能做思想上的巨人,行动上的矮子,因此来学习下如何利用现有的库快速跑 ...
- 图神经网络/GNN(三)-基于图神经网络的节点表征学习
Task3概览: 在图任务当中,首要任务就是要生成节点特征,同时高质量的节点表征也是用于下游机器学习任务的前提所在.本次任务通过GNN来生成节点表征,并通过基于监督学习对GNN的训练,使得GNN学会产 ...
- 图机器学习(GML)图神经网络(GNN)原理和代码实现(前置学习系列二)
图机器学习(GML)&图神经网络(GNN)原理和代码实现(PGL)[前置学习系列二] 上一个项目对图相关基础知识进行了详细讲述,下面进图GML networkx :NetworkX 是一个 P ...
最新文章
- 返回代表指定日期的指定日期部分的整数。返回当前周
- 会计记忆总结之五:会计账薄
- php测试框架,PHPUnit使用
- hihocoder 1107 : Shortest Proper Prefix
- 顺序表基本操作在主函数中的实现
- 深度解析双十一背后的阿里云 Redis 服务
- 远程连接mysql速度慢的解决方法:skip-name-resolve取消DNS的反向解析
- java猜数游戏有次数限制_幼小衔接可以用的超有趣的数学小游戏
- 2022大厂高频面试题之CSS篇
- POI 读取word (word2003 和 word2007)
- linux网络操作系统-实训项目的实现
- 写作技巧~100段作文排比句(81-100段),考试一定用得上,赶紧收藏!
- Connection closed prematurely
- 多目标进化算法详细讲解及代码实现(样例:MOEA/D、NSGA-Ⅱ求解多目标(柔性)作业车间调度问题)
- Apollo Planning决策规划算法代码详细解析 (13): RuleBasedStopDecider
- 概率论与数理统计——多方法解决-双样本方差的F检验-Excel/SPSS
- 【Ubuntu安装后基本配置】
- 解决生产计划排程APS系统七大问题,提升企业生产效率!
- Failed to install metadata com.weiwen.common:weiwen-common-core/maven-metadata.xml: Could not parse
- 【Mac】搜狗输入法干扰声音输出