【人工智能】图神经网络(GNN)的推理方法
图神经网络(GNN)的推理方法是指利用训练好的模型对图结构数据(如节点、边或整个图)进行预测或决策的过程。其核心在于如何通过图的拓扑结构和节点/边特征,传播和聚合信息以实现目标任务的推理。以下是GNN的主要推理方法分类及其关键技术:
1. 按推理任务分类
(1) 节点级推理(Node-Level Inference)
- 任务:预测单个节点的属性(如节点分类、回归)。
- 方法:
- 消息传递(Message Passing):通过聚合邻居节点的信息更新目标节点的表示(如GCN、GAT)。
- 自监督学习:利用无监督目标(如对比学习、DeepWalk)预训练节点表示,再微调下游任务。
- 直推式(Transductive)推理:在已知全图结构(包括测试节点)的情况下直接推理(如传统GCN)。
- 归纳式(Inductive)推理:训练时未见过测试图,需泛化到新图(如GraphSAGE)。
(2) 边级推理(Edge-Level Inference)
- 任务:预测边的存在性或属性(如链接预测、推荐系统)。
- 方法:
- 节点对编码:将两个节点的表示拼接后通过MLP预测边属性(如GCN+MLP)。
- 相似度计算:通过节点表示的内积或余弦相似度预测链接概率(如VGAE)。
- 负采样:在训练时生成负样本(不存在的边),优化正负样本的区分能力。
(3) 图级推理(Graph-Level Inference)
- 任务:预测整个图的属性(如图分类、分子性质预测)。
- 方法:
- 全局池化(Global Pooling):将节点表示通过求和、平均或注意力机制聚合成图表示(如GIN)。
- 层次化池化(Hierarchical Pooling):逐步压缩图结构(如DiffPool、SAGPool)。
- 子图采样:通过采样子图处理大规模图(如Cluster-GCN)。
2. 按推理模式分类
(1) 直推式学习(Transductive Learning)
- 特点:训练和推理在同一图上进行,测试节点在训练时可见(但无标签)。
- 适用场景:静态图(如引用网络)。
- 模型:GCN、GAT(需全图参与推理)。
(2) 归纳式学习(Inductive Learning)
- 特点:训练和推理在不同图上进行,模型需泛化到新图。
- 适用场景:动态图或需处理未见图的场景(如社交网络新用户)。
- 模型:GraphSAGE(通过采样邻居泛化)、GIN。
3. 典型推理技术
(1) 消息传递与聚合
- 关键步骤:
- 邻居信息聚合:从邻居节点收集特征(如求和、均值、注意力加权)。
- 节点更新:结合自身特征和聚合结果生成新表示。
- 代表模型:
- GCN:通过归一化邻接矩阵聚合邻居。
- GAT:通过注意力机制加权聚合邻居。
- GraphSAGE:通过随机采样邻居并聚合。
(2) 图表示学习
- 目标:将图结构映射为低维向量。
- 方法:
- 端到端学习:直接通过任务损失优化节点/图表示。
- 预训练+微调:在大规模图上预训练通用表示,再迁移到下游任务(如GPT-GNN)。
(3) 概率推理
- 应用:不确定性建模(如贝叶斯GNN)、链接预测。
- 方法:
- 变分自编码器(VGAE):生成节点表示并建模边的概率分布。
- 图马尔可夫网络(GMN):通过概率图模型建模节点依赖。
4. 推理优化技术
(1) 高效推理
- 子图采样:仅加载与目标节点相关的子图(如PinSAGE)。
- 动态批处理:动态调整计算图以减少内存占用。
- 近似推理:使用低精度计算或模型压缩(如知识蒸馏)。
(2) 可解释性推理
- 注意力可视化:分析GAT中注意力权重的重要性(如关键邻居识别)。
- 子图解释:生成对预测结果影响最大的子图(如PGExplainer)。
5. 应用场景示例
- 社交网络:用户兴趣预测(节点分类)、好友推荐(链接预测)。
- 化学:分子性质预测(图分类)、药物相互作用预测(边分类)。
- 推荐系统:用户-物品交互图的点击率预测。
- 知识图谱:实体补全(链接预测)、关系推理。
总结
GNN的推理方法高度依赖任务类型和图结构特性。直推式方法适用于静态图,归纳式方法更适合动态场景;节点级任务依赖局部信息传播,图级任务需全局信息聚合。未来方向包括高效推理(如动态图处理)、可解释性提升(如因果推理)和复杂推理(如多跳逻辑推理)。