图相关论文阅读与总结

1. Adaptive Structural Fingerprints for Graph Attention Networks

——图注意力网络的自适应结构化指纹(ADSF)

1.1 解决的问题

本文是对图注意网络(GAT)的一个扩展。传统的GAT计算注意力权重时只会利用一跳邻居的节点特征,如果利用高阶邻居的节点特征会引起过平滑的问题。因此,本文解决的主要问题是如何在GAT中利用丰富并且高阶的结构化信息。

1.2 提出的方法

传统的GAT:已知节点 i i i和它的一跳邻居 j j j的特征分别为 h i h_i hi h j h_j hj,那么 i i i j j j之间的注意力系数为 a i j = σ ( e ( [ W h i ∣ ∣ W h j ] ) ) a_{ij}=\sigma(e([Wh_i||Wh_j])) aij=σ(e([WhiWhj])) W W W是可学习的参数矩阵, [ ⋅ ∣ ∣ ⋅ ] [·||·] []表示把 i i i j j j的特征拼接起来, e ( ⋅ ) e(·) e()表示把高维特征映射到一个实数上, σ \sigma σ表示。

那么对于顶点 i i i,可以得到它和每个1跳邻居的注意力系数。根据计算好的注意力系数,把注意力加权求和得到顶点 i i i的新特征,即 h i ′ = σ ( ∑ j a i j W h j ) h_i^{'}=\sigma(\sum_j a_{ij}Wh_j) hi=σ(jaijWhj)

本文的方法:在传统GAT中,邻居 j j j对节点 i i i的重要程度取决于两个节点的特征向量,忽略了节点的结构信息。既然传统的 Attention 方法已经考虑了节点的特征相似性,该论文的研究重点在于如何计算两个节点之间的结构相似性。

(1) 自适应的结构化指纹

在这里插入图片描述
把每个节点放在它局部感受野的上下文中,对于节点 i i i,它结构化指纹定义为:
F i = ( V i , w i ) F_i=(V_i, w_i) Fi=(Vi,wi)
结构化指纹取决于节点 $i $ 周围局部感受野的邻居集合 V i V_i Vi(棕色节点),以及邻居的贡献权重 w i w_i wi。这里权重的作用在于:它指定了每个节点在塑造感受野中的重要性,也决定了该域的有效“形状”和大小,也就是塑造了比较立体的局部结构,充分的表达了节点 i i i 的结构信息。由于目标邻居的邻居集合 V i V_i Vi是固定的,那么只需要计算权重矩阵 w i w_i wi。节点权重应该随着它们到指纹中心的距离而衰减,因此 w i w_i wi可以根据高斯衰减计算:
w i ( j ) = e x p ( − d i s ( i , j ) 2 2 h 2 ) w_i(j) = exp(-\frac{dis(i, j)^2}{2h^2}) wi(j)=exp(2h2dis(i,j)2)
根据 i i i j j j 的距离得到 j j j 的权重,这里的高斯带宽 h h h 是可以优化的,因此结构化指纹的学习过程是自适应的。

两个节点间的结构相似性可以根据这两个节点的结构化指纹得到,然后和传统GAT的注意力结合,得到本文的注意力机制。

2. MixHop: Higher-Order Graph Convolutional Architectures via Sparsfied Neighborhood Mixing

——MixHop: 通过稀疏邻域混合的高阶图卷积架构

2.1 解决的问题

传统的GNN模型不能学习多跳邻居的混合关系,本文通过混合多跳邻居的特征表示解决这个问题, 并且不会增加时间复杂度喝空间复杂度。

2.2 提出的方法

为了证明传统的GCN不能学习到多跳的邻居特征,本文提出了 Δ \Delta Δ算子,它定义为不同跳邻居特征之间相减。

(1)定义两跳的 Δ \Delta Δ算子

给定任意的邻接矩阵 A ^ \hat{A} A^,特征 X X X,和激活函数 σ \sigma σ,如果模型存在一组参数和一个单射函数 f f f,使得网络的输出变为 f ( σ ( A ^ X ) − σ ( A ^ 2 X ) ) f(\sigma(\hat{A}X)- \sigma(\hat{A}^2X)) f(σ(A^X)σ(A^2X)),那么该模型就能够学习到两跳的 Δ \Delta Δ算子。学习到这样的算子可以让模型学习到邻居间的特征差异。

(2)表示能力

**定理1. **传统的GCN不能学习到两跳的 Δ \Delta Δ算子

**证明1. **在 l l l层的图卷积网络中中,传统的图卷积有如下的卷积过程
σ ( A ^ ( σ ( A ^ … σ ( A ^ X W ( 0 ) ) …   ) W ( l − 2 ) ) W l − 1 ) \sigma(\hat{A}(\sigma(\hat{A}\dots\sigma(\hat{A}XW^{(0)})\dots)W^{(l-2)})W^{l-1}) σ(A^(σ(A^σ(A^XW(0)))W(l2))Wl1)
为了简化证明 ,假设每个节点的特征维度是 n n n。在一个特殊的情况下,如果 σ ( x ) = x \sigma(x)=x σ(x)=x并且 X = I n X=I_n X=In,那么上式就变成了 A ^ l W ∗ \hat{A}^lW^{*} A^lW,其中 W ∗ = W ( 0 ) W ( 1 ) … W ( l − 1 ) W^{*}=W^{(0)}W^{(1)}\dots W^{(l-1)} W=W(0)W(1)W(l1)

假设传统GCN可以表示一个两跳的 Δ \Delta Δ算子,那么也就存在单射函数 f f f 和一组参数 W ∗ W^{*} W,使得对于任意的 A ^ \hat{A} A^,有 A ^ l W ∗ = f ( A ^ − A 2 ^ ) \hat{A}^lW^{*}=f(\hat{A}-\hat{A^2}) A^lW=f(A^A2^)

① 令 A ^ = I n \hat{A}=I_n A^=In,那么可以得到 W ∗ = f ( 0 ) W^{*}=f(0) W=f(0)

② 令 A ^ \hat{A} A^表示图里仅有两个节点(节点1和节点2)和一条边的邻接矩阵,即 A ^ = C ^ 1 , 2 = [ 0.5 0.5 0 … 0 0.5 0.5 0 … 0 0 0 1 … 0 ⋮ ⋮ ⋮ ⋮ 0 0 0 … 1 ] \hat{A} = \hat{C}_{1,2} =\begin{bmatrix}0.5 &0.5 & 0 & \dots & 0 \\0.5 &0.5 & 0 & \dots & 0 \\0 & 0 &1 & \dots &0\\ \vdots & \vdots & \vdots && \vdots\\ 0 & 0 & 0 & \dots & 1 \end{bmatrix} A^=C^1,2=0.50.5000.50.50000100001,那么可以得到 C ^ 1 , 2 W ∗ = f ( 0 ) \hat{C}_{1,2}W^{*}=f(0) C^1,2W=f(0)

联立①②,可得 ( I n − C ^ 1 , 2 ) W ∗ = 0 (I_n - \hat{C}_{1,2})W^{*}=0 (InC^1,2)W=0,也就证明 W ∗ W^{*} W中第一行和第二行相等。由于节点1和节点2是任意的,所以 W ∗ W^{*} W中每一行都是相等的,那么 A ^ l W ∗ \hat{A}^lW^{*} A^lW的秩小于等于1,因此 f f f 的输出应该是最大秩为1的矩阵,也就是说, f f f不能是单射的,矛盾。得证。

**定理2. ** MixHop中的图卷积可以表示两跳的 Δ \Delta Δ算子

**证明2. ** MixHop中的图卷积形式为:
H ( 1 ) = σ ( [ I N X W 0 ( 0 ) ∣ A ^ X W 1 ( 0 ) ∣ A ^ 2 X W 2 ( 0 ) ] ) H^{(1)}=\sigma([I_NXW_0^{(0)} \quad | \quad \hat{A}XW_1^{(0)} \quad |\quad \hat{A}^2XW_2^{(0)}]) H(1)=σ([INXW0(0)A^XW1(0)A^2XW2(0)])
W 0 ( 0 ) = 0 , W 1 ( 0 ) = W 2 ( 0 ) = I W_0^{(0)}= 0, W_1^{(0)}=W_2^{(0)}=I W0(0)=0,W1(0)=W2(0)=I,上式变为 H ( 1 ) = σ ( [ 0 ∣ A ^ X ∣ A ^ 2 X ] ) H^{(1)}=\sigma([0 | \hat{A}X | \hat{A}^2X]) H(1)=σ([0A^XA^2X])

又因为
H ( 2 ) = [ I N H ( 1 ) W 0 ( 1 ) ∣ A ^ H ( 1 ) W 1 ( 1 ) ∣ A ^ 2 H ( 1 ) W 2 ( 1 ) ] H^{(2)}=[I_NH^{(1)}W_0^{(1)} \quad | \quad \hat{A}H^{(1)}W_1^{(1)} \quad |\quad \hat{A}^2H^{(1)}W_2^{(1)}] H(2)=[INH(1)W0(1)A^H(1)W1(1)A^2H(1)W2(1)]
W 0 ( 1 ) = [ 0 I − I ] , W 1 ( 1 ) = W 2 ( 1 ) = 0 W_0^{(1)}=\begin{bmatrix}0\\I\\-I\end{bmatrix}, W_1^{(1)}=W_2^{(1)}=0 W0(1)=0II,W1(1)=W2(1)=0 H ( 1 ) H^{(1)} H(1)代入,得
H ( 2 ) = [ σ ( A ^ X ) − σ ( A ^ 2 X ) ∣ 0 ∣ 0 ] H^{(2)}= [ \sigma(\hat{A}X)-\sigma(\hat{A}^2X)\quad | \quad 0 \quad |\quad 0] H(2)=[σ(A^X)σ(A^2X)00]
因此,MixHop中的图卷积可以表示两跳 Δ \Delta Δ算子。

3. GraphSAINT:Graph Sampling based inductive learning method

——GraphSAINT:基于图采样的归纳学习方法

3.1 解决的问题

在GCN中,为一个输出节点收集的数据来自它在前一层的邻居。每个相邻层依次收集前一层的输出,以此类推。显然,我们回溯得越深,就有越多的多跳邻居来支持当前节点的计算,而且这很可能会随GCN深度呈指数级增长。所以需要采样策略优化训练过程。

3.2 提出的方法

提出了在训练开始前就对原图多次采样子图,再根据子图训练GCN模型。

(1)评估采样器

设计取样器之前,本文分析了什么样的采样器是好的,最常见的评估方式有两个:偏差和方差。偏差越小,则采样越精准,方差越小,则采样的越集中,不易产生离群值。

本篇的做法是:a. 聚合节点特征时,设计一个无偏差的节点表示估计量算法; b. 设计采样器时最小化方差

(2)本篇应用的取样器

基于随机游走的采样器:先采样一群出发点,再从出发点往外随机游走,去发展出采样的子图。

4. Learning discrete structures for graph neural networks

——学习离散结构的图神经网络

4.1 解决的问题

图神经网络只有当具有图结构时才可以使用。但是实际上,在许多应用中的图是具有噪声的,甚至难以得到。本文提出通过近似求解一个学习图中边离散概率分布的二层规划共同学习图结构和GCN的参数。

4.2 提出的方法
(1)背景

二层规划:是一种优化问题,目标函数中的一组变量被约束为另一个优化问题的最优解。给定两个目标函数 F F F L L L, 两组参数 θ ∈ R m \theta \in \mathbb{R}^{m} θRm w ∈ R d w \in \mathbb{R}^d wRd,一个二层规划问题定义为:
min ⁡ θ , w θ F ( w θ , θ ) , 使 得 w θ ∈ arg ⁡ min ⁡ w L ( w , θ ) \min\limits_{\theta, w_{\theta}}F(w_{\theta},\theta),使得w_{\theta} \in \arg\min\limits_wL(w, \theta) θ,wθminF(wθ,θ),使wθargwminL(w,θ)
解二层规划的标准方法是利用诸如随机梯度下降的方法 Φ \Phi Φ 替代 L L L 的最小化。令 w θ , T w_{\theta, T} wθ,T Φ \Phi Φ 迭代 T T T 轮后的参数, 即 w θ , T = Φ ( w θ , T − 1 , θ ) = Φ ( Φ ( w θ , T − 2 , θ ) ) w_{\theta, T} = \Phi(w_{\theta, T-1}, \theta)=\Phi(\Phi(w_{\theta, T-2}, \theta)) wθ,T=Φ(wθ,T1,θ)=Φ(Φ(wθ,T2,θ))。那么,可以计算 F ( w θ , θ ) F(w_{\theta},\theta) F(wθ,θ) 关于 θ \theta θ 的梯度,表示为超梯度 ∇ F ( w θ , θ ) \nabla F(w_{\theta},\theta) F(wθ,θ),即
∂ w F ( w θ , θ ) ∇ θ w θ , T + ∂ θ F ( w θ , T , θ ) \partial_w F(w_{\theta},\theta)\nabla_\theta w_{\theta,T} + \partial_\theta F(w_{\theta, T}, \theta) wF(wθ,θ)θwθ,T+θF(wθ,T,θ)
反复替换 w Φ , T = Φ ( w θ , t − 1 , θ ) w_{\Phi, T}=\Phi(w_{\theta, t-1},\theta) wΦ,T=Φ(wθ,t1,θ),应用链式法则,可以在时间 O ( T ( d + m ) ) O(T(d + m)) O(T(d+m))有效地计算第一项。这个优化技术可以优化多个超参数,其数量比用于超参数优化的经典方法要大几个数量级。

(2)学习离散的图结构

本文将学习图结构和学习GCN网络参数建模为一个二层规划的问题,其中外层的变量是图生成概率模型的参数。因此,本文的方法可以优化GCN的参数和图生成模型的参数,从而最大程度地减少给定数据集上的分类误差。本文基于截断逆模式算法微分和超梯度估计来近似解决二层规划问题。

假设邻接矩阵 A A A 是丢失的,本文提出找到 A ∈ H N A \in \mathcal{H}_N AHN,最小化函数
F ( w A , A ) = ∑ v ∈ V v a l ℓ ( f w A ( X , A ) v , y v ) ( 5 ) F(w_A,A)=\sum\limits_{v \in V_{val}}\ell(f_{w_A}(X,A)_v, y_v)\qquad\qquad\qquad\qquad(5) F(wA,A)=vVval(fwA(X,A)v,yv)(5)
其中 V v a l V_{val} Vval是验证集, w A w_A wA L L L 的最小值, L L L 是图卷积部分的优化问题, L ( w , A ) = ∑ v ∈ V T r a i n ℓ ( f w ( X , A ) v , y v ) L(w,A)=\sum\limits_{v\in V_{Train}}\ell(f_w(X,A)_v, y_v) L(w,A)=vVTrain(fw(X,A)v,yv)。然后, L ( w , A ) L(w,A) L(w,A) F ( w A , A ) F(w_A,A) F(wA,A)可以当做二层规划内层和外层的目标函数,其中外层目标是寻找一个最优的离散图结构,内层目标是在固定的图结构上找到最优的GCN参数。

但是这个二层规划问题很难求解,因为它包含连续和离散值变量。本文通过在图上使用概率分布的参数解决这个问题,它保留了生成式的模型,并根据在离散图形上产生的分布(连续)参数重新定义二层规划。具体来说,本文提出利用伯努利随机变量建模每条边。令 H ˉ N = C o n v ( H N ) \bar{\mathcal{H}}_N=Conv(\mathcal{H}_N) HˉN=Conv(HN) 为N个节点所有邻接矩阵集合的凸包,通过参数矩阵 θ ∈ H ˉ N \theta \in \bar{\mathcal{H}}_N θHˉN 将所有可能的边建模为相互独立的伯努利随机变量集,可以将图采样为 H ˉ N ∋ A ∼ B e r ( θ ) \bar{\mathcal{H}}_N \ni A \sim Ber(\theta) HˉNABer(θ) L ( w , A ) L(w,A) L(w,A) F ( w A , A ) F(w_A,A) F(wA,A)可以用图结构上的期望替换。通过期望,外层和内层的目标函数都变成了伯努利参数的连续函数。

生成模型模块(外层目标):

  • 输入:没有输入
  • 内部参数: θ i , j \theta_{i, j} θi,j,表示 i i i j j j 两个结点之间有连边的概率
  • 输出:一个采样的邻接矩阵

GCN模块(内层目标):

  • 输入:采样得到的矩阵,节点特征
  • 输出:每个节点的分类

5. Heterogeneous Graph Learning for Visual Commonsense Reasoning

——用于视觉常识推理的异构图学习

5.1 解决的问题

视觉常识推理目的在于引导研究进入认知层面的推理,具有预测正确答案的能力,又能提供令人信服的推理路径。现有的工作要么依靠强大的端到端网络,无法产生可解释的推理路径,要么只探索视觉对象的内部关系(同构图),而忽略了视觉概念和文字之间的跨域语义匹配。

本文提出的异构图学习(HGL)框架能够集成图内推理和图间的推理,架起视觉和语言领域的桥梁。

5.2 提出的方法

本文提出的的HGL学习框架由异构图模块和上下文投票模块(CVM)组成。异构图模块中包括两个部分:视觉-答案异构图(VAHG)和问题-答案(QAHG)组成。

(1)定义

视觉矩阵 X o ∈ R N × d X_o \in \mathbb{R}^{N\times d} XoRN×d,查询矩阵 X q ∈ R M × d X_q \in \mathbb{R}^{M\times d} XqRM×d和答案矩阵 X a ∈ R B × d X_a \in \mathbb{R}^{B\times d} XaRB×d N , M , B N, M, B N,M,B分别表示视觉物体数量,查询单词数量和答案单词数量,模型的输出是一个用于四分类的四维向量 Y p ∈ R 4 Y_p \in R^4 YpR4

(2)框架

在这里插入图片描述通过resnet50提取object特征, Bert提取文本特征,对象特征和文本特征利用图学习进行情境化,分别构建了VAGH与QAGH两个(跨域)异构图,两张异构图的输出最终通过全连接进行合并,之后送入到推理模块,模型最终的输出是一个四维向量(即四个选项的概率分数值)

6. Understanding Attention and Generalization in GNN

——理解GNN中的注意力和广义化

本文探讨了图注意力机制的有效性,并提出一个弱监督的训练方法来达到监督方法的效果。

本文设计了两个图推理任务,使得能够在知道真实注意力权重的情况下的受控环境中研究注意力。第一个任务是数图中的颜色数量(COLORS),其中颜色是唯一的离散特征。第二个任务是数图中三角形的个数(TRIANGLES)

模型
(1)注意力阈值

作者将池化和注意力机制相结合, 只有当注意力权值大于阈值 α ^ \hat{\alpha} α^ 的时候才会得到消息的传递,小于 α ^ \hat{\alpha} α^ 的节点将会被丢弃

(2)注意力子网络

为了训练注意力模型去预测节点的注意力系数,做者用了2种方法。
1.线性的投影,训练映射函数:
在这里插入图片描述
2.训练一个单独的GNN
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZYg9vIaW-1618403187169)(https://resource.shangmayuan.com/droxy-blog/2020/07/25/b027ba42721240949eb0ee2e18bdfc4e-2.png)]

(3)ChebyGIN

ChebyNET是图卷积的谱域方法,作者结合了GIN(Graph Isomorphism Networks)和 ChebyNet,提出了一个更强的模型, ChebyGIN。为了加强ChebyGIN的聚合效果,作者将节点的度和节点的特征相乘,以加强特征的重要性。

7.Break the ceiling: stronger multi-scale deep graph convolutionla networks

7.1 解决的问题

GCN层数少,模型浅,表达能力不足,但如果将GCN拓展到更深,会产生过平滑的问题,因为图卷积可以看做是拉普拉斯平滑的一个特殊形式,更多层就容易更多的平滑,以致于每个节点会越来越相似,不再具有区分性。

7.2 提出的方法

作者证明了任何具有明确定义的解析光谱滤波器的图卷积都可以写为块Krylov矩阵和特殊形式的可学习参数矩阵的乘积。基于这些分析,作者提出了两种GCN架构,它们以不同的方式利用多尺度信息,并且可以扩展到更深更丰富的结构,期望具有更强的表达能力和能力来提取图结构化数据的更丰富的表示形式。

作者首先构建了一个块krylov子空间形式的深层GCN。假设有一系列解析光谱滤波器 G = g 0 , g 1 , . . . g n G={g_0,g_1,...g_n} G=g0,g1,...gn和一系列逐点的非线性激活函数 H = h 0 , h 1 , . . . , h n H={h_0,h_1,...,h_n} H=h0,h1,...,hn,那么:
Y = s o f t m a x { g n ( L ) h n − 1 { . . . g 2 ( L ) h 1 { g 1 ( L ) h 0 { g 0 L X W 0 ′ } W 1 ′ } W 2 ′ . . . } W n ′ } Y=softmax\{g_n(L)h_{n-1}\{...g_2(L)h_1\{g_1(L)h_0\{g_0{L}XW_0^{'}\}W_1^{'}\}W_2^{'}...\}W_n^{'}\} Y=softmax{gn(L)hn1{...g2(L)h1{g1(L)h0{g0LXW0}W1}W2...}Wn}
不难看出,当 g i ( L ) = A ~ , n = 1 g_i(L)=\widetilde{A},n=1 gi(L)=A ,n=1时,这就是普通的GCN。但是这样设计的深层结构有难以计算的问题。虽然直接在GCN中实现块Krylov方法是困难的,但是这启发作者在每一层中堆砌多尺度信息,这样网络将有能力拓展到深层结构。作者提出了两个结构:snowballtruncated Krylov。这些方法在隐层中以不同方式连接多尺度特征信息,同时两者都有可能被扩展到更深层次的体系结构。

(1)Snowball

为了将多尺度特征连接在一起,得到每个节点更丰富的表示,作者设计了一个密集连通图网络如下:
H 0 = X , H l + 1 = f ( L [ H 0 , H 1 , . . . , H l ] W l ) , l = 0 , 1 , 2 , . . . , n − 1 C = g ( [ H 0 , H 1 , . . . , H n ] W n ) o u t p u t = s o f t m a x ( L p C W c ) H_0=X,H_{l+1}=f(L[H_0,H_1,...,H_l]W_l),l=0,1,2,...,n-1\\C=g([H_0,H_1,...,H_n]W_n)\\output=softmax(L^pCW_c) H0=X,Hl+1=f(L[H0,H1,...,Hl]Wl),l=0,1,2,...,n1C=g([H0,H1,...,Hn]Wn)output=softmax(LpCWc)
其中 W l , W n , W c W_l,W_n,W_c Wl,Wn,Wc是可学习的参数矩阵, F l + 1 F_{l+1} Fl+1 l l l层的输出通道数, f , g f,g f,g是激活函数, C C C是任何类型的分类器, p ∈ { 0 , 1 } p\in\{0,1\} p{0,1} H 0 , H 1 , . . , H n H_0,H_1,..,H_n H0,H1,..,Hn是提取的特征。当 p = 0 , L P = I p=0,L^P=I p=0,LP=I或者 p = 1 , L p = L p=1,L^p=L p=1,Lp=L时,意味着C投影回图的Fourier基上,这在图结构编码大量信息时是必要的。基于此,可以堆砌学习过的特征作为下一层的输入。这样一来,输入的尺度将会像snowball一样越来越大,这和DenseNet很像。因此,DenseNet的一些优点是自然继承的,例如减轻了消失梯度问题,鼓励了特征重用,增加了每个隐藏层的输入变化,减少了参数数目,加强了特征传播,提高了模型的紧凑性。
在这里插入图片描述

(2)Truncated Krylov

截断块Krylov网络可以表示为:

H 0 = X , H l + 1 = f ( [ H l , L H l , . . . , L m l − 1 H l ] W l ) , l = 0 , 1 , 2 , . . . , n − 1 C = g ( H n W n ) o u t p u t = s o f t m a x ( L p X W C ) H_0=X,H_{l+1}=f([H_l,LH_l,...,L^{m_l-1}H_l]W_l),l=0,1,2,...,n-1\\C=g(H_nW_n)\\output=softmax(L^pXW_C) H0=X,Hl+1=f([Hl,LHl,...,Lml1Hl]Wl),l=0,1,2,...,n1C=g(HnWn)output=softmax(LpXWC)
作者不是对特定的函数或固定的X进行截断,而是在训练中处理变量X。因此,不能对X及其与L的关系作任何限制,以得到一个实际的误差界。
在这里插入图片描述

8. LanczosNet: Multi-scale deep graph convolutional networks

——LanczosNet: 多尺度的GCN

本文是作者在谱域图卷积方向上的改进

8.1 解决的问题

当前的图卷积存在两个问题:a. 除了堆叠很多层GCN,如何有效的利用多尺度信息还不清楚;b. 目前GCN中的谱域滤波器绝大部分是固定的。

8.2 提出的方法

一般频域中的图卷积具有如下形式
Y [ : , j ] = ∑ i = 1 F U [ g i , j ( λ 0 ) ⋯ 0 ⋮ ⋮ 0 ⋯ g i , j ( λ N − 1 ) ] U ∗ X [ : , i ] Y[:,j]=\sum_{i=1}^{F}U \begin{bmatrix} g_{i, j}(\lambda_0) &\cdots & 0 \\ \vdots & & \vdots\\ 0 &\cdots& g_{i, j}(\lambda_{N-1}) \end{bmatrix} U^{*}X[:,i] Y[:,j]=i=1FUgi,j(λ0)00gi,j(λN1)UX[:,i]
其中 X X X表示 N × F N\times F N×F的输入矩阵, Y Y Y 表示一个 N × O N \times O N×O 的输出矩阵, N , F , O N, F, O N,F,O 分别表示图中节点数,输入向量维数以及输出向量维数, X [ : , i ] X[:, i] X[:,i]表示矩阵 X X X 的第 i i i 列。 λ 0 ≤ λ 1 ≤ ⋯ ≤ λ N − 1 \lambda_0 \le \lambda_1 \le \dots \le \lambda_{N -1} λ0λ1λN1表示图拉普拉斯矩阵 L L L的特征值, U = [ u 0 , u 1 , … , u N ] U=[u_0, u_1,\dots,u_N] U=[u0,u1,,uN] 表示 L L L的特征向量矩阵,第 i i i 列是 λ i \lambda_i λi对应的特征向量, U ∗ U^{*} U 表示 U U U 的共轭转置, g g g 是作用在频域上的函数并且 g g g是图卷积训练过程中需要学习的函数。 g g g 具有如下形式
g ( λ ) = ∑ t = 0 K − 1 w t λ t g(\lambda) = \sum_{t=0}^{K-1}w_t\lambda^t g(λ)=t=0K1wtλt
其中 w t w_t wt是需要估计的参数,图卷积可以改写成:
Y [ : , j ] = ∑ i = 1 F [ X [ : , i ] , L X [ : , i ] , … , L K − 1 X [ : , i ] ] w i , j Y[:,j]=\sum_{i=1}^{F}[X[:,i],LX[:,i],\dots,L^{K-1}X[:,i]]w_{i,j} Y[:,j]=i=1F[X[:,i],LX[:,i],,LK1X[:,i]]wi,j
其中 L i , j t ≠ 0 L_{i,j}^{t} \ne 0 Li,jt=0 表示节点 i i i 和节点 j j j 之间至少存在一条长度不超过 t t t 的路径,因此多项式中不同项的阶数决定了图卷积中节点间信息传播的长度,结合不同阶的项可以表达多尺度的关联关系

在本文中, S = L S=L S=L,上式需要计算 S t S^t St,这是一个耗时的操作。常见的方法是对 S S S进行特征值分解,然后取前 K K K 个最大的特征值和特征向量作为近似。但本文的做法是采用Lanczos算法找到矩阵 S S S 的低秩近似来避免直接对 S S S 做特征值分解。

Lanczos算法首先找到一个正交矩阵 Q Q Q 和三对角矩阵 T T T ,使得 Q T S Q = T Q^TSQ=T QTSQ=T。三对角矩阵特征值分解简单,可以得到 T = B R B T T=BRB^T T=BRBT,那么 S ≈ Q B R B T Q T = V R V T S \approx QBRB^TQ^T = VRV^T SQBRBTQT=VRVT S S S 的低秩逼近就是 V R V T VRV^T VRVT

那么图卷积可以重新表达为:
Y j ≈ [ X i , V R V T X i , … , V R K − 1 V T X i ] w i , j Y_j \approx[X_i, VRV^TX_i,\dots,VR^{K-1}V^TX_i]w_{i,j} Yj[Xi,VRVTXi,,VRK1VTXi]wi,j
为了进一步增强模型的表达能力,作者使用神经网络构造对角阵:
Y j = [ X i , V R ^ ( 1 ) V T X i , … , V R ^ ( K − 1 ) V T X i ] w i , j Y_j = [X_i, V\hat{R}(1)V^TX_i,\dots,V\hat{R}(K-1)V^TX_i]w_{i,j} Yj=[Xi,VR^(1)VTXi,,VR^(K1)VTXi]wi,j
其中 R ^ ( k ) = f k ( [ I , R 1 , … , R K − 1 ] ) \hat{R}(k)=f_k([I,R^1,\dots, R^{K-1}]) R^(k)=fk([I,R1,,RK1]) f k f_k fk 可以是一个神经网络。作者还设置了超参选择卷积网络需要获取的多尺度信息,最终图卷积公式为:
Y = [ L S 1 X , … , L S M X , V R ^ ( I 1 ) V T X , … , V R ^ ( I N ) V T X ] W Y = [L^{S_1}X,\dots, L^{S_M}X , V\hat{R}(\mathcal{I}_1)V^TX,\dots,V\hat{R}(\mathcal{I}_N)V^TX]W Y=[LS1X,,LSMX,VR^(I1)VTX,,VR^(IN)VTX]W
其中 S S S I \mathcal{I} I是尺度参数,小尺度下,参与图卷积的变化直接使用图拉普拉斯矩阵 L L L 计算,大尺度则通过低秩近似来计算。

9. Simplifying Graph Convolutional Networks

——简化GCN

9.1 解决的问题

把非线性的GCN转化成一个简单的线性模型SGC,通过反复消除GCN层之间的非线性并将得到的函数折叠成一个线性变换来减少GCNs的额外复杂度。得到的SGC可以扩展到更大的数据集并且具有更快的速度。

9.2 提出的方法

作者将图卷积网络每层之间的激活函数删除,只保留最终的softmax以获得概率输出,那么删除激活函数之后的模型是线性的,即
Y ^ S G C = s o f t m a x ( S K X Θ ) \hat{Y}_{SGC}=softmax(S^KX\Theta) Y^SGC=softmax(SKXΘ)
Y ^ S G C \hat{Y}_{SGC} Y^SGC表示输出, Θ \Theta Θ 表示参数矩阵。可以看出 S K X S^KX SKX 是可以直接计算的,因此SGC实际上就是对 S K X S^KX SKX 的多类逻辑回归。

10. Inductive Representation Learning on Temporal Graphs

——时间图上的归纳表示学习

10.1 解决的问题

时间图是随时间变化的图。那么节点嵌入不应该仅考虑拓扑结构和节点特征,还应考虑连续时间。此外,时间图的结构也在随时间变化,因此,邻域聚合收到时间的约束。

10.2 提出的方法

本文提出了时间图注意力(TGAT)算法,它将时间编码技术和自注意力机制相结合,以聚合时序拓扑结构的邻居特征,从而学习时间特征的交互。

算法以GAT为框架,将原有的位置编码替换为时序编码,进而提出了时序图注意力层(TGA)。

TGA以时序邻居、特征和时间戳为输入,以目标节点在任意时间点的时间表示为输出,节点 i i i t t t 时间来自第 l l l 层的隐藏表示输出为: h ~ i ( l ) ( t ) \widetilde{h}_i^{(l)}(t) h i(l)(t)。对于节点 v 0 v_0 v0 ,它在 t t t 时间的时序感知节点嵌入的表示输出为:
h ~ 0 ( l ) ( t ) = R e L U ( [ h ( t ) ∣ ∣ x 0 ] W 0 ( l ) + b 0 ( l ) ) W 1 ( l ) + b 1 ( l ) \widetilde{h}_0^{(l)}(t)=ReLU([h(t)||x_0]W_0^{(l)} + b_0^{(l)})W_1^{(l)} + b_1^{(l)} h 0(l)(t)=ReLU([h(t)x0]W0(l)+b0(l))W1(l)+b1(l)
h ( t ) h(t) h(t) 表示在时间 t t t 时带有注意力机制的特征, ∣ ∣ || 表示拼接。

11. Graph Inference Learning for Semi-supervised Classification

——半监督分类的图推断学习

本文提出了一个图推断学习框架(GIL),它能够根据已经已分类节点自适应的推断出未分类的节点类别。GIL会根据节点间的关系推断出分类结果。作者将节点间的关系定义成三个组成部分:节点特征、连接路径和图的拓扑结构。也就是说,两个节点的相似性由三方面决定:节点特征的一致性,节点间路径的可达性和局部拓扑结构的一致性。

节点 v i v_i vi v j v_j vj 之间的相似度可以表示为:
s i → j = f r ( f e ( G v i ) , f e ( G v j ) , f P ( v i , v j , ε ) ) ( 1 ) s_{i \rightarrow j} = f_r(f_e(\mathcal{G}_{v_i}),f_e(\mathcal{G}_{v_j}), f_P(v_i,v_j,\varepsilon)) \qquad\qquad\qquad (1) sij=fr(fe(Gvi),fe(Gvj),fP(vi,vj,ε))(1)
G v i \mathcal{G}_{v_i} Gvi G v j \mathcal{G}_{v_j} Gvj 代表中心节点分别是 v i v_i vi v j v_j vj 的子图。 f e ( ⋅ ) f_e(·) fe() 表示提取节点特征,对应于节点间关系的第一部分。 f P ( v i , v j , ε ) f_P(v_i,v_j,\varepsilon) fP(vi,vj,ε) 表示 v i v_i vi v j v_j vj 的路径可达性特征,对应于节点间关系的第二部分。 f r ( ⋅ ) f_r(·) fr() 用来计算节点 v i v_i vi v j v_j vj 的相似性分数,并且它的输入是子图的特征 f e ( G v i ) f_e(\mathcal{G}_{v_i}) fe(Gvi) , f e ( G v j ) f_e(\mathcal{G}_{v_j}) fe(Gvj) v i v_i vi v j v_j vj 之间路径的可达性 f P ( v i , v j , ε ) f_P(v_i,v_j,\varepsilon) fP(vi,vj,ε)

把上面的情况再拓展开,假如是节点 v j v_j vj 和第 c c c 类所有节点相比呢?令 C c = { v k ∣ y v k = c } C_c=\{v_k|y_{v_k}=c\} Cc={vkyvk=c} 表示类别为 c c c 的点的集合。那么 ( 1 ) (1) (1) 式可以修改成:
s C c → j = ϕ r ( F C c → v j ∑ v i ∈ C c w i → j ⋅ f e ( G v i ) , f e ( G v j ) ) ( 2 ) s_{C_c \rightarrow j} = \phi_r(F_{C_c \rightarrow v_j} \sum_{v_i \in C_c}w_{i \rightarrow j}·f_e(\mathcal{G}_{v_i}),f_e(\mathcal{G}_{v_j})) \qquad\qquad\qquad (2) sCcj=ϕr(FCcvjviCcwijfe(Gvi),fe(Gvj))(2)
其中 w i → j = ϕ w ( f P ( v i , v j , ε ) ) w_{i \rightarrow j}=\phi_w(f_P(v_i,v_j,\varepsilon)) wij=ϕw(fP(vi,vj,ε)) ϕ w ( ⋅ ) \phi_w(·) ϕw()将路径可达性特征转换成一个权重, ϕ r \phi_r ϕr计算节点 v j v_j vj 和所有类别为 c c c 的节点之间的相似度, ϕ w ( ⋅ ) \phi_w(·) ϕw() ϕ r \phi_r ϕr 都可以通过一个子网络实现。 F C c → v j F_{C_c \rightarrow v_j} FCcvj 是正则化因子,它定义为 F C c → v j = 1 ∑ v i ∈ C c w i → j F_{C_c \rightarrow v_j}=\frac{1}{\sum_{v_i \in C_c}w_{i \rightarrow j}} FCcvj=viCcwij1。如果给定一个节点 v j v_j vj,通过式 ( 2 ) (2) (2),本文可以计算 v j v_j vj 和所有类别的相似度,然后得到一个相似度的分数矩阵 S C → j = [ S C 1 → j , … , S C C → j ] T S_{C\rightarrow j} = [S_{C_1\rightarrow j},\dots, S_{C_C\rightarrow j}]^T SCj=[SC1j,,SCCj]T,那么最大分数对应的标签就是 v j v_j vj 类别的预测结果。

在具体实现时, f e ( ⋅ ) f_e(·) fe() 使用了谱域中的图卷积。 f P ( v i , v j , ε ) f_P(v_i,v_j,\varepsilon) fP(vi,vj,ε) 使用了图上的随机游走来实现。 ϕ w ( ⋅ ) \phi_w(·) ϕw()是一个全连接层, ϕ r \phi_r ϕr将两个输入特征拼接并通过一个全连接层输出两个特征之间的相似度。

12. Inductive And unsupervised representation learning on graph structured objects

——图结构对象的归纳和无监督表示学习

本文解决的是对图结构数据同时进行无监督和归纳学习。一般在图的无监督学习中,主要通过重建损失的方法进行训练,但在计算重建损失时通常要涉及到图的相似性计算,而图的相似性计算是一个复杂并且耗时的过程,因此,论文提出了一个通用的框架SEED,用于无监督的学习图的特征(对给定的输入图,输出该图的特征)。

SEED主要包括三个部分:采样、编码、特征分布。

在这里插入图片描述

(1)采样

采样表示从一个输入图里面采样出一个个的子图。作者提出基于随机游走采样子图。假设需要采样 k k k 个节点,首先算法从一个节点 v ( 0 ) v^{(0)} v(0) 开始采样并且标记已访问,然后 v ( 0 ) v^{(0)} v(0) 的一条邻居中找下一个节点 v ( 1 ) v^{(1)} v(1),重复遍历,直到找到 k k k 个节点。

(2)编码

编码能够将采样的多个子图编码为向量。作者采用自编码器学习子图的特征,并且用重建损失作为损失函数。

那么 s s s 个子图 $ {X_1,\dots, X_s}$ 就可以表示为 s s s 个向量 { z 1 , … , z s } \{z_1,\dots,z_s\} {z1,,zs}

(3)特征分布

如果两张图是相似的,那么他们的子图的分布也应该是相似的。基于这个假设,作者提出通过计算子图间的分布距离来评估图之间的相似性。本文使用了 最大平均差异(MMD)来计算两个分布之间的相似性。给定两个图 G \mathcal{G} G H \mathcal{H} H,他们的子图特征分别为 { z 1 , … , z s } \{z_1,\dots,z_s\} {z1,,zs} { h 1 , … , h s } \{h_1,\dots, h_s\} {h1,,hs} P G P_{\mathcal{G}} PG P H P_{\mathcal{H}} PH 分别为两个图的子图分布,那么他们之间的MMD为:
M M D ^ ( P G , P H ) = 1 s ( s − 1 ) ∑ i = 1 s ∑ j ≠ i s k ( z i , z j ) + 1 s ( s − 1 ) ∑ i = 1 s ∑ j ≠ i s k ( h i , h j ) − 2 s 2 ∑ i = 1 s ∑ j = 1 s k ( z i , h j ) = ∣ ∣ μ ^ G − μ ^ H ∣ ∣ 2 \widehat{MMD} (P_{\mathcal{G}},P_{\mathcal{H}}) = \frac{1}{s(s-1)}\sum_{i=1}^{s}\sum_{j \ne i}^{s}k(z_i,z_j) +\frac{1}{s(s-1)}\sum_{i=1}^{s}\sum_{j \ne i}^{s}k(h_i,h_j) - \frac{2}{s^2}\sum_{i=1}^s\sum_{j=1}^sk(z_i,h_j) =||\hat{\mu}_{\mathcal{G}}-\hat{\mu}_{\mathcal{H}}||^2 MMD (PG,PH)=s(s1)1i=1sj=isk(zi,zj)+s(s1)1i=1sj=isk(hi,hj)s22i=1sj=1sk(zi,hj)=μ^Gμ^H2
μ ^ G \hat{\mu}_{\mathcal{G}} μ^G μ ^ H \hat{\mu}_{\mathcal{H}} μ^H 分别是 P G P_{\mathcal{G}} PG P H P_{\mathcal{H}} PH的经验核特征,定义为:
μ ^ G = 1 s ∑ i = 1 s ϕ ( z i ) μ ^ H = 1 s ∑ i = 1 s ϕ ( h i ) \hat{\mu}_{\mathcal{G}} = \frac{1}{s}\sum_{i=1}^{s}\phi(z_i) \qquad \hat{\mu}_{\mathcal{H}} = \frac{1}{s}\sum_{i=1}^{s}\phi(h_i) μ^G=s1i=1sϕ(zi)μ^H=s1i=1sϕ(hi)
ϕ ( ⋅ ) \phi(·) ϕ()是关于核函数 k ( ⋅ , ⋅ ) k(·,·) k(,) 的特征映射函数, μ ^ G \hat{\mu}_{\mathcal{G}} μ^G μ ^ H \hat{\mu}_{\mathcal{H}} μ^H 最终被当做是图 G \mathcal{G} G H \mathcal{H} H 的特征。

在核函数的选择上,有两种方法,一个是 ϕ ( x ) = x \phi(x)=x ϕ(x)=x,还有一种是需要学习的核函数,即
μ ^ G ′ = 1 s ∑ i = 1 s ϕ ^ ( z i ; θ m ) μ ^ H ′ = 1 s ∑ i = 1 s ϕ ^ ( h i ; θ m ) D ( P G , P H ) = ∣ ∣ μ ^ G ′ − μ ^ H ′ ∣ ∣ 2 2 \hat{\mu}^{'}_{\mathcal{G}} = \frac{1}{s}\sum_{i=1}^{s}\hat\phi(z_i;\theta_m) \qquad \hat{\mu}^{'}_{\mathcal{H}} = \frac{1}{s}\sum_{i=1}^{s}\hat\phi(h_i;\theta_m) \qquad D(P_{\mathcal{G}},P_{\mathcal{H}})=||\hat{\mu}^{'}_{\mathcal{G}} - \hat{\mu}^{'}_{\mathcal{H}}||^2_2 μ^G=s1i=1sϕ^(zi;θm)μ^H=s1i=1sϕ^(hi;θm)D(PG,PH)=μ^Gμ^H22
为了训练 ϕ ( ⋅ ) \phi(·) ϕ(),作者使用的损失函数为:
J ( θ m ) = ∣ ∣ D ( P G , P H ) − M M D ^ ( P G , P H ) ∣ ∣ 2 2 J(\theta_m)=||D(P_{\mathcal{G}},P_{\mathcal{H}})-\widehat{MMD}(P_{\mathcal{G}},P_{\mathcal{H}})||^2_2 J(θm)=D(PG,PH)MMD (PG,PH)22

13. Curvature Graph Network

——曲率图网络

13.1 解决的问题

在空域的图卷积里,每个节点的特征是通过聚合邻域节点的特征得到的,这也就和节点的度有关。但是节点的度也仅仅描述了每个节点邻居的数量,而不能描述着些邻居时如何连接的。
在这里插入图片描述
例如上图中,节点 x x x 和节点 y y y 具有相同的度,但是他们局部的图结构是不一样的。

13.2 本文的方法

本文提出基于高级的图曲率信息建立图曲率网络(CurvGN)。类似于黎曼流形上的里奇曲率,离散的图曲率度量了一对邻居的几何形状和标准的网格图偏差了多少。

图卷积的一般公式为
h x t + 1 = σ t ( ∑ y ∈ N ˉ ( x ) τ x y t W t h y t ) h_x^{t+1}=\sigma_t(\sum_{y\in \bar{\mathcal{N}}(x)}\tau_{xy}^tW^th_y^t) hxt+1=σt(yNˉ(x)τxytWthyt)
t t t 表示GCN的层号, W W W 表示可学习的网络参数, h x t + 1 h_x^{t+1} hxt+1 表示节点 x x x 在第 l + 1 l+1 l+1 的特征表示, N ˉ ( x ) \bar{\mathcal{N}}(x) Nˉ(x) 表示节点 x x x 的邻域。在一般的空域图卷积中, τ x y t \tau_{xy}^t τxyt 是拉普拉斯矩阵;在GAT中, τ x y t \tau_{xy}^t τxyt 是注意力机制。在本文中, τ x y t \tau_{xy}^t τxyt 是通过里奇曲率计算得到的。

14. Graph transformer networks

大多数GNN是能在固定且同质的图上进行运算。如果图上有噪声,缺失连边或者有错误的连边,就会导致与图上错误的邻居进行无效的卷积。同质的意思是图中节点和边是一种类型。与同质相反的是异质图。异质图的节点和边具有不同的类型,例如引用网络,引用网络具有多个类型的节点(作者、论文、会议)和边(作者-论文,论文-会议)。针对异质图,大部分方法利用原路径从异质图中提取同质图作为GNN的输入,但是这些原路径都是手动构造的,其构造的质量会直接影响下游任务。

本文提出了GTN将输入的异质图转换为有用的元路径图,并在这些图上学习节点的表示。

异质图 G = ( V , E ) \mathcal{G}=(V, E) G=(V,E)除了包括顶点和边,还包括边的种类的集合 T e \mathcal{T}^e Te,异质图可以表示成邻接矩阵的集合,如果 ∣ T e ∣ = K |\mathcal{T}^e|=K Te=K,那么异质图可以表示为 A N × N × K \mathbb{A}^{N\times N\times K} AN×N×K

(1)GT层生成元路径

GT层首先通过卷积从 A \mathbb{A} A 中选择两个图结构 Q 1 Q_1 Q1 Q 2 Q_2 Q2,然后元路径通过 Q 1 Q_1 Q1 Q 2 Q_2 Q2 的乘积得到。选择邻接矩阵 Q Q Q 可以表示成
Q = ϕ ( A ; s o f t m a x ( W ϕ ) ) Q=\phi(\mathbb{A};softmax(W_\phi)) Q=ϕ(A;softmax(Wϕ))
ϕ \phi ϕ 是卷积层, W ϕ W_\phi Wϕ ϕ \phi ϕ 的参数。生成元路径本质上就是注意力机制,对 A \mathbb{A} A 生成一个 K K K 维的权重,然后选择权重大的作为被选择的 Q Q Q,由此得到元路径。

(2)GTN

得到原路径后再输入到GCN中得到最终的分类结果。

15. Graph U-Nets

——图U-Nets

把卷积神经网络中的池化和上采样拓展到图数据上是比较困难的,因为图数据中的节点没有空间局部性和顺序信息,所以池化和上采样对图数据操作起来比较困难。

本文提出了图采样(gPool)对重要的节点采样,并基于gPool和采样的逆操作gUnpool提出了图U-Nets,它是一个编码器-解码器模型,可以编码高维特征然后解码生成网络embedding。

(1)gPool层

gPool层利用一个可训练的投影向量 p \textbf{p} p 把所有节点的特征投影到1维,然后执行k-max池化选择节点。给定一个节点 i i i,它的特征是$ x_i$,那么它在 p \textbf{p} p 上的标量投影是:
y i = x i p / ∣ ∣ p ∣ ∣ y_i = x_i\textbf{p}/||\textbf{p}|| yi=xip/p
p \textbf{p} p 上投影的标量的最大值的节点就被采样成了新图。

整个过程可以表示为:
y = X l p ∣ ∣ p l ∣ ∣ i d x = r a n k ( y , k ) y ~ = s i g m o i d ( y ( i d x ) ) X ~ l = X l ( i d x , : ) A l + 1 = A l ( i d x , i d x ) X l + 1 = X ~ l ⊙ y ~ y = \frac{X^l\textbf{p}}{||\textbf{p}^l||} \\ idx = rank(y, k) \\ \widetilde{y} = sigmoid(y(idx))\\ \widetilde{X}^l =X^l(idx, :)\\ A^{l + 1 } = A^l(idx, idx)\\ X^{l+1} = \widetilde{X}^l \odot\widetilde{y} y=plXlpidx=rank(y,k)y =sigmoid(y(idx))X l=Xl(idx,:)Al+1=Al(idx,idx)Xl+1=X ly
经过一个gPool层以后,节点的数量由N变成了k。

(2)gUnpool层

gUnpool层根据存储的 i d x idx idx 将对应的特征放回原来的位置,这样也就把图回复到了原始结构。

(2)图U-Nets结构

在这里插入图片描述
使用GCN层将输入特征向量转换为低维表示,然后堆叠两个编码器块,每个块包含一个gPool层和一个GCN层。在解码器部分,也有两个解码器块。每个块由gUnpool层和GCN层组成。最后一层节点的输出特征向量是网络embedding,可用于节点分类、链路预测等多种任务。

16. Understanding the representation power of graph neural networks in learning graph topology

——了解图神经网络在学习图拓扑中的表示能力

大多数工作把图卷积当做黑盒来提取图数据的特征。本文提出利用图矩分析GCN的表示能力。

(1)学习图矩

给定一些由未知图生成过程生成的图,如果要从图中学习就需要准确的推断生成过程的推断。类似于随机变量的矩表示它的概率分布,图矩能够表示图生成的随机过程。

图矩:一个 p p p 阶的图矩 M p M_p Mp A A A p p p 阶多项式的整体平均值,即:
M p ( A ) = ∏ q = 1 p ( A ⋅ W q + B q ) M_p(A)=\prod_{q=1}^{p}(A\cdot W_q +B_q) Mp(A)=q=1p(AWq+Bq)
利用GCN学习图矩:一个单层的GCN为
F ( A , h ) = σ ( f ( A ) ⋅ h ⋅ W + b ) F(A, h)=\sigma(f(A)\cdot h\cdot W + b) F(A,h)=σ(f(A)hW+b)
f f f 是传递消息的规则, h h h 是节点 i i i 的属性(特征), W W W b b b 分别是权重和偏置。由于本文只关心图的拓扑结构,因此作者忽略了 h h h ,并且设 $ h = 1$, σ ( x ) = x \sigma(x)=x σ(x)=x。对于高阶的图矩 M p = ∑ j ( A p ) i j M_p = \sum_j(A^p)_{ij} Mp=j(Ap)ij,单层的GCN必须学习函数 f ( A ) = A p f(A)=A^p f(A)=Ap。实验证明,当 f ( A ) = A f(A)=A f(A)=A时,GCN可以很好地学习图矩,但是当 f ( A ) = D − 1 A f(A)=D^{-1}A f(A)=D1A 的时候,GCN在学习图矩时完全失败。这也就证明了GCN由于排列不变性约束带来的约束。

(2)模块化的图卷积设计

为了克服GCN在学习图矩上的限制,作者设计了模块化的GCN
在这里插入图片描述
a) 单层GCN设计。本文设计的图卷积中有三个不同的传播方式,然后每一种传播方式得到的特征串联输入到全连接网络中去。

b) 整体网络设计。本文在GCN的前向传播过程中增加了残差连接,能够近似图矩的任何多项式。设计的网络能够保持排列的不变性的同时获取到更高阶的图矩。

17. Learning Multimodal Graph-to-Graph Translation for Molecular Optimization

——学习多模态图对图的翻译以进行分子优化

本文将化学生物方向的分子优化当做图对图的翻译问题,目的是在配对分子的基础上,以更好的方式将一个分子图映射到另一个分子图上。

本文提出了联结树编解码器,它是一种精炼的图-图神经网络结构,能够利用注意力解码分子图。

作者首先把树看作是图,然后将联结树和图一起输入到消息传递网络中去编码。消息传递网络 $ g_1$为
v u v ( t ) = g 1 ( f u , f u v , ∑ w ∈ N ( u ) v w v ( t − 1 ) ) \textbf{v}_{uv}^{(t)} = g_1(f_u, f_{uv},\sum_{w\in N(u)}\textbf{v}_{wv}^{(t-1)}) vuv(t)=g1(fu,fuv,wN(u)vwv(t1))
f u f_u fu表示节点u的特征, f u v f_{uv} fuv 表示节点 u u u v v v 之间边的特征。 v u v \textbf{v}_{uv} vuv表示节点u到v的信息。迭代T步后,作者通过另一个神经网络 g 2 ( ⋅ ) g_2(·) g2()聚合消息,得到每个顶点的潜在向量,捕获它的局部图(或树)结构:
x u = g 2 ( f u , ∑ v ∈ N ( u ) v u v T ) x_u = g_2(f_u,\sum_{v\in N(u)}v_{uv}^{T}) xu=g2(fu,vN(u)vuvT)
得到 x x x 后,作者利用一个带注意力机制的循环神经网络解码树,得到 T ^ \hat{\mathcal{T}} T^,然后在从预测的树 T ^ \hat{\mathcal{T}} T^建立分子图。

18. Measuring and Improving The Use of Graph Information in Graph Neural Networks

——图神经网络中图信息的度量和改进

本文主要是针对为什么GNN在图数据上的表现比基于欧氏距离的方法好这个问题展开讨论。作者认为,GNN的性能提升和邻居信息的数量和质量高度相关,因此,作者分别对节点特征和标签提出了两种平滑度量来帮助理解GNN中的图信息,并且根据两种平滑度量设计了一个GNN模型——CS-GNN

c v c_v cv 表示节点 v v v 自己的特征, s v s_v sv表示聚合的 v v v 的邻居的特征,一般的GNN模型可以看做是两个映射函数 f 1 f_1 f1 f 2 f_2 f2
c v i k = f 1 ( c v i ( k − 1 ) , s v i ( k − 1 ) ) s v i ( k − 1 ) = f 2 ( ∑ v j ∈ N v i a i , j ( k − 1 ) ⋅ c v j k − 1 ) c_{v_i}^{k}=f_1(c_{v_i}^{(k-1)},s_{v_i}^{(k-1)}) \\ s_{v_i}^{(k-1)}=f_2(\sum_{v_j\in \mathcal{N}_{v_i}}a_{i,j}^{(k-1)}\cdot c_{v_j}^{k-1}) cvik=f1(cvi(k1),svi(k1))svi(k1)=f2(vjNviai,j(k1)cvjk1)
k k k 表示层号, a i , j a_{i, j} ai,j表示拉普拉斯矩阵中对应位置的参数。作者将 c v i k c_{v_i}^{k} cvik 分解成两个部分来分析, c v i k = c ˘ v i ( k ) + n ˘ v i ( k ) c_{v_i}^{k}=\breve{c}_{v_i}^{(k)} + \breve{n}_{v_i}^{(k)} cvik=c˘vi(k)+n˘vi(k) c ˘ v i ( k ) \breve{c}_{v_i}^{(k)} c˘vi(k) 表示真实的信息, n ˘ v i ( k ) \breve{n}_{v_i}^{(k)} n˘vi(k) 表示噪声信息。

(1)特征平滑

作者利用KL散度度量了一个节点从邻居获取的信息的增益。当节点特征 c c c和邻居聚合特征 s s s相等时,散度为0,表示节点没有从它的邻居中获取到有用的信息。反之,如果节点特征和邻居聚合的特征不同,散度的值是正的。但是由于在实际操作中,邻居聚合的特征是未知的并且参数也是未知的,因此作者提出一个度量来估计散度 λ f \lambda_f λf
λ f = ∣ ∣ ∑ v ∈ V ( ∑ v ′ ∈ N v ( x v − x v ′ ) ) 2 ∣ ∣ 1 ∣ E ∣ ⋅ d \lambda_f = \frac{||\sum_{v\in \mathcal{V}}(\sum_{v^{'}\in \mathcal{N_v}}(x_v-x_{v_{'}}))^2||_1}{|\mathcal{E}|\cdot d} λf=EdvV(vNv(xvxv))21
大的 λ f \lambda_f λf意味着模型可以从图数据中获得更多信息,小的 λ f \lambda_f λf表示邻居里有用的信息较少

(2)标签平滑

具有相同标签的邻居会贡献正的信息,其他邻居会有负的干扰,因此,标签平滑设计为
λ l = ∑ e v i , v j ∈ E ( 1 − I ( y v i = y v j ) ) / ∣ E ∣ \lambda_l=\sum_{e_{v_i,v_j}\in \mathcal{E}}(1-\mathbb{I}(y_{v_i}=y_{v_j})) / |\mathcal{E}| λl=evi,vjE(1I(yvi=yvj))/E
I ( ⋅ ) \mathbb{I}(\cdot) I()表示指示函数。大的 λ l \lambda_l λl表示不同标签的节点更有可能连接,小的 λ l \lambda_l λl 表示节点可以从邻居中得到许多正的增益。

根据 λ f \lambda_f λf λ l \lambda_l λl ,设计的GNN模型应该具有大的 λ f \lambda_f λf 和小的 λ l \lambda_l λl

(3) CS-GNN

作者利用 λ l \lambda_l λl 丢弃那些带有负信息的特征。如果 a i , j ( k ) a_{i,j}^{(k)} ai,j(k) 小于 λ l \lambda_l λl 中第 r r r 小的数值,那么就设 a i , j ( k ) = 0 a_{i,j}^{(k)}=0 ai,j(k)=0。然后,作者又利用 λ f \lambda_f λf 决定输出的维度,因为大的维度会使得注意力机制波动,小的维度会限制表达能力。

最终,CS-GNN的卷积公式为:
h v i ( k ) = A ( W l ( k ) ⋅ ( h v i ( k − 1 ) ∣ ∣ ∑ v j ∈ N v i a i , j ( k − 1 ) ⋅ h v j ( k − 1 ) ) ) h_{v_i}^{(k)}=A(W_l^{(k)}\cdot (h_{v_i}^{(k-1)}|| \sum_{v_j \in \mathcal{N}_{v_i}}a_{i,j}^{(k-1)}\cdot h_{v_j}^{(k-1)})) hvi(k)=A(Wl(k)(hvi(k1)vjNviai,j(k1)hvj(k1)))

19. Abstract Diagrammatic Reasoning with Multiplex Graph Networks

——利用多重图网络进行抽象图推理

本文是利用GNN在IQ测试中进行推理。抽象图推理,是通过给定的一组图像,找到其规律,推断出下一幅图是选项中的哪一个(选择题)。

作者提出了MXGNet进行抽象推理,它是一个多层的多重图神经网络。这里的多层是指图是在多组图形组里构建的,多重是指图的边编码了不同属性的多重关系,比如颜色、形状和位置。MXGNet有三个组成部分:一个特征提取模块,图处理模块和推理模块。

第一部分——特征提取模块,作者使用了类似于Faster R-CNN的方式提取了特征(相当于目标检测)。

第二部分——图处理模块。这个模块主要是为了生成边的特征,实现方式是通过一个映射函数将第一部分提取的特征映射到边上。

第三部分——图推断模块,实现方式是把边的特征拼接起来,然后通过残差块输入到全连接层中进行分类。

20. Deep Graph Infomax

本文是研究如何将Deep Infomax(DIM)算法迁移地应用到图领域中,使其能够以无监督的方式学习节点的特征嵌入。

DIM的一个核心是训练一个编码器,目标函数不是最小化输入与输出的MSE,而是最大化输入和输出的互信息。互信息是概率论和信息论领域的内容,它表示一个随机变量中包含另一个随机变量的信息量,可以当做是两个随机变量之间的相关程度。互信息计算方式为
I ( X ; Y ) = ∫ Y ∫ X p ( y ∣ x ) p ( x ) log ⁡ p ( y ∣ x ) p ( y ) d x d y I(X;Y)=\int_Y\int_Xp(y|x)p(x)\log\frac{p(y|x)}{p(y)} dxdy I(X;Y)=YXp(yx)p(x)logp(y)p(yx)dxdy
X X X 表示输入, Y Y Y 表示编码器的输出(学习到的特征)。如果最大化互信息,那么 p ( y ∣ x ) p ( y ) \frac{p(y|x)}{p(y)} p(y)p(yx) 也会变大, p ( y ∣ x ) p(y|x) p(yx) 会大于 p ( y ) p(y) p(y),这也代表着对于每一个样本 x x x,编码器能够找出专属于样本 x x x 的特征 y y y,那么也就能很好的区分样本。在最大化互信息时,DIM使用了“负采样估计”,也就是引入一个判别网络, x x x 和对应的 y y y 视为一个正样本对, x x x 和随机抽取的 y y y 视为负样本对,然后最大化似然函数训练。

DIM的第二个核心就是最大化局部特征和全局特征的互信息。因为对于图片来说,它的相关性更多体现在局部中,图片的分类和识别应该是一个从局部特征到全局特征的过程。这里的局部特征指的是卷积得到的特征图,全局特征指的是编码得到的特征向量。

那么如果把DIM算法应用到图邻域中,要解决4个问题

  1. 如何得到局部特征
  2. 如何得到全局特征
  3. 如何得到负样本的局部特征
  4. 如何设计判别网络D,区分正负样本对

作者的解决方案:

  1. 作者设置每一个节点的特征向量就是这个节点的局部特征 h i h_i hi。为了获取节点特征,本文使用了GCN
  2. 全局特征 s s s:对所有的局部特征取平均 s = R ( H ) = 1 N ∑ i − 1 N h i s=\mathcal{R}(H)=\frac{1}{N}\sum_{i-1}^{N}h_i s=R(H)=N1i1Nhi
  3. 本文通过一个“腐蚀函数” C \mathcal{C} C,以获得负样本。比如论文中使用的是节点扰动(node shuffling),简单来说就是邻接矩阵不变,输入特征矩阵 X X X 进行row-wise的扰动,得到 X ~ \widetilde{X} X 。(因为本文中的图是真实存在的,所以每一个图中的节点都是真实属于同一类的)
  4. ( h i , s ) (h_i,s) (hi,s)为正样本对, ( h ~ i , s ~ ) (\widetilde{h}_i,\widetilde{s}) (h i,s )为负样本对,类似于DIM,本文利用一个双线性二元分类器训练。

整个模型的架构为

在这里插入图片描述

21. End to end learning and optimization on graphs

真实应用经常需要在图上结合学习和优化问题。因此大部分方法也都是两阶段的,本文提出了一个可以同时学习和优化的网络ClusterNet,它的核心思想是把比较简单的优化问题求解器合并为可微层,然后把难的问题映射到简单问题的一个实例。

在这里插入图片描述
作者首先利用GCN得到节点特征。然后将特征输入到K-means层并且生成一个图优化问题的解 x x x

22. Graph Convolutional Reinforcement Learning

增强学习中的概念:

  • 智能体(Agent):可以采取行动的智能个体;
  • 行动(Action):A 是智能体可以采取的行动的集合。
  • 状态(State,S):一个状态就是智能体所处的具体即时状态;
  • 环境(Environment):环境将智能体当前的状态和行动作为输入,输出是智能体的奖励和下一步的状态。
  • 奖励(Reward,R):衡量某个智能体的行动成功或者失败的反馈。

本文提出了利用图卷积进行多智能体的强化学习(DGN)。在DGN中每个节点就是一个智能体,节点的特征是智能体的编码,智能体之间的关系当做一个图,利用图研究智能体之间的合作关系。

智能体的位置和数量是一直变化的,所以图卷积不能直接使用。本文对每一个智能体都构造了邻接矩阵,并且和智能体特征矩阵相乘后得到每个智能体的邻域特征。然后邻域智能体之间的特征通过multi-head实现。multi-head就是将多个输出拼接起来,在通过全连接和ReLU得到图网络层的输出。最后输入到Q网络,将状态-行动映射到可能的奖励上。

23. Graph HyperNetworks for Neural Architecture Search

——用于神经结构搜索的图超网络

本文针对神经结构搜索(NAS)中搜索时间过长问题提出了解决方案。神经结构搜索可以自动找到最佳的网络模型结构,它包括两个优化问题,内优化问题是优化给定神经网络 a a a的参数 w w w,得到一个最优的参数 w ∗ w^* w,外优化问题是通过一个验证损失得到一个最优的网络结构 a ∗ a^* a
w ∗ ( a ) = a r g m i n w L t r a i n ( w , a ) a ∗ = a r g m i n a L v a l ( w ∗ ( a ) , a ) w^*(a)=argmin_w\mathcal{L}_{train}(w, a) \\ a^* = argmin_a\mathcal{L}_{val}(w^*(a), a) w(a)=argminwLtrain(w,a)a=argminaLval(w(a),a)
本文提出的图超网络(GHN)相比于其他方法快了近10倍左右。

在这里插入图片描述

首先是对随机选取一些结构(卷积层、池化层),形成一个超网络(GHN)。在图传播之后,GHN里的每一个节点都生成了自己的权重参数。然后训练GHN,让生成的这些权重能够最大程度的减少训练损失。

24. Composition-based Multi-relational graph convolutional networks

——基于组合的多关系图卷积网络

本文作者提出,类似于知识图谱里的多关系图才是最符合真实应用的图,而不是简单的无向图。而且大部分GCN只关注于学习节点的特征,但实际上,节点间的关系表达也是很重要的。本文提出了CompGCN,能够联合学习多关系图中的节点特征和关系特征。它的框架为

在这里插入图片描述
给定节点和关系嵌入,CompGCN在中心节点(例如,上面的Christopher Nolan)附近的每个边上执行合成操作。 然后将组成的嵌入分别与特定的滤波器 W o W_o Wo W I W_I WI卷积,然后汇总来自所有邻居的消息,以获取更新的中央节点嵌入。 同样,对关系特征,使用独立的权重矩阵进行转换。

25. StructPool:Structured Graph Pooling via Conditional Random Fields

——通过条件随机场进行结构化图的池化

本文作者针对大部分池化方法没有考虑到图结构信息的问题,提出了结构化池化StrcutPool。作者把图的池化问题当做是节点聚类问题,学习一个聚类分配矩阵,并且用条件随机场获得不同节点之间的关系。整体的框架为

在这里插入图片描述
假设图中一共有六个节点,首先特征矩阵 X X X和邻接矩阵 A A A输入到多个GCN层得到一元能量矩阵,同时也通过注意力机制得到成对的能量(pairwise energy)。然后通过迭代更新,能够得到最可能的分配矩阵,通过这个分配矩阵可以得到池化后带有4个节点的图。

26. Layer-dependent importance sampling for training deep and large graph convolutional networks

——依赖于层的重要性采样以训练深度和大型图卷积网络

图神经网络中的采样研究的不是一类具体的模型,而是一种训练方法。目前大致有两种方法,一种是基于节点的采样,另一种是基于层的采样。基于节点的采样会导致模型的复杂程度呈指数增加,按层采样会导致采样的节点间的关系稀疏。本文结合了节点采样和按层采样,在层间独立采样的基础上,在第一层采样固定数目节点,然后下一层的采样在第一层所有节点的邻居节点中采样固定数目节点,这样可以同时减少复杂度、减弱稀疏。

一般按层采样的GCN可以表示为:
Z ~ ( l ) = P ~ ( l − 1 ) H ~ ( l − 1 ) W ~ ( l − 1 ) , H ~ ( l − 1 ) = σ ( Z ~ ( l − 1 ) ) \widetilde{Z}^{(l)}=\widetilde{P}^{(l-1)}\widetilde{H}^{(l-1)}\widetilde{W}^{(l-1)}, \qquad \widetilde{H}^{(l-1)}=\sigma(\widetilde{Z}^{(l-1)}) Z (l)=P (l1)H (l1)W (l1),H (l1)=σ(Z (l1))
P ~ \widetilde{P} P 是修改过的拉普拉斯矩阵,也可以看作是经过一定缩放后的采样二部图, W ~ \widetilde{W} W 是网络的参数矩阵, σ \sigma σ是激活函数。这种采样策略层与层之间是独立的,所以才会导致稀疏问题。因此,作者提出在按层采样的基础上加入按节点采样,那么第 l l l层的采样节点是根据所有上层已经产生的采样节点产生的。

27. Learning Localized Generative Models for 3D Point Clould via Graph Convolution

——通过图卷积学习三维点云的局部生成模型

本文利用图卷积研究了点云中无监督的GAN的生成模型。作者采用的图卷积是ECC(动态图卷积),它的卷积形式是
h i ( l + 1 ) = σ ( ∑ j ∈ N i l Θ l , j i h j l ∣ N i l ∣ + h i l W l + b l ) h_i^{(l + 1)}=\sigma(\sum_{j\in\mathcal{N}_i^l}\frac{\Theta^{l,ji}h_j^l}{|\mathcal{N_i^l}|} + h_i^lW^l+b^l) hi(l+1)=σ(jNilNilΘl,jihjl+hilWl+bl)
W l , b l W^l, b^l Wl,bl分别是全连接层的权重和偏置, Θ l , j i = F C ( h j l − h i l ) \Theta^{l,ji}=FC(h_j^l-h_i^l) Θl,ji=FC(hjlhil),这里FC是全连接层,j是节点i的邻居, Θ \Theta Θ 的大小取决于节点i和节点j之间的差异,如果两对节点有相同的差异,那么它们的 Θ \Theta Θ 也会一样。基于这个表达式,可以设计出图卷积形式的GAN生成器。

在这里插入图片描述
H l H^l Hl是特征矩阵, H l ∈ R N × d l H^l\in \mathbb{R}^{N\times d^l} HlRN×dl N N N是点云中点的数量, d l d^l dl是第 l l l 层特征的维度, G R A P H GRAPH GRAPH 表示利用特征之间的 l 2 l_2 l2距离计算k-nn图的邻接矩阵。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值