论文解读(PPNP)《Predict then Propagate: Graph Neural Networks meet Personalized PageRank》
论文信息
论文标题:Predict then Propagate: Graph Neural Networks meet Personalized PageRank
论文作者:Johannes Gasteiger, Aleksandar Bojchevski, Stephan Günnemann
论文来源:2019,ICLR
论文地址:download
论文代码:download
1-Abstract
本文主要将 PageRank 算法引入到 GNNs ,提出了 PPNP 模型 和APPNP 模型。
2-Introduction
问题:
- 增大邻域范围,充分利用领域信息;【传播多层——消息传递机制的本质,也可以看做随机游走】
- 解决过平滑问题(一般均为传播多层造成的过平滑);
受 带重启随机游走(random walk)的影响,本文利用 personalized PageRank 代替随机游走 ,来增加传送到根节点的机会,以避免过平滑现象(主要是更多的考虑根节点的邻域),此外该模型允许使用更多的传播层数。【通过 $\text{Eq.4}$ 便于理解】
3 Graph convolutional networks and their limited range
半监督节点分类 GCN:
$\boldsymbol{Z}_{\mathrm{GCN}}=\operatorname{softmax}\left(\hat{\tilde{\tilde{A}}} \operatorname{ReLU}\left(\hat{\tilde{\tilde{A}}} \boldsymbol{X} \boldsymbol{W}_{0}\right) \boldsymbol{W}_{1}\right) \quad\quad\quad(1)$
其中,$\hat{\tilde{\boldsymbol{A}}}=\tilde{\boldsymbol{D}}^{-1 / 2} \tilde{\boldsymbol{A}} \tilde{\boldsymbol{D}}^{-1 / 2}$。
存在的问题:【APPNP 所解决的问题 】
- 不能使用更多的传播层,因为会造成过平滑;
- 层数增加,参数量增加;
4 Personalized propagation of neural predictions
早起版本 PageRank:
$\pi_{\mathrm{pr}}=A_{\mathrm{rw}} \pi_{\mathrm{pr}}, \quad\quad\text { with }\quad\quad A_{\mathrm{rw}}=A D^{-1}$
以及考虑根节点信息,提出 personalized PageRank 算法:【类似带重启的随机游走,缓解过平滑】
其中:
- $\hat{\tilde{A}}=\tilde{\boldsymbol{D}}^{-1 / 2} \tilde{\boldsymbol{A}} \tilde{\boldsymbol{D}}^{-1 / 2}$;
- $i_x$ 表示初始根节点的特征;
计算得到平稳状态后的分布:
用单位矩阵代替指标向量 $i_x$ 得 personalized PageRank matrix:
$\mathbf{\Pi}_{\mathrm{ppr}}=\alpha\left(\boldsymbol{I}_{n}-(1-\alpha) \hat{\tilde{ A }}\right)^{-1}$
$\mathbf{\Pi}_{\mathrm{ppr}}$ 中的元素 $yx$ 可以理解为 节点 $x$ 对节点 $y$ 的影响分数 $I(x, y) \propto \Pi_{\mathrm{ppr}}^{(y x)}$。【其实就是 节点 $x$ 转移到节点 $y$ 的概率值】
Note:上述式子可逆的时候需要满足 $\frac{1}{1-\alpha}>1$ 且不能为 $\hat{\tilde{A}}$ 的特征值。
借由上述阐述,得到 PPNP 模型:
$\boldsymbol{Z}_{\mathrm{PPNP}}=\operatorname{softmax}\left(\alpha\left(\boldsymbol{I}_{n}-(1-\alpha) \hat{\tilde{ A }}\right)^{-1} \boldsymbol{H}\right), \quad \boldsymbol{H}_{i,:}=f_{\theta}\left(\boldsymbol{X}_{i,:}\right)\quad\quad\quad(3)$
Note:直接计算 $\Pi_{\mathrm{ppr}}$ ,具有高计算复杂度且需要 $\mathcal{O}\left(n^{2}\right)$ 的内存空间。【APPNP 改进的地方】
APPNP 通过幂次迭代逼近 topic-sensitive PageRank 来实现线性计算复杂度。传播过程为:
$\begin{array}{l}\boldsymbol{Z}^{(0)} &=&\boldsymbol{H}=f_{\theta}(\boldsymbol{X}) \\\boldsymbol{Z}^{(k+1)} &=&(1-\alpha) \hat{\tilde{A}} \boldsymbol{Z}^{(k)}+\alpha \boldsymbol{H} \\\boldsymbol{Z}^{(K)} &=&\operatorname{softmax}\left((1-\alpha) \hat{\tilde{\boldsymbol{A}}} \boldsymbol{Z}^{(K-1)}+\alpha \boldsymbol{H}\right)\end{array}\quad\quad\quad(4)$
这个迭代方案的收敛性证明如下:
在 PPNP 和 APPNP 中,影响每个节点的邻域的大小都可以通过传送概率 $\alpha $ 进行调整。
附:图扩散
$\mathcal{T}_{\mathbf{A}}(\mathbf{A})=\sum_{k=0}^{\infty} \Theta_{k} \mathbf{S}^{k}$
其中:
- $\mathbf{S} \in \mathbb{R}^{N \times N}$ 是广泛的转移矩阵
- $\Theta$ 是加权系数,且 $\sum_{k=0}^{\infty} \Theta_{k}=1 , \Theta_{k} \in[0,1]$
Personalized PageRank (PPR) kernal
其中:
- $\mathbf{S}=\mathbf{D}^{-1 / 2} \mathbf{A D}^{-1 / 2}$
- $\Theta_{k}=\alpha(1-\alpha)^{k}$
得:
- $\mathcal{T}_{\mathbf{A}}^{P P R}(\mathbf{A})=\alpha\left(\mathbf{I}_{n}-(1-\alpha) \mathbf{D}^{-1 / 2} \mathbf{A} \mathbf{D}^{-1 / 2}\right)^{-1}$
5 Experimental setup
消息传递算法对 数据划分 和 权重初始化 都非常敏感。
不同模型在随机数据划分 和 随机权重初始化的标准差
6 Conclusion
在本文中,我们介绍了神经预测(PPNP)及其快速近似APPNP。我们通过考虑GCN和PageRank之间的关系并将其扩展到个性化PageRank来导这个模型。这个简单的模型解耦了预测和传播,并解决了许多消息传递模型中固有的有限范围的问题,而没有引入任何额外的参数。它使用来自一个大的、可调节的(通过传送概率 $\alpha$)邻域的信息来对每个节点进行分类。该模型在计算上高效,优于目前最先进的研究,在多个图上的半监督分类方法。
论文解读(PPNP)《Predict then Propagate: Graph Neural Networks meet Personalized PageRank》的更多相关文章
- 论文解读 - Composition Based Multi Relational Graph Convolutional Networks
1 简介 随着图卷积神经网络在近年来的不断发展,其对于图结构数据的建模能力愈发强大.然而现阶段的工作大多针对简单无向图或者异质图的表示学习,对图中边存在方向和类型的特殊图----多关系图(Multi- ...
- 论文解读(LA-GNN)《Local Augmentation for Graph Neural Networks》
论文信息 论文标题:Local Augmentation for Graph Neural Networks论文作者:Songtao Liu, Hanze Dong, Lanqing Li, Ting ...
- 论文解读(KP-GNN)《How Powerful are K-hop Message Passing Graph Neural Networks》
论文信息 论文标题:How Powerful are K-hop Message Passing Graph Neural Networks论文作者:Jiarui Feng, Yixin Chen, ...
- 论文解读(soft-mask GNN)《Soft-mask: Adaptive Substructure Extractions for Graph Neural Networks》
论文信息 论文标题:Soft-mask: Adaptive Substructure Extractions for Graph Neural Networks论文作者:Mingqi Yang, Ya ...
- 论文解读(SelfGNN)《Self-supervised Graph Neural Networks without explicit negative sampling》
论文信息 论文标题:Self-supervised Graph Neural Networks without explicit negative sampling论文作者:Zekarias T. K ...
- 论文解读(DAGNN)《Towards Deeper Graph Neural Networks》
论文信息 论文标题:Towards Deeper Graph Neural Networks论文作者:Meng Liu, Hongyang Gao, Shuiwang Ji论文来源:2020, KDD ...
- 论文解读(GraphSMOTE)《GraphSMOTE: Imbalanced Node Classification on Graphs with Graph Neural Networks》
论文信息 论文标题:GraphSMOTE: Imbalanced Node Classification on Graphs with Graph Neural Networks论文作者:Tianxi ...
- 论文解读(ChebyGIN)《Understanding Attention and Generalization in Graph Neural Networks》
论文信息 论文标题:Understanding Attention and Generalization in Graph Neural Networks论文作者:Boris Knyazev, Gra ...
- 论文解读(GIN)《How Powerful are Graph Neural Networks》
Paper Information Title:<How Powerful are Graph Neural Networks?>Authors:Keyulu Xu, Weihua Hu, ...
随机推荐
- 我的总结常用的js知识
nvm nvm是node的包管理工具.在不同的项目下使用不同的node版本.下载地址 https://github.com/coreybutler/nvm-windows/releasesnvm in ...
- 对 Python 中 GIL 的一点理解
GIL(Global Interpreter Lock),全局解释器锁,是 CPython 为了避免在多线程环境下造成 Python 解释器内部数据的不一致而引入的一把锁,让 Python 中的多个线 ...
- Python 空间名称与闭包函数
空间名称与闭包函数 名称空间 名称空间 namespaces:存放名字的地方,是对栈区的划分 名称空间在栈区中分为三种,详细的划分不同的空间,不同空间可以存放相同名字的名字 内置名称空间 存放的名字: ...
- React history.push()无法跳转 url改变页面不渲染
一.history.push()无法跳转参考了很多文章 研究一下生命周期 render是要有state变化才会执行 BrowserHistory只有props变化 无法触发render 如下改造环境 ...
- transforms.py
from PIL import Image from torchvision import transforms #python的用法-->tensor数据类型 #通过transforms.To ...
- STL栈与队列
#include<queue>// 队列 #include<stack>//栈 stack<int> s;//参数也是数据类型,这是栈的定义方式 queue< ...
- Maven POM文件介绍
1. POM文件是什么 1.1 Super POM 1.2 Minimal POM 1.3 Effective POM 3. 项目继承 和 项目聚合 2.1 Project Inheritance 项 ...
- Vue动态组件的实践与原理探究
我司有一个工作台搭建产品,允许通过拖拽小部件的方式来搭建一个工作台页面,平台内置了一些常用小部件,另外也允许自行开发小部件上传使用,本文会从实践的角度来介绍其实现原理. ps.本文项目使用Vue CL ...
- Python自动化办公:批量将文件按分类保存,文件再多,只需一秒钟解决
序言 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0) 当我们电脑里面的文本或者或者文件夹太多了,有时候想找到自己想要的文件,只能通过去搜索文件名,要是名字忘记 ...
- label问题排查:打不开标注好的图像
问题描述 之前标注好的文件,标注有bbox和若干points.选择Open Dir打开图像目录,选择Change Output Dir选择json文件所在目录.发现有些图片能正常显示标注后的状态.而有 ...