Google 提出稀疏注意力框架Exphormer,提升图Transformer的扩展性!

引言

Graph Transformer已成为ML的重要架构,它将基于序列的Transformer应用于图结构数据。然而当面对大型图数据集时,使用Graph Transformer会存在扩展性限制。为此,「Google提出了一个稀疏注意力框架Exphormer,它使用扩展图来提高图Transformer的可扩展性,并在长期依赖关系表现出了强大的性能」

论文:https://arxiv.org/pdf/2303.06147.pdf

背景介绍

图在计算和机器学习 (ML) 中无处不在,其中对象及其关系可以用图中的节点和节点之间的边来表示。社交网络、道路网络以及分子结构之间的相互作用都都具有类似图结构。通过机器学习可学习图的节点、边亦或者整个图的属性。

图学习的一种常见方法是图神经网络(GNN),它通过对节点、边和全局属性信息进行相应的转换来实现对图数据的操作。典型的图神经网络(GNN)是通过消息传递框架进行数据操作,其中每一层都将节点的表示与其直接相邻的表示聚合在一起。

最近,图Transformer已成为了消息传递架构的替代方案。这些模型建立在Transformer成功的基础之上,使其可以适应图结构数据。图Transformer中的注意力机制可以通过交互图来建模,其中边代表相互关联的节点对。与消息传递架构不同,图Transformer具有与输入图分离的交互图。

典型的交互图是一个完整的图,它表示一个完整的注意力机制,可以对所有节点对之间的交互进行建模。然而,这会产生二次计算和内存瓶颈,限制了图Transformer在具有数千个节点的小图上的适用性。使图Transformer具备可扩展性,已被认为是该领域最重要的研究方向之一。

面对二次计算和内存瓶颈,一种方法是使用边数较少的稀疏交互图。当前已经提出了许多稀疏且高效的Transformer来消除序列的二次瓶颈,但是,它们通常不会将其扩展应用到图神经网络。

基于以上背景,在ICML2023上,Google提出了“Exphormer: Sparse Transformers for Graphs”中,通过引入专为图数据设计的Transformers 的稀疏注意力框架来解决可扩展性问题,Exphormer框架在各种数据集上获得优异的结果。

Exphormer

「Exphormer核心思想是使用扩展图」,它们是稀疏但连接良好的图,如下图所示。

图片

并且具有以下属性:

  • 1)图的矩阵表示具有与完整图类似的线性代数属性;

  • 2 )它们表现出快速混合的随机游走,即从任何起始节点开始的随机游总走中的少量步骤足以确保收敛至图节点上的“稳定”分布。

当前 Exphormer 已应用于不同领域,例如算法、伪随机性、复杂理论和代码纠错。

一类常见的扩展图是扩展图,其中每个节点都有d条边(即每个节点的度数为d)。扩展图的好坏通过谱间隙来衡量的,谱间隙是其相邻矩阵的代数属性。那些最大化谱间隙的图被称为Ramanujan图——它们实现了的间隙,这本质上是正则图中最好的。多年来,针对不同的  值,提出了一系列的Ramanujan图构造。本文使用Friedman随机扩展结构,它可以近似产生Ramanujan图。

构建稀疏交互图

Exphormer 将扩输入图的扩展器边缘和虚拟节点结合起来。具体来说,Exphormer 的稀疏注意力机制构建了一个由三种类型的边组成的交互图,如下图所示:

图片

  • 输入图的边(局部注意力)

  • constant-degree扩展图的边(扩展注意力)

  • 从每个节点到一小组虚拟节点的边(全局注意力)

其中,每个组件都有特定的用途:输入图的边保留输入图结构的归纳偏差;扩展边允许良好的全局连接性和随机游走混合特性;虚拟节点充当全局“内存接收器”,可以直接与每个节点通信。虽然这会导致每个虚拟节点的附加边等于输入图中的节点数,但生成的图仍然是稀疏的。扩展图的degree和虚拟节点的数量是用于调整以提高质量指标的超参数。

此外,由于使用constant-degree扩展图和少量恒定数量的虚拟节点来进行全局注意力,因此所得的稀疏注意力机制与原始输入图的大小呈线性关系,即它模拟了许多直接交互节点和边总数的顺序。

此外,Exphormer 与密集Transformer一样具有表现力,并且遵循常用的近似属性。特别是,当 Exphormer 的稀疏注意力图通过自环(将节点连接到自身的边)进行增强时,它可以普遍逼近连续函数。

与稀疏Transformer的关系

将 Exphormer 与稀疏注意力方法进行比较是很有趣的。也许在概念上与我们的方法最相似的架构是 BigBird,它通过组合不同的组件来构建交互图。BigBird 也使用虚拟节点,但与 Exphormer 不同的是,它对其余组件使用来自 Erdős-Rényi 随机图模型的窗口注意力和随机注意力。

BigBird 中的窗口注意力着眼于序列中标记周围的标记,而Exphormer 中的局部邻域注意力可以被视为窗口注意力对图的概括。

n 个节点的 Erdős-Rényi 图 G(n, p) ,以概率 p 连接每对节点,也可用作高度为p的扩展图。然而,需要超线性边数来确保 Erdős-Rényi 图是连通的,更不用说良好的扩展器了。另一方面,Exphormer 中使用的扩展器仅具有线性数量的边。

实验结果

为了评估 Exphormer 的性能,本文以GraphGPS 框架为基础,该框架结合了消息传递和图Transformer,并在许多数据集上实现了最先进的性能。实验结果如下图所示:

图片

可以发现,用 Exphormer替代GraphGPS 框架中的密集注意力可以实现具有可比或更好性能,并且具有更少的训练参数。

此外,Exphormer 能够让图Transformer架构的扩展超出常规大小限制。Exphormer 可以扩展到包含 10,000 多个节点图的数据集,例如 Coauthor 数据集,甚至可以扩展到更大的图,如下图所示。

图片

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

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

相关文章

LeetCode-2865. 美丽塔 I

题面 给你一个长度为 n 下标从 0 开始的整数数组 maxHeights 。 你的任务是在坐标轴上建 n 座塔。第 i 座塔的下标为 i &#xff0c;高度为 heights[i] 。 如果以下条件满足&#xff0c;我们称这些塔是 美丽 的&#xff1a; 1 < heights[i] < maxHeights[i] heights 是…

音频特效SDK,满足内容生产的音频处理需求

美摄科技&#xff0c;作为音频处理技术的佼佼者&#xff0c;推出的音频特效SDK&#xff0c;旨在满足企业内容生产中的音频处理需求。这款SDK内置多种常见音频处理功能&#xff0c;如音频变声、均衡器、淡入淡出、音频变调等&#xff0c;帮助企业轻松应对各种音频处理挑战。 一…

启动mitmproxy报错 ImportError: cannot import name ‘url_quote‘ from ‘werkzeug.urls‘

报错截图 ImportError: cannot import name url_quote from werkzeug.urls (d:\soft\python\python38\lib\site-packages\werkzeug\urls.py) 原因是Werkzeug版本不兼容导致 解决方法 pip install Werkzeug2.2.2

Java-NIO篇章(5)——Reactor反应器模式

前面已经讲过了Java-NIO中的三大核心组件Selector、Channel、Buffer&#xff0c;现在组件我们回了&#xff0c;但是如何实现一个超级高并发的socket网络通信程序呢&#xff1f;假设&#xff0c;我们只有一台内存为32G的Intel-i710八核的机器&#xff0c;如何实现同时2万个客户端…

【云原生】Docker的端口映射、数据卷、数据卷容器、容器互联

目录 一、端口映射&#xff08;相当于添加iptables的DANT&#xff09; 二、数据卷创建&#xff08;宿主机目录或文件挂载到容器中&#xff09; 三、数据卷容器&#xff08;多个容器通过同一个数据卷容器为基点&#xff0c;实现所有容器数据共享&#xff09; 四、容器互联&am…

Docker容器引擎(2)

目录 一.批量删除镜像&#xff0c;容器 二.Docker 网络实现原理 随机映射端口&#xff08;从32768开始&#xff09; 访问自己&#xff1a; 在10服务器上配置路由转发&#xff1a; 指定映射端口&#xff1a; 查看容器的输出和日志信息&#xff1a; 将宿主机目标|文件挂载…

司铭宇老师:员工心态培训:正确对待工作的七种心态:让你在工作中游刃有余

员工心态培训&#xff1a;正确对待工作的七种心态&#xff1a;让你在工作中游刃有余 工作&#xff0c;是我们生活的核心组成部分。它不仅关乎我们的物质生活&#xff0c;更影响着我们的精神世界。如何在工作中找到平衡&#xff0c;实现自我价值&#xff0c;成为许多人心中的困…

oracle19.22的patch已发布

2024年01月16日,oracle发布了19.22的patch 具体patch如下 Reserved for Database - Do not edit or delete (Doc ID 19202401.9) 文档ID规则如下 19(版本)+年份(202x)+(季度首月01,04,07,10).9 往期patch no信息和下载参考文档 oracle 19C Release Update patch num…

Allegro因为精度问题导致走线未连接上的解决办法

Allegro因为精度问题导致走线未连接上的解决办法。还有在用Allegro进行PCB设计时,因为不小心操作移动了芯片,导致导线和引脚未连接上,也可以使用这个方法。 选择菜单Tools→Derive Connectivity(获取连接) 跳出下面的对话框, Convert Line to Connect Lines

SQL注入实战:宽字节注入

一、宽字节概率 1、单字节字符集:所有的字符都使用一个字节来表示&#xff0c;比如 ASCII编码(0-127) 2、多字节字符集:在多字节字符集中&#xff0c;一部分字符用多个字节来表示&#xff0c;另一部分字符(可能没有)用 单个字节来表示。 3、宽字节注入是利用mysql的一个特性…

人工智能在教学领域中有哪些运用?

人工智能在教学领域中可以有以下几种运用&#xff1a; 1. 智能辅助教学&#xff1a;利用人工智能技术开发出智能辅助教学系统&#xff0c;根据学生的学习状态和知识背景&#xff0c;提供个性化的学习路径和推荐的学习资源&#xff0c;帮助学生更好地掌握知识。 2. 自适应评估…

如何使用宝塔面板配置Nginx反向代理WebSocket(wss)

本章教程&#xff0c;主要介绍一下在宝塔面板中如何配置websocket wss的具体过程。 目录 一、添加站点 二、申请证书 三、配置代理 1、增加配置内容 2、代理配置内容 三、注意事项 一、添加站点 二、申请证书 三、配置代理 1、增加配置内容 map $http_upgrade $connection_…

Biotin-PEG4-TSA,生物素-PEG4-酪胺,用于标记蛋白质、核酸等生物分子

您好&#xff0c;欢迎来到新研之家 文章关键词&#xff1a;Biotin-PEG4-Tyramide&#xff0c;Biotin-PEG4-TSA&#xff0c;生物素-PEG4-酪胺&#xff0c;Biotin PEG4 Tyramide&#xff0c;Biotin PEG4 TSA 一、基本信息 产品简介&#xff1a;Biotin PEG4 Tyramide is compos…

【力扣每日一题】力扣2859计算k位置下标对应元素的和(bitCount源码分析及实现)

题目来源 力扣2859计算k位置下标对应元素的和 题目概述 给你一个下标从 0 开始的整数数组 nums 和一个整数 k 。 请你用整数形式返回 nums 中的特定元素之 和 &#xff0c;这些特定元素满足&#xff1a;其对应下标的二进制表示中恰存在 k 个置位。 整数的二进制表示中的 1…

老子云-三维模型优化

轻量化服务 减面模式 适用于家装、游戏、电商产品等需要保留部件且精细结构多的模型 保留原始模型网格对象、UV和动画&#xff0c;仅使模型网格更轻量&#xff0c;新增GPU减面模式(限时体验)&#xff0c;省时更精细 合并模式 不保留原始模型网格和动画&#xff0c;适用于数…

【linux】远程桌面连接到Debian

远程桌面连接到Debian系统&#xff0c;可以使用以下几种工具&#xff1a; 1. VNC (Virtual Network Computing) VNC&#xff08;Virtual Network Computing&#xff09;是一种流行的远程桌面解决方案&#xff0c;它使用RFB&#xff08;Remote Framebuffer Protocol&#xff0…

系统引导程序 Boot Loader——学习笔记

基于嵌入式Linux 的完整系统软件由三个部分组成&#xff1a;系统引导程序、Linux 操作系统内核和文件系统。 系统引导程序 Boot Loader 是系统加电后运行的第一段软件代码&#xff0c;它的作用是加载操作系统或者其他程序到内存中&#xff0c;并将控制权交给它们。 Boot Load…

nodejs学习计划--(六)包管理工具

包管理工具 1. 介绍 包是什么 『包』英文单词是 package &#xff0c;代表了一组特定功能的源码集合包管理工具 管理『包』的应用软件&#xff0c;可以对「包」进行 下载安装 &#xff0c; 更新 &#xff0c; 删除 &#xff0c; 上传 等操作 借助包管理工具&#xff0c;可以快…

无人机航迹规划(五):七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划(提供MATLAB代码)

一、七种算法&#xff08;DBO、LO、SWO、COA、LSO、KOA、GRO&#xff09;简介 1、蜣螂优化算法DBO 蜣螂优化算法&#xff08;Dung beetle optimizer&#xff0c;DBO&#xff09;由Jiankai Xue和Bo Shen于2022年提出&#xff0c;该算法主要受蜣螂的滚球、跳舞、觅食、偷窃和繁…

SpringMVC第四天(SSM整合)

SSM整合流程 1.创建工程 2.SSM整合 ①Spring SpringConfig package com.cacb.config;import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import;…