文章目录
1 摘要
论文链接:https://arxiv.org/pdf/1901.08150.pdf
代码链接:https://github.com/rusty1s/pytorch_geometric
大多数算法都假设了感兴趣的对象的成对关系。然而,在许多实际应用程序中,对象之间的关系是高阶的,超出了成对的公式。为了有效地学习高阶图结构数据上的深度embedding,本文在图神经网络家族中引入了两个端到端的可训练算子,即超图卷积和超图注意力。超图卷积定义了在超图上执行卷积的基本公式,超图注意力通过利用注意力模块进一步增强了表示学习的能力。有了这两个算子,图神经网络很容易扩展到一个更灵活的模型,并应用于观察到非成对关系的各种应用。
2 介绍
现在大多数的方法都假设感兴趣的对象之间的关系是成对的。具体来说,在图模型中意味着每条边只连接两个顶点,如图1(a)所示。
然而,在许多实际应用程序中,对象关系比成对关系要复杂得多。例如,在推荐系统中,一个物品可能由多个用户评论。将物品作为顶点,用户的评分作为图的边,每条边可以连接两个以上的顶点。在这种情况下,亲和关系不再是二元的(成对的),而是三元的、四元的或更高阶的。这又回到了超图的概念,这是一种特殊的图模型,它利用超边同时连接多个顶点,如图1(b)所示。遗憾的是,现有的大多数图神经网络变体都不适用于超边编码的高阶结构。
本文的贡献:
(1)超图卷积在超图中定义了一个基本的卷积算子。它充分利用顶点间的高阶关系和局部聚类结构,实现了信息在顶点间的高效传播。从数学上证明了当非成对关系退化为成对关系时,图卷积是超图卷积的一种特殊情况。
(2)超图注意力进一步施加注意力机制来学习超边的动态连接。然后,在图的任务相关部分进行信息传播和收集,从而生成更具鉴别性的节点嵌入。
(3)超图卷积和超图注意都是端到端可训练的,只要观察到非成对关系,就可以插入到大多数图神经网络的变体中。
3 提出的方法
3.1 超图定义
假设 G = ( V , E ) G = (V, E) G=(V,E) 是一个有 N N N 个顶点、 M M M 个超边的超图。每个超边 ϵ ∈ E \epsilon \in E ϵ∈E 赋予一个正值权重 W ϵ ϵ W_{\epsilon \epsilon} Wϵϵ ,所有权重存储在一个对角矩阵 W ∈ R M × M W \in \mathbb{R}^{M \times M} W∈RM×M 中。超图 G G G 用一个关联矩阵 H ∈ R N × M H \in \mathbb{R}^{N \times M} H∈RN×M 。当一个超边 ϵ ∈ E \epsilon \in E ϵ∈E 一个顶点 v i ∈ V v_i \in V vi∈V 相关联,换句话说, v i v_i vi 与 ϵ \epsilon ϵ 相连,则 H i ϵ = 1 H_{i \epsilon} = 1 Hiϵ=1 ,否则为0。顶点度为
D i i = ∑ ϵ = 1 M W ϵ ϵ H i ϵ D_{ii} = \sum_{\epsilon = 1}^M W_{\epsilon \epsilon} H_{i \epsilon} Dii=ϵ=1∑MWϵϵHiϵ
超边度为
B ϵ ϵ = ∑ i = 1 N H i ϵ B_{\epsilon \epsilon} = \sum_{i = 1}^N H_{i \epsilon} Bϵϵ=i=1∑NHiϵ
注意 D ∈ R N × N D \in \mathbb{R}^{N \times N} D∈RN×N 和 B ∈ R M × M B \in \mathbb{R}^{M \times M} B∈RM×M 均为对角矩阵。
3.2 超图卷积
在超图中定义卷积算子的主要障碍是测量两个顶点之间的转移概率,每个顶点的embedding(或特征)可以在图神经网络中传播。为了实现这一点,有两个假设:
(1)在由一个公共超边连接的顶点之间应该进行更多的传播;
(2)具有更大权重的超边在这种传播中应该有更多的信心。
然后,定义超图卷积的一步为
x i ( l + 1 ) = σ ( ∑ j = 1 N ∑ ϵ = 1 M H i ϵ H j ϵ W ϵ ϵ x j ( l ) P ) x_i^{(l+1)} = \sigma \left(\sum_{j=1}^N \sum_{\epsilon = 1}^M H_{i \epsilon} H_{j \epsilon} W_{\epsilon \epsilon} x_j^{(l)}P \right) xi(l+1)=σ(j=1∑Nϵ=1∑MHiϵHjϵWϵϵxj(l)P)
其中, x i ( l ) x_i^{(l)} xi(l)