学习日记18:Graph Transformer Networks
摘要
GNN在学习图的表示上已经被广泛使用,但是目前的GNN都只能处理固定的和同质图。文章提出的GTN能够处理新的结构,如异构图等,这涉及识别原始图上未连接的节点之间的有用连接,同时以端到端的方式学习新图上的有效节点表示。图形转换器层是GTN的核心层,它学习边类型和复合关系的软选择,以生成有用的多跳连接,即所谓的元路径。
介绍
GNN虽然很强大,但是在处理异构图和有错误信息的图时仍有问题。目前GNN处理异构图的方法有两种,一种是直接忽略异构,将异构图当成同质图来处理;另一种是手工创建元路径将异构图转换为由元路径定义的同质图;这两种方法都有明显的缺点。
GTN可以将一个一个异构输入图转换为适合任务的元路径图并以端到端的学习方式学习节点表示。要实现这个有两个挑战,首先是元路径的长度不确定,第二个是可能出现的有向图,在这方面可以操作的GNN较少。解决方法:基于与异构图中软选择的边类型相关联的复合关系来生成新的图结构,并通过卷积来学习给定问题的图结构上的节点表示。
相关工作
方法
GTN的目标是同时生成新的图结构和在学习的图上学习节点表示,它使用候选的邻接矩阵执行有效的图卷积并学习有效的节点表示来寻找图结构。
Tv和Te分别表示图中有的节点类别和边类别的数量,Ak[i,j]不为0表示i与j之间存在一条K类型的边。
元路径生成
图形转换器网络(GTN)学习给定数据和任务的元路径,并对学习到的元路径图进行图形卷积。这有机会找到更有用的元路径,并使用多个元路径图产生几乎各种不同的图卷积。图中图形转换器(GT)层中新的元路径图生成具有两个组件。
首先,GT层从候选邻接矩阵A中软选择两个图结构Q1和Q2;其次,它通过两个关系的组合来学习新的图结构。A的每个通道代表一种类型的边,首先对权重W进行softmax,之后使用归一化后的权重对其A进行卷积得到Q1,Q2,将两者结合后得到下一层的A。然后通过堆叠多个GTN层求得不同长度的元路径。另外,A中引入单位矩阵I,这一设计使得堆叠l个 GT 层时,模型可自主学习长度 1 到l+1的任意元路径。
通过 “多通道元路径生成 - 多图卷积 - 表示融合” 的端到端流程实现异构图节点表示学习:先将 1×1 卷积输出通道设为 C 以生成多通道邻接张量Q1,Q2经L层 GT 堆叠得到含 C 类元路径的邻接张量AL;再对每个通道的AL独立执行 GCN 卷积(适配有向图的归一化方式),将所有通道的节点表示拼接为Z;最后通过两层全连接与 softmax 层,以交叉熵损失训练完成分类,该架构可视为 GT 层生成的多类元路径图上 GCN 的集成,实现了元路径生成与表示学习的联合优化 。