(ICLR 2019)APPNP传播用 PageRank,不用神经网络!

论文阅读:

https://arxiv.org/pdf/1810.05997

本篇文章核心贡献可以用一句话来总结把 GNN 的 message passing 解耦,先用 MLP 做预测,再用 Personalized PageRank (PPR) 把预测在图上扩散

这句核心话是什么意思?

传统 GNN = "学习 + 传播" 绑在一起,而APPNP = "学习(MLP)" 和 "传播(PPR)" 分开做。传统 GNN 的邻居传播为: ,特征变换为:,神经网络学习权重为:,这就意味着学习和传播是捆绑在一起的,每加一个 GCN 层,就是再做一次:邻居传播、参数学习、非线性激活;这也就导致了如果想扩大邻域,就只能"加层",但加层会导致oversmoothing、训练难、参数多。

而APPNP 解决了 GCN 的两个大痛点:

  • GCN 层数一深就 oversmoothing(节点表示变得一样)。随着层数深 → 相当于不断做邻居平均(Laplacian smoothing), 层数太深 → 所有节点 embedding 趋于一样, 这称为 oversmoothing。
  • GCN 的可用层数通常只有 2--3 层,因此GCN 只能看到很小的邻域(2-hop)。
  • GCN 想扩大感受野必须加层、参数变多、训练变难。

如何解决问题?

GCN 的传播本质是 random walk,随机游走走太远就会变成全图 stationary distribution(与起点无关)。 为解决这个问题,论文把 random walk 换成Personalized PageRank (PPR):

本质上加了"回跳(teleport)"机制,以 (1−α) 的概率走向邻居,以 α 的概率跳回根节点 i,**PPR 即使传播无限次,仍然保持节点的"个性化中心性",不会失焦,**这正好解决 GCN 的 oversmoothing!

APPNP真正被使用的模型

用 Power Iteration(幂迭代)近似 PPR:

参考:

https://blog.csdn.net/fnoi2014xtx/article/details/107567629

https://blog.csdn.net/gitblog_00008/article/details/139916344

相关推荐
Keep_Trying_Go2 小时前
论文STEERER人群计数,车辆计数以及农作物计数算法详解(pytorch)
人工智能·pytorch·python
gzu_012 小时前
基于昇腾 配置pytorch环境
人工智能·pytorch·python
陈 洪 伟2 小时前
AI理论知识系统复习(6):梯度饱和、梯度消失、梯度爆炸
人工智能
云在Steven2 小时前
在线确定性算法与自适应启发式在虚拟机动态整合中的竞争分析与性能优化
人工智能·算法·性能优化
mit6.8243 小时前
[AI tradingOS] AI决策引擎 | decision/engine.go | 交易哲学prompts
人工智能·区块链
whaosoft-1434 小时前
51c自动驾驶~合集43
人工智能
HoneyMoose4 小时前
AI Bot 爬虫新势力
人工智能·爬虫
xier_ran4 小时前
深度学习:Adam 优化器实战(Adam Optimizer)
人工智能·深度学习
人工智能训练4 小时前
Ubuntu中如何进入root用户
linux·运维·服务器·人工智能·ubuntu·ai编程·root