GNN-Transformer新突破!全局与局部的完美融合

图神经网络(GNN)和Transformer的结合是近年来的研究热点。这类结合不仅能够让两者发挥各自的优势,还能推动模型的创新,提高处理图数据的效率和性能。

具体点讲,通过利用Transformer,我们可以扩展GNN的感受野,包括那些距离中心节点较远的相关节点。相对的,GNN也可以帮助Transformer捕捉复杂的图拓扑信息,并从相邻区域高效地聚合相关节点。

目前,基于Transformer的GNN和图Transformer是GNN+Transformer的两大关键结合方式,这其中有不少个人认为很值得学习的成果。比如GNN 嵌套 Transformer 模型GraphFormers、仅使用一层全局注意力的简化图Transformer模型SGFormer。

本文挑选了18种GNN结合Transformer的最新创新方案和同学们分享,并简单提炼了方法和创新点,配套模型和代码也都整理了。

论文原文和代码需要的同学看文末

TransGNN

TransGNN: Harnessing the Collaborative Power of Transformers and Graph Neural Networks for Recommender Systems

方法:论文提出了TransGNN模型,通过交替使用Transformer和GNN层来相互增强它们的能力。TransGNN利用Transformer层扩大了接受野,并将信息聚合从边缘中解耦,从而增强了GNN的信息传递能力。

为了有效捕捉图结构信息,作者们设计了细致的位置编码,并将其集成到GNN层中,以将结构知识编码到节点属性中,从而提高了Transformer在图上的性能。

为了提高效率,作者们提出了对Transformer进行最相关节点的采样,并提出了两种高效的样本更新策略,以减少复杂性。

创新点:

  • 引入了一种新颖的模型TransGNN,其中Transformer和GNN协同合作。Transformer扩大了GNN的感受野,而GNN捕捉关键的结构信息以增强Transformer的性能。

  • 为了解决复杂性的挑战,作者引入了一种采样策略以及两种更新相关样本的高效方法。

  • 对TransGNN的表达能力和计算复杂度进行了理论分析,揭示了TransGNN相对于具有小额外计算开销的GNN来说具有更大的潜力。

GraphFormers

GraphFormers: GNN-nested Transformers for Representation Learning on Textual Graph

方法:论文提出了一种名为GraphFormers的模型架构,用于文本图的表示学习。该模型将GNN和预训练语言模型相结合,通过将GNN嵌入到语言模型的Transformer层中,将文本编码和图聚合融合为一个迭代的流程,从而更准确地理解每个节点的语义。此外,还引入了渐进学习策略,通过对操纵过的数据和原始数据进行逐步训练,增强了模型整合图信息的能力。

创新点:

  • 图神经网络嵌套Transformer(GraphFormers): 它结合了图神经网络(GNNs)和语言模型。在GraphFormers中,GNN组件与语言模型的Transformer层并行设置,允许文本编码和图聚合的融合。这种架构能够从全局角度精确理解每个节点的语义,从而产生高质量的文本图表示。

  • 两阶段渐进学习:为了增强模型整合来自图的信息的能力,作者引入了一种两阶段渐进学习策略。在第一阶段,模型在被操纵的数据上进行训练,其中节点被随机污染,迫使模型利用全部输入节点。在第二阶段,模型在原始数据上训练以适应目标分布。这种渐进学习策略提高了GraphFormers的表示质量。

  • 单向图注意力:为了减少不必要的计算,作者引入了单向图注意力。只需要中心节点参考其邻居,而邻居节点保持独立编码。这允许缓存和重用现有邻居的编码结果,显著节省了计算成本。

Exphormer

EXPHORMER: Sparse Transformers for Graphs

方法:本文介绍了一种名为EXPHORMER的框架,用于构建强大且可扩展的图变换器。EXPHORMER采用两种机制:虚拟全局节点和扩展图,这些数学特性使得图变换器的复杂度仅与图的大小成线性关系,并且能够证明所得到的变换器模型具有理想的理论特性。

创新点:

  • EXPHORMER是一种新的稀疏图转换器架构,具有可扩展性和竞争力的准确性。

  • EXPHORMER基于两种机制,即虚拟全局节点和扩展图,实现了稀疏注意机制。

  • EXPHORMER的数学特性包括谱扩展、伪随机性和稀疏性,使得图转换器具有与图规模线性复杂度和理想的理论特性。

  • 在GraphGPS框架中使用EXPHORMER可以产生在各种图数据集上具有竞争力的实证结果,包括在三个数据集上的最新结果。

  • EXPHORMER可以扩展到比以前的图转换器架构更大的图数据集。

SGFormer

SGFormer: Simplifying and Empowering Transformers for Large-Graph Representations

方法:本文提出了一种名为SGFormer的模型,通过一个简单的全局注意力模型来学习大图上的节点表示。该模型具有线性的时间和空间复杂度,能够高效地处理大规模图。

创新点:

  • SGFormer模型:
    • 提出了SGFormer模型,它是一种简化的图Transformer模型,只使用了单层单头的注意力机制。

    • SGFormer模型具有线性的时间和空间复杂度,能够有效地处理从数千到数十亿个节点的大规模图数据。

    • SGFormer模型在12个图数据集上取得了非常有竞争力的性能,比其他强大的图神经网络和最先进的图Transformer模型都要好。

  • 单层注意力模型的表达能力:
    • 通过将Transformer层与信号去噪问题相连接,证明了单层注意力模型可以产生与多层注意力相同的去噪效果。

    • 单层注意力模型可以实现最速下降,表明它具备足够的表达能力,能够学习全局信息。

关注下方《学姐带你玩AI》🚀🚀🚀

回复“结合18”获取全部论文+代码

码字不易,欢迎大家点赞评论收藏

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/448285.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring boot 操作 Redis

🌹作者主页:青花锁 🌹简介:Java领域优质创作者🏆、Java微服务架构公号作者😄 🌹简历模板、学习资料、面试题库、技术互助 🌹文末获取联系方式 📝 往期热门专栏回顾 专栏…

nginx-排查一次大文件无法正常下载问题

目录 问题现象&报错信息 问题现象以及分析 nginx报错信息 问题解决 方法1:配置proxy_max_temp_file_size 方法2:关闭proxy_buffering 参考文档 问题现象&报错信息 问题现象以及分析 文件正常从后端服务器直接下载时,一切正常…

【git bug】warning: auto-detection of host provider took too long (>2000ms)

【git bug】warning: auto-detection of host provider took too long (>2000ms) 报错问题: warning: auto-detection of host provider took too long (>2000ms) 报错截图: 报错描述: 在windows操作系统,未连接互连网电…

java之mybatis

准备工作 上面4步骤 XML映射文件 动态SQL

掘根宝典之c++有符号(signed)和无符号类型(unsigned)

在c中,有符号和无符号是针对整型而言的 在C中,除了布尔类型和拓展的字符类型之外,其他整型可以划分为有符号类型(signed)和无符号类型(unsigned),用于表示整数。 有符号类型可以表…

参与Penpad launch任务,实现Penpad与Scroll的双空投

在比特币 ETF 、BTC 减半等利好消息的持续推动下,加密市场逐渐进入到新一轮牛市周期中。除了以太坊 Layer1 生态 TVL 不断飙升外,Layer2 赛道 TVL 也在不断飙升并且屡创新高。 而在牛市背景下,Layer2 空投所带来的财富效应预期正在被进一步拉…

AD20新建工程步骤

1 新建工程 2 创建 3 新建原理图 4 新建PCB图 5 对原理图贺PCB都进行保存 6 新建原理图库贺PCB库,以及保存 最后在保存位置上都可以看到 打开的时候直接打开工程,它自己就会把这些链接在一起

笔记本电脑使用时需要一直插电吗?笔记本正确的充电方式

随着科技的不断发展,笔记本电脑已经成为人们日常生活和工作中不可或缺的电子设备。而在使用笔记本电脑时,很多人会有一个疑问,那就是笔记本电脑使用时需要一直插电吗?本文将就此问题展开讨论。 不一定需要一直插电,如果…

Linux网络基础3之IP协议

(。・∀・)ノ゙嗨!你好这里是ky233的主页:这里是ky233的主页,欢迎光临~https://blog.csdn.net/ky233?typeblog 点个关注不迷路⌯▾⌯ 目前已经学完了应用层以及传输层,我们应…

系统学习c++类和对象——深度理解默认成员函数

前言:类和对象是面向对象语言的重要概念。 c身为一门既面向过程,又面向对象的语言。 想要学习c, 首先同样要先了解类和对象。 本节就类和对象的几种构造函数相关内容进行深入的讲解。 目录 类和对象的基本概念 封装 类域和类体 访问限定符…

单片机灭火避障小车设计

目录 目录 II 摘要 III 1 智能小车概述 5 1.1 国内外研究动态 5 1.2 课题的目的和意义 5 2 系统设计概述 6 2.1 系统设计要求 6 2 总体方案设计 7 2.1 硬件设计 7 2.1.1 车体设计 7 2.1.2 主控制器模块 8 2.1.3 电源模块 8 2.1.4 电机驱动模块 9 2.2 火源检测模块 10 2.3 避障…

vue实现图片框选标注

前言 前端有一个需求,对上传的图片进行检测识别,通过返回的接口坐标数据,对图片的某些区域进行框选并标注。如图: 开始 1、上传功能使用elementui的upload插件; 2、在图片上进行标注功能是元素定位在图片上层&#x…

小程序对于人力资源行业的创新与变革

随着移动互联网的快速发展,小程序成为了各行各业推广和服务的新利器。对于人力资源行业来说,开发一款定制化的小程序不仅可以提升服务效率,还可以增强品牌形象和用户粘性。那么,如何定制开发人力资源类的小程序呢?下面…

群晖Synology Office本地文件如何分享给同事远程协作编辑【内网穿透】

文章目录 本教程解决的问题是:1. 本地环境配置2. 制作本地分享链接3. 制作公网访问链接4. 公网ip地址访问您的分享相册5. 制作固定公网访问链接 本教程解决的问题是: 1.Word,PPT,Excel等重要文件存在本地环境,如何在编…

开源是什么?——跟老吕学Python编程

开源是什么?——跟老吕学Python编程 开源是什么?开放源代码软件是什么?开源软件许可证是什么?开放源代码软件是什么?开放源代码的软件代表有什么?开放源代码软件与自由软件的概念 开源的定义是什么&#xf…

郭炜老师mooc第十一章数据分析和展示(numpy,pandas, matplotlib)

多维数组库numpy numpy创建数组的常用函数 # numpy数组import numpy as np #以后numpy简写为np print(np.array([1,2,3])) #>>[1 2 3] print(np.arange(1,9,2)) #>>[1 3 5 7] 不包括9 print(np.linspace(1,10,4)) #>>[ 1. 4. 7. 10.] # linespace(x,y,n)&…

数据通信练习题

1.0osi七层模型 应用层 data 表示层 会话层 传输层 数据段 防火墙,端口(TCP UDP) 网络层 数据包 路由器 数据链路层 数据帧 交换机 物理层 比特流 网卡 2.IP地址分类 私有地址 A类 0--127 10.0.0.0…

双指针算法练习

27. 移除元素 题目 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑…

上位机图像处理和嵌入式模块部署(qmacvisual旋转和镜像)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 旋转和镜像是图像处理中经常遇到的一个情况。很多时候,摄像头面对物体进行拍摄,未必是正对着进行拍摄的,这个时…

基于element-plus的Dialog选择控件

翻看之前工程师写的vue2的代码,很多都是复制、粘贴,也真是搞不懂,明明可以写一个控件,不就可以重复使用。很多前端总喜欢element搞一下,ant-design也搞一下,有啥意义,控件也不是自己写的&#x…