Graph Neural Networks 图神经网络卷积算子集
算子类别:Graph Neural Networks(图神经网络卷积层与表示学习算子)
算法数量:25 个
适用阶段:图表示学习、节点分类/回归、链接预测、图分类、特征提取与降维、端到端图神经网络模型搭建
产品定位:为“如何通过图卷积、注意力、消息传递等机制自动学习节点或图的低维向量表示,以支撑下游分类、预测、聚类等任务”提供丰富且立即可用的卷积算子库。
一、算子集概述
Graph Neural Networks 算子集聚焦于基于消息传递的图表示学习层,将传统图算法与深度学习融合,主要回答以下问题:
-
节点表示学习
- 如何从图的拓扑结构和节点特征中学习每个节点的稠密向量表示?
- 如何设计卷积核更好地聚合邻域信息?
-
特征变换与聚合
- 使用均值、求和、最大值还是注意力机制聚合邻居?
- 是否需要引入边特征、门控或跳跃连接来增强表达?
-
高阶与多尺度结构
- 如何捕获多跳邻居信息而不引起过平滑?
- 如何利用多项式滤波器或混合尺度模块实现层次化表示?
-
异质与复杂图
- 如何处理节点/边类型不同的异构图?
- 如何在点云、超图等特殊结构上定义卷积?
-
模型构建与选型
- 在何种任务下选择哪个卷积层?
- 如何组合这些算子构建完整的图神经网络?
二、算子能力分类
| 能力类型 | 对应算子 | 功能描述 |
|---|---|---|
| 谱域图卷积 | pyg_gcnconv | 一阶切比雪夫谱卷积,平等聚合邻居 |
| 空域通用聚合 | pyg_sageconv | 对邻居进行采样并聚合(均值/LSTM/池化等) |
| 图注意力机制 | pyg_gatconv, pyg_gatv2conv, pyg_supergatconv | 为邻居分配可学习的注意力权重,支持多头机制 |
| Transformer 风格 | pyg_transformerconv | 融合自注意力与边特征,可加位置编码 |
| 残差门控卷积 | pyg_resgatedgraphconv | 带残差连接和门控机制的图卷积 |
| 边特征融合卷积 | pyg_egconv, pyg_genconv, pyg_filmconv | 将边特征融入消息传递,实现特征调制或深层聚合 |
| 通用/异质卷积 | pyg_generalconv, pyg_heteroconv | 前者可配置聚合/消息函数;后者用于异构图的多关系卷积 |
| 点云与几何卷积 | pyg_gravnetconv, pyg_pointtransformerconv, pyg_pdnconv | 专为点云、物理空间或几何特征设计的卷积 |
| 高阶多项式卷积 | pyg_armaconv, pyg_sgconv, pyg_tagconv | 使用高阶邻域多项式扩展感受野,缓解过平滑 |
| 多尺度混合卷积 | pyg_mixhopconv | 混合不同阶邻居的特征,捕获多粒度结构 |
| 过平滑抑制 | pyg_ssgconv | 使用结构感知的门控抑制无关信息传播 |
| 聚类/粗化卷积 | pyg_clustergcnconv | 基于图聚类进行卷积,适合大规模图 |
| 超图卷积 | pyg_hypergraphconv | 在超图结构上定义卷积,支持高阶关系 |
| 局部极值卷积 | pyg_leconv | 基于局部邻居选取极值特征,增强结构敏感性 |
| 多频卷积 | pyg_mfconv | 多频滤波器捕获不同频段的结构信息 |
| 特征相似卷积 | pyg_feastconv | 基于特征相似性动态聚合邻居,适用异配图 |
三、通用输入输出约定
- 输入
G:通常为 PyTorch Geometric(PyG)Data对象,包含:x:节点特征张量,形状[N, in_channels]edge_index:边索引张量,形状[2, E](COO格式)edge_attr:(可选)边特征张量,形状[E, edge_dim]
- 常见输出类型:
- 更新后的节点特征张量
[N, out_channels] - 部分算子返回中间注意力权重或门控值(如注意力)
- 更新后的节点特征张量
- 超参数:
in_channels/out_channels:输入/输出特征维度heads:注意力头数(注意力类层)K:多项式阶数或跳数(高阶卷积)dropout/bias/improved等
四、算子详细说明
1. pyg_gcnconv —— 图卷积网络层
功能说明
实现经典谱域图卷积(GCN),通过对归一化邻接矩阵进行一阶近似,平等地聚合邻居特征。
产品价值
- 最基础的图卷积单元,易用、稳定,适合作为模型基线
- 提供节点表示学习的入门方案
- 在半监督节点分类等任务中表现优异
典型场景
- 学术引用网络节点分类
- 社交网络用户属性预测
- 知识图谱实体分类
适用与特性
- 图类型:无向/有向同质图
- 聚合方式:归一化求和
- 可加自环,支持无权重边
2. pyg_sageconv —— 图采样聚合网络层
功能说明
GraphSAGE 层,对邻居进行采样并使用指定聚合函数(均值、LSTM、池化等)生成目标节点的表示。
产品价值
- 支持归纳式学习,可泛化至未见过节点
- 通过采样机制可扩展到大规模图
- 灵活的聚合函数适应不同数据特性
典型场景
- 大规模推荐系统用户/物品嵌入
- 动态图中新增节点的快速表示
- 蛋白质功能预测
适用与特性
- 图类型:同质图
- 主要参数:
aggr(聚合方式)、normalize - 计算时可指定固定大小邻居采样
3. pyg_gatconv —— 图注意力网络层
功能说明
图注意力层(GAT),通过自注意力机制为不同邻居分配不同权重,实现加权聚合。
产品价值
- 捕获邻居的不同重要性,提升模型判别力
- 多头注意力可稳定训练,增强鲁棒性
- 无需预先知道图的全局结构
典型场景
- 引文网络中重要文献识别
- 分子性质预测
- 交通流量节点影响评估
适用与特性
- 图类型:同质图
- 参数:
heads(头数)、concat、dropout - 多头拼接或平均
4. pyg_gatv2conv —— 图注意力网络层 V2
功能说明
改进的 GATv2 层,采用动态注意力计算顺序,使注意力权重的排序能力更具表达性。
产品价值
- 解决标准 GAT 在某些图上注意力表达能力受限的问题
- 对异配边结构也能有效建模
- 更强的理论鲁棒性
典型场景
- 异配图节点分类(如网页链接)
- 图结构噪声较大的场景
- 需要细粒度边差异建模的任务
适用与特性
- 图类型:同质图
- 参数与 GATConv 类似,注意力计算方式更通用
5. pyg_transformerconv —— 图 Transformer 卷积层
功能说明
将 Transformer 的自注意力机制引入图,使用邻居节点作为键-值对,支持边特征作为位置编码。
产品价值
- 适合长程依赖以及需要边属性调整注意力的情形
- 结合 Transformer 的表达力与图结构归纳偏置
- 可无缝对接大模型预训练范式
典型场景
- 分子图属性预测(边为化学键)
- 文本图联合建模
- 知识图谱链接预测
适用与特性
- 图类型:同质图,支持
edge_attr - 参数:
heads、dropout、edge_dim
6. pyg_resgatedgraphconv —— 残差门控图卷积层
功能说明
带残差连接和门控机制的图卷积层,通过门控信号调节信息的保留与遗忘,利于深层图网络训练。
产品价值
- 有效缓解深层图网络的过平滑和梯度消失
- 门控机制提供自适应信息流控制
- 适合需要几十层卷积的深层架构
典型场景
- 大规模图深层特征提取
- 需要复杂非线性变换的分子生成
- 深层社交网络分析
适用与特性
- 图类型:同质图
- 核心结构:残差+门控,类似 GRU
7. pyg_gravnetconv —— 引力网络卷积层
功能说明
受物理引力启发的卷积层,通过计算节点对之间的“引力”来加权消息传递,常用在点云处理中。
产品价值
- 适合空间距离重要的几何数据
- 无需定义固定拓扑,根据特征空间距离动态建边
- 对不规则点云具有良好适应性
典型场景
- 高能物理粒子喷注分类
- 3D 点云分割
- 物理模拟中的粒子系统
适用与特性
- 图类型:动态图的几何结构
- 参数:空间维数、距离度量
8. pyg_supergatconv —— SuperGAT 卷积层
功能说明
在图注意力中引入自监督信号,结合边预测任务,使得注意力权重能够同时完成邻域聚合和边存在性预测。
产品价值
- 通过多任务学习提升注意力权重的质量和解释性
- 对噪声边具有一定的甄别能力
- 在链接预测任务上表现突出
典型场景
- 边预测和节点分类联合训练
- 含噪声边的关系图学习
- 社交网络朋友推荐
适用与特性
- 图类型:同质图
- 支持
att_dropout和is_super_gat模式
9. pyg_egconv —— 边条件卷积层
功能说明
高效利用边特征的卷积层,通过边特征动态计算消息变换矩阵或权重,实现边属性驱动的聚合。
产品价值
- 丰富边特征利用,表达关系类型、强度等
- 在分子图(键型)、物理交互中不可或缺
- 可学习边特征交互,增强模型灵活性
典型场景
- 分子指纹预测
- 交通网络速度预测(边为道路属性)
- 推荐系统中评分边的建模
适用与特性
- 图类型:带边特征图
- 参数:
nn作为边特征变换网络
10. pyg_pdnconv —— 路径定义网络卷积层
功能说明
基于路径定义网络的卷积,通过多条转移矩阵的组合变换聚合信息,适合建模多步关系。
产品价值
- 显式编码路径信息,超越单跳邻居
- 可用于控制信息传播的距离和方向
- 在知识图谱等关系丰富数据中作用明显
典型场景
- 知识图谱多跳推理
- 交通多步可达性分析
- 生物通路建模
适用与特性
- 图类型:有向/无向
- 参数:边类型矩阵
11. pyg_generalconv —— 通用图卷积层
功能说明
高度可配置的图卷积层,允许用户自定义消息函数、聚合函数和更新函数,提供一个灵活的卷积框架。
产品价值
- 快速实验新卷积变体,无需从头实现消息传递
- 教学和原型设计利器
- 通过组合不同函数覆盖大量现有GNN层
典型场景
- GNN 算法研究
- 自定义消息传递规则
- 快速测试新聚合方式
适用与特性
- 图类型:任意,取决于用户配置
- 参数:
in_channels,out_channels,aggr,message_func等
12. pyg_hypergraphconv —— 超图卷积层
功能说明
在超图上定义卷积,超边可连接多个节点,用于建模高阶群体关系。
产品价值
- 突破传统二元边限制,直接建模组团、会议等多方交互
- 保留超图结构下的拉普拉斯平滑性质
- 适用于合作网络、推荐系统等场景
典型场景
- 合著网络(作者-论文)
- 会议参与网络
- 组推荐与捆绑商品推荐
适用与特性
- 图类型:超图,需定义
hyperedge_index - 参数:
use_attention可选注意力
13. pyg_leconv —— 局部极值卷积层
功能说明
基于局部邻域选取极值特征的卷积层,通过选取邻居特征的最大/最小值等操作捕获结构变化边界。
产品价值
- 对图像梯度、点云边界等信号变化敏感
- 擅长发现局部结构突变,提升分割等任务效果
- 计算轻量,无参数学习
典型场景
- 网格/点云分割边界检测
- 传感器网络异常检测
- 形状分析
适用与特性
- 图类型:同质图
- 操作:局部极值聚合,通常无学习权重
14. pyg_clustergcnconv —— 聚类 GCN 卷积层
功能说明
基于图聚类算法的卷积层,先将图划分为若干簇,在簇内进行卷积,显著降低大规模图的计算和内存开销。
产品价值
- 使深度学习能够扩展到百万级甚至更大规模的图
- 通过图聚类保持局部稠密连接,提高计算效率
- 可与其他层串联构建深层大规模GNN
典型场景
- 超大社交网络节点分类
- 电商图推荐
- 引文网络全库分析
适用与特性
- 图类型:大规模同质图
- 需要聚簇划分算法配合,通常结合
ClusterData
15. pyg_genconv —— 广义边卷积层
功能说明
Deep Graph Convolutional Generative Networks 中使用的深层卷积层,支持多种消息构造和归一化,擅长构建深度生成模型。
产品价值
- 适合图生成任务,在分子生成等深度学习任务中广泛应用
- 支持残差、批归一化等深层稳定技术
- 允许超过 10 层乃至更多层
典型场景
- 分子图生成
- 图自编码器
- 图结构重构
适用与特性
- 图类型:同质图,支持边特征
- 参数:
aggr、msg_norm、learn_msg_scale等
16. pyg_filmconv —— FiLM 卷积层
功能说明
利用特征线性调制(Feature-wise Linear Modulation)的方式,根据中心节点和邻居特征生成变换参数,对消息进行缩放和平移。
产品价值
- 提供比普通注意力和门控更灵活的节点级变换
- 擅长处理关系类型丰富的知识图谱
- 在关系预测任务上表现卓越
典型场景
- 知识图谱补全
- 多关系社交网络
- 异质信息网络节点分类
适用与特性
- 图类型:支持关系类型 (
edge_type) - 参数:
num_relations,调制由神经网络生成
17. pyg_mfconv —— 多频卷积层
功能说明
使用多个频率滤波器从不同频谱视角聚合信息,同时保留低频和高频信号,缓解过平滑问题。
产品价值
- 突破传统 GNN 主要保留低频信号的限制
- 在异配图(异配边)上展现优异性能
- 多频信息可互补,提升表示丰富度
典型场景
- 欺诈检测(异常信号常为高频)
- 网页分类(异配链接)
- 网络对齐
适用与特性
- 图类型:同质图
- 参数:
max_degree、num_filters
18. pyg_feastconv —— 特征相似性注意力卷积层
功能说明
通过特征相似性动态选择聚合哪些邻居,而不是基于拓扑的固定邻域,适用于特征空间决定连接重要性的场景。
产品价值
- 在节点特征为主、图结构不准确的场景中鲁棒
- 可视为“软”注意力邻域选择
- 适合点云和视觉图任务
典型场景
- 3D 点云分类与分割
- 图像超像素图建模
- 特征驱动的社区发现
适用与特性
- 图类型:同质图,
heads注意力头 - 核心:基于特征注意力系数的邻域重建
19. pyg_pointtransformerconv —— 点 Transformer 卷积层
功能说明
专为点云设计的 Transformer 卷积,整合位置编码和特征变换,适用于无序点集。
产品价值
- 结合 Transformer 全局感受野和点云局部几何
- 在许多 3D 理解任务中达到先进性能
- 支持矢量注意力,保留方向信息
典型场景
- 自动驾驶激光雷达点云分割
- 室内场景理解
- 3D 物体分类
适用与特性
- 图类型:点云构成的图(含位置)
- 参数:
pos_nn、attn_nn等
20. pyg_heteroconv —— 异构图卷积包装器
功能说明
一个将不同卷积层应用到不同类型关系的异构图上的包装器,支持对每种边类型分别定义卷积操作。
产品价值
- 天然处理多种节点和边类型的异构图
- 可灵活组合任意现存的卷积层
- 是实现异构图神经网络最通用的组件
典型场景
- 学术网络(作者-论文-会议)
- 电影推荐(用户-电影-演员)
- 多模态知识图谱
适用与特性
- 图类型:异构图 (
HeteroData) - 参数:字典映射边类型到卷积模块
21. pyg_mixhopconv —— 混合跳卷积层
功能说明
通过混合不同阶邻居(不同幂次邻接矩阵)的表示来捕获多尺度图结构。
产品价值
- 无需多跳邻居显式采样就能获得高阶信息
- 缓解过平滑,通过混合低高阶特征保持区分度
- 简单有效,计算高效
典型场景
- 节点分类中需要多跳上下文
- 社交网络多阶影响力建模
- 图级别属性预测
适用与特性
- 图类型:同质图
- 参数:
powers指定要混合的邻接矩阵幂次列表
22. pyg_ssgconv —— 自门控简化卷积层
功能说明
Simple Spectral Graph Convolution 的变体,通过结构感知的门控机制抑制噪声信号传播。
产品价值
- 在简化SGC基础上增加门控,提升灵活性
- 抑制不相关或错误连边的影响
- 参数少,效率高,适合基线提升
典型场景
- 含噪声边的图学习
- 快速节点分类
- 消融实验的基准
适用与特性
- 图类型:同质图
- 参数:
alpha,K跳数
23. pyg_armaconv —— ARMA 卷积层
功能说明
自回归移动平均图卷积,通过堆叠多个并行 ARMA 滤波器来近似任意有理谱滤波器,增强抗噪能力。
产品价值
- 比传统的多项式卷积更能捕获复杂频域响应
- 可多滤波器堆叠,提高鲁棒性
- 对异配图更友好
典型场景
- 异配网络节点分类
- 抗噪图表示学习
- 金融网络异常检测
适用与特性
- 图类型:同质图
- 参数:
num_stacks、num_layers、dropout
24. pyg_sgconv —— 简化图卷积层
功能说明
去除中间非线性变换的简化卷积层(SGC),将多层图卷积等效为邻接矩阵的 K 次幂后接线性变换。
产品价值
- 极度高效,可视为逻辑回归在扩散特征上的应用
- 在小样本/少标签时表现良好
- 易于解析和部署
典型场景
- 快速基线模型
- 资源受限环境(边缘端)
- 特征扩散预计算
适用与特性
- 图类型:同质图
- 参数:
K传播步数 - 无中间激活,可预计算扩散特征
25. pyg_tagconv —— 顶级属性控制卷积层
功能说明
Topology Adaptive Graph Convolution,使用不同阶邻接矩阵的加权和来聚合邻居,权重由可学习系数控制。
产品价值
- 自适应地确定各跳邻居的重要性
- 保持线性复杂度,同时实现多跳感受野
- 比 GCN 具有更高容量,适合结构复杂图
典型场景
- 需要自适应感受野的节点分类
- 图结构变化多样的数据集
- 图分类的池化基础层
适用与特性
- 图类型:同质图
- 参数:
K最大跳数,学习聚合权重alpha
五、推荐使用指南
1. 快速起步与基线
- 最简单的谱卷积:
pyg_gcnconv或pyg_sgconv - 归纳式任务首选:
pyg_sageconv
2. 异构与多关系图
- 通用异构图方案:
pyg_heteroconv内嵌各边类型对应的基础卷积 - 关系丰富图:
pyg_filmconv或pyg_generalconv配合边类型
3. 深层网络与过平滑抑制
- 使用残差门控:
pyg_resgatedgraphconv - 多频/混合阶方法:
pyg_mfconv,pyg_mixhopconv,pyg_armaconv - 自适应权重传播:
pyg_tagconv
4. 注意力与边特征
- 标准注意力:
pyg_gatconv/pyg_gatv2conv - 边特征融入:
pyg_egconv,pyg_genconv,pyg_transformerconv - 自监督增强:
pyg_supergatconv
5. 几何与点云
- 点云专用:
pyg_pointtransformerconv,pyg_gravnetconv - 边定义动态:
pyg_feastconv,pyg_leconv
六、可直接回答的典型问题
- “哪种卷积层适合我的引文网络节点分类?”
- “如何在异构图(如用户-商品-品牌)上定义图神经网络?”
- “面对边特征非常(关系类型、强度)重要的场景,选什么卷积?”
- “深层图网络怎样避免过平滑?”
- “在点云上应用 GNN 应该用哪个层?”
- “有没有简化版的 GCN 可以快速搭建 baseline?”
- “想对大规模图训练,应该如何选卷积算子?”
- “Transformer 风格图卷积层能处理边特征吗?”
- “注意力层 GAT 和 GATv2 有何区别,何时升级?”
- “如何在一个模型中结合不同卷积的优点?”
七、算子清单
| 序号 | 算子名称 | 中文说明 |
|---|---|---|
| 1 | pyg_gcnconv | 标准图卷积网络层(谱域一阶近似) |
| 2 | pyg_sageconv | 采样聚合图卷积层(GraphSAGE) |
| 3 | pyg_gatconv | 图注意力网络层(GAT) |
| 4 | pyg_gatv2conv | 改进版图注意力层(GATv2) |
| 5 | pyg_transformerconv | 图 Transformer 卷积层 |
| 6 | pyg_resgatedgraphconv | 残差门控图卷积层 |
| 7 | pyg_gravnetconv | 引力网络卷积层(点云) |
| 8 | pyg_supergatconv | 自监督增强注意力图卷积 |
| 9 | pyg_egconv | 边条件卷积层 |
| 10 | pyg_pdnconv | 路径定义网络卷积层 |
| 11 | pyg_generalconv | 通用可配置图卷积层 |
| 12 | pyg_hypergraphconv | 超图卷积层 |
| 13 | pyg_leconv | 局部极值卷积层 |
| 14 | pyg_clustergcnconv | 聚类 GCN 卷积层(大规模) |
| 15 | pyg_genconv | 广义深层边卷积层(生成模型) |
| 16 | pyg_filmconv | 特征线性调制卷积层(关系建模) |
| 17 | pyg_mfconv | 多频卷积层(异配图优选) |
| 18 | pyg_feastconv | 特征相似性注意力卷积层 |
| 19 | pyg_pointtransformerconv | 点云 Transformer 卷积层 |
| 20 | pyg_heteroconv | 异构图卷积包装器 |
| 21 | pyg_mixhopconv | 混合阶卷积层 |
| 22 | pyg_ssgconv | 自门控简化图卷积层 |
| 23 | pyg_armaconv | ARMA 图卷积层(自适应滤波) |
| 24 | pyg_sgconv | 简化图卷积层(SGC) |
| 25 | pyg_tagconv | 拓扑自适应图卷积层(TAG) |