Liu S., Ying R., Dong H., Lin L., Chen J., Wu D. How powerful is implicit denoising in graph neural networks? arXiv preprint arXiv: 2209.14514, 2022.
概
这篇文章理论分析了 GNN 去噪的内在机制.
符号说明
- G=(V,F), 无向图;
- |V|=n;
- A∈{0,1}n×n, 邻接矩阵;
- Ni={vi|Aij=1}, 结点 vi 的一阶邻居;
- D,Dii=∑jAij;
- ~A=D−1/2AD−1/2;
- ~L=I−~A;
- X∈Rn×d, feature matrix;
- Y∈{0,1}n×c, label matrix, ont-hot;
GNN 的去噪能力
-
现有的 GNN 可以近似等价于如下的一个优化问题:
q(F)=minF∥F−X∥2F+λ tr (FT~LF);(1)
-
通过 ∇q(F)=0, 可以得到如下的一个显式解:
F=(I+λ~L)−1X≈1λ+1L∑l=0(λλ+1~A)l,
这里我们用 Neumann series 近似. 相应地, 有 Neumann Graph Convolution, 定义为:
H=~ALXW:=1λ+1L∑l=0(λλ+1~A)lXW,
这里 W 是可训练的矩阵.
-
假设特征 X 本身是带有噪声的, 且整体为如下形式:
X=X∗+η,(8)
其中 X∗ 是干净的特征, 而 η 为噪声.
-
现在我们要分析 GNN 能够通过 W 来去除该噪声的能力:
minWf(W)=∥~ASXW−Y∥2F;
-
假设理想的 W∗ 为:
Wg∗=argminWg(W)=∥~ASX∗W−Y∥2F.(12)
-
则问题就是, (8) 经过 k 步梯度下降得到的解 W(k)f 和 W∗g 的差距有多大:
g(W(k)f)−g(W∗g)≤...,
以及和什么有关.
-
为了回答这个问题, 我们首先需要知道几个概念:
-
High-order Graph Connectivity Factor:
τ=maxτiτi=nn∑j=1[~AL]2ij/(1−(λλ+1)L+1)2.
注意到 (需要假设 ~A=D−1A),
n∑j=1[~AL]ij=1−(λλ+1)L+1,
此时容易得到:
(1−(λλ+1)L+1)2/n≤n∑j=1[~AL]2ij≤(1−(λλ+1)L+1)2,
前者是 ~AL 的每一行的值都一样, 此时分布最均匀, 也可以说此时图的连通性是最佳的, 而右边的上界则是每个结点孤立存在彼此均不联通. 所以 τ∈[1,n] 反应了图的一个高阶连通性 (越小连通性越好).
-
一系列其它假设 (请回看原文);
-
此时我们可以回答之前的问题, 它的结论是, 当以步长 α=1/κ 迭代下降 k 次, 则有 1−1/d 的概率下式成立:
g(W(k)f)−g(W∗g)≤O(12ka)+O(τlognn).
由此可以发现, 当 τ 比较小, 梯度下降次数 k 比较多时候, GNN 就会具有一个较好的去噪效果.
注: 其中 κ 是 Lipschitz 常数是出现在假设中的量.
AGSD
-
由此, 本文提出了一种对抗鲁棒的方法:
minF∥F−X∥2F+λmaxL′ tr (FTL′F),∥L′−~L∥F≤ϵ.
-
它等价于:
ρ(F)=minF∥F−X∥2F+λ tr (FT~LF)+λϵ tr (FTFFTF∥FFT∥F);
-
由此可得公式:
F=(I+λ~L+λϵFFT∥FFT∥2F)−1X;
-
作者用下式近似 (因为我们实际上希望 F 接近 X):
H≈1λ+1L∑l=0(λλ+1(~AL−ϵXXT∥XXT∥2F)lXW.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix