网站建设胶州家园陕西建设集团韩城公司网站
- 作者: 五速梦信息网
- 时间: 2026年03月21日 07:47
当前位置: 首页 > news >正文
网站建设胶州家园,陕西建设集团韩城公司网站,镇江高端网站建设,做期货主要看哪个网站目录 1、论文简介2、论文核心介绍2.1、现有方法局限2.2、PageRankPersonalized PageRank2.3、PPNPAPPNP 3、源码复现3.1、模型总体框架3.2、PPNP3.3、APPNP3.4、MLP(两层) 1、论文简介
论文题目——《PREDICT THEN PROPAGATE: GRAPH NEURAL NETWORKS MEET PERSONALI… 目录 1、论文简介2、论文核心介绍2.1、现有方法局限2.2、PageRankPersonalized PageRank2.3、PPNPAPPNP 3、源码复现3.1、模型总体框架3.2、PPNP3.3、APPNP3.4、MLP(两层) 1、论文简介
论文题目——《PREDICT THEN PROPAGATE: GRAPH NEURAL NETWORKS MEET PERSONALIZED PAGERANK》论文作者——Johannes Klicpera, Aleksandar Bojchevski Stephan Gu ̈nnemann论文地址——PREDICT THEN PROPAGATE: GRAPH NEURAL NETWORKS MEET PERSONALIZED PAGERANK源码——源码链接
2、论文核心介绍
2.1、现有方法局限 现有的方法仅仅使用了局部有限的邻域信息更大的邻域信息并没有考虑到。例如GCN它采用平均的方法来聚合一阶邻域信息通过堆叠多层来考虑到更高阶的邻域信息论文中实际是两层GAT则是采用注意力机制来学习不同邻域结点信息对当前结点的重要性也就是说它是对周围邻域结点信息的加权平均。上述方法仍然是浅层的网络并没有利用到深层邻域信息。 现有方法的另外一个缺点就是过平滑现象oversmoothing这也是GCN不能堆叠多层的原因所在。另有作者通过建立GCN和随机游走random walk的关系发现当GCN的层数增加GCN会收敛到随机游走的极限分布会使不同类的结点之间变得不可分导致GCN性能下降。 为了解决上述的问题作者提出了一个新的传播方案这个方案的灵感来自于个性化PageRank算法它平衡了局部邻域信息与更大的邻域信息的需要允许更多的传播步骤而不会导致过平滑现象。此外作者将神经网络从信息传播中分开来允许去实现更大范围的传播而不用改变神经网络结构由于这种特性也可以将SOTA预测方法与文中的传播方案进行融合。
2.2、PageRankPersonalized PageRank PageRank算法通过网页链接重要性得分计算。重要性可认为是网页链接点击。PageRank算法给定一个概率值定义为网页访问的概率。一般地 1 N \frac{1}{N} N1 表示为每个网页节点初始化的概率 P R \rm{PR} PR也是一个初始化的概率值。PageRank 是一个迭代算法因此 P R \rm{PR} PR 值初始化 1 N \frac{1}{N} N1 N N N表示为节点的数量。 P R \rm{PR} PR值的总和一般为1当 P R {\rm{PR}} PR越大说明重要性越大。 给定节点 v v v求节点 v v v的 P R {\rm{PR}} PR值 P R ( v ) ∑ u ∈ N v P R ( u ) O ( u ) PR(v) \sum_{u \in \mathcal{N}_v }\frac{PR(u)}{O(u)} PR(v)u∈Nv∑O(u)PR(u) N v \mathcal{N}v Nv表示所有链接到节点 v v v的集合。 O ( u ) O(u) O(u)表示节点 u u u的对外链接数。最早提出的PageRank算法存在着一些缺点例如当一些节点存在自链接或者是一些节点的出链节点形成循环圈时PageRank在迭代过程中会出现 P R {\rm{PR}} PR持续增大不会减小的情况。对于上述问题PageRank算法被重新进行改进 P R ( v ) α ∑ u ∈ N v P R ( u ) O ( u ) ( 1 − α ) N \mathrm{PR(v)}\alpha\sum{\mathrm{u}\in\mathcal{N}v}\frac{\mathrm{PR(u)}}{\mathrm{O(u)}}\frac{(1-\alpha)}{\mathrm{N}} PR(v)αu∈Nv∑O(u)PR(u)N(1−α) α \alpha α是一个超参数取值一般为0.85。 α \alpha α表示节点跳转时的概率不依据节点之间的链接进行跳转。 PageRank算法衍生出的模型个性化的PageRank算法主要利用图中节点的链接关系来迭代计算节点的权重。PageRank算法使用随机游走的策略来访问图中节点。PageRank算法与个性化Page Rank算法的区别在于随机游走时的跳转行为不同。个性化的PageRank算法对跳转行为进行约束指定调转到的对外链接为特定的节点。例如在个性化排序时用户只能跳转到一些特定的节点这些节点表示用户偏好的那些节点。 PPR ′ ( v ) α ∑ u ∈ N v P R ( u ) O ( u ) ( 1 − α ) r v \text{PPR}^{}(\mathrm{v})\alpha\sum{\mathrm{u}\in\mathcal{N}v}\frac{\mathrm{PR(u)}}{\mathrm{O(u)}}(1-\alpha)\mathrm{r}\mathrm{v} PPR′(v)αu∈Nv∑O(u)PR(u)(1−α)rv r v { 1 v u 0 v ≠ u \mathrm r\mathrm{v}\begin{cases}1\mathrm{~vu}\0\mathrm{~v\neq u}\end{cases} rv{10 vu vu 个性化PageRank算法中用户的偏好表示为 r ∣ v ∣ 1 \mathrm r|\mathrm{v}| 1 r∣v∣1,原始的PageRank采用的计算方式为 Π p r A r w Π p r \Pi{pr} A{rw}\Pi{pr} ΠprArwΠpr, Π p r 是 A r w \Pi{pr}是A{rw} Πpr是Arw的特征向量 A r w A D − 1 A{rw}AD^{-1} ArwAD−1。类似的个性化的PageRank 算法可以表示为 Π p p r ( i x ) ( 1 − α ) A ~ Π p p r ( i x ) α i x \Pi{\mathrm{ppr}}(\mathbf{ix})(1-\alpha)\tilde{{A}}\Pi{\mathrm{ppr}}(\mathbf{i_x})\alpha\mathbf{ix} Πppr(ix)(1−α)A~Πppr(ix)αix 参考连接
2.3、PPNPAPPNP 上一节我们知道了Personalized PageRank算法及其他的表达式对上式进行求解求得 Π p p r \Pi{\mathrm{ppr}} Πppr为 Π p p r ( i x ) α ( I n − ( 1 − α ) A ~ ) − 1 i x \Pi{\mathrm{ppr}}(\mathbf{i{x}})\alpha(\mathbf{In}-(1-\alpha)\tilde{\mathbf{A}})^{-1}\mathbf{i{x}} Πppr(ix)α(In−(1−α)A~)−1ix 其中 A ~ D ~ − 1 2 A ^ D ~ − 1 2 A ^ A I i x 是传送向量 \tilde{A}\tilde{D}^{-\frac{1}{2}}\hat{A}\tilde{D}^{-\frac{1}{2}}\hat{A} AI\mathrm{ix}是传送向量 A~D~−21A^D~−21A^AIix是传送向量。最终的PPNP算法公式表达如下 Z p p n p s o f t m a x ( α ( I n − ( 1 − α ) A ~ ) − 1 H ) Z{\mathrm{ppnp}} \mathrm{softmax}(\alpha(\mathbf{In}-(1-\alpha)\tilde{\mathbf{A}})^{-1}\mathbf{H}) Zppnpsoftmax(α(In−(1−α)A~)−1H) H i , : f θ ( X i , : ) \mathbf{H}{i,:} f{\theta}(\mathbf{X}{i,:}) Hi,:fθ(Xi,:) 其中 X \mathbf{X} X是特征向量矩阵 f θ f{\theta} fθ是具有参数集合 θ \theta θ的神经网络 H ∈ R n × c \mathbf{H} \in R^{n \times c} H∈Rn×c。 由于在计算上式的时候需要求矩阵的逆运算这是一个耗时的操作为了加速PPNP的训练速度作者采用一种近似操作来求解称为APPNP。 Z ( 0 ) H f θ ( X ) , Z ( k 1 ) ( 1 − α ) A ~ Z ( k ) α H , Z ( K ) s o f t m a x ( ( 1 − α ) A ~ Z ( K − 1 ) α H ) Z^{(0)}Hf\theta(\mathbf{X}),\ Z^{(k1)} (1-\alpha)\tilde{A}Z^{(k)}\alpha H,\ Z^{(K)}\mathrm{softmax}((1-\alpha)\tilde{A}Z^{(K-1)}\alpha H) Z(0)Hfθ(X),Z(k1)(1−α)A~Z(k)αH,Z(K)softmax((1−α)A~Z(K−1)αH) 其中 K K K是迭代次数。作者也在后面的附录中也证明了APPNP当 K ⟶ ∞ K \longrightarrow \infty K⟶∞时收敛到PPNP所以APPNP可以看作PPNP的迭代解。 模型的框架如下图所示
3、源码复现 模型复现源码链接链接点我点我 提取码6666 3.1、模型总体框架
import torch
from torch.nn import Module
import torch.nn as nn
from torch.nn import functional as F
import numpy as npclass PPNP(nn.Module):def init(self,model,propagation):super(PPNP,self).init()self.model modelself.propagation propagationdef forward(self,feature,adj):#Generate Prediction#用于生成预测if self.model.class.name MLP:output self.model(feature)else:output self.model(feature,adj)#通过个性化PageRank传播if self.propagation is not None:output self.propagation(output)#返回最后一层的结果return F.log_softmax(output,dim1)3.2、PPNP
class PPNPExtract(Module):def init(self,alpha,adj,dropout):super(PPNPExtract,self).init()self.alpha alphaself.adj adjself.dropout dropoutpassdef forward(self,H):inv self.PPR()inv F.dropout(inv,self.dropout,trainingself.training)return self.alpha * torch.mm(inv,H) def PPR(self):if isinstance(self.adj,torch.Tensor):ADJ self.adj.to_dense().numpy()I_n np.eye(self.adj.shape[0])M I_n-(1-self.alpha)*ADJinv_M np.linalg.inv(M)return torch.Tensor(inv_M)3.3、APPNP
class PowerIteration(Module):def init(self,adj,alpha,k,dropout):super(PowerIteration,self).init()self.adj adjself.alpha alphaself.k kself.dropout dropoutdef forward(self,H):Z Hfor _ in range(self.k):Z F.dropout(Z,self.dropout,trainingself.training)Z (1-self.alpha)*torch.mm(self.adj,Z) self.alpha * Hreturn Z
3.4、MLP(两层)
class MLP(Module):def init(self,input_dim,hid_dim,output_dim,dropout):super(MLP,self).init()self.input_dim input_dimself.hid_dim hid_dimself.output_dim output_dimself.dropout dropoutself.layer1 nn.Linear(input_dim,hid_dim,biasFalse)self.layer2 nn.Linear(hid_dim,output_dim,biasFalse)def forward(self,X):X F.dropout(X,self.dropout,trainingself.training)X self.layer1(X)X F.relu(X)X F.dropout(X,self.dropout,trainingself.training)X self.layer2(X)return Xdef repr(self) - str:return self.class.name
- 上一篇: 网站建设交流论坛上海网站建设公司服务怎么做
- 下一篇: 网站建设糹金手指花总佛山营销手机网站建设
相关文章
-
网站建设交流论坛上海网站建设公司服务怎么做
网站建设交流论坛上海网站建设公司服务怎么做
- 技术栈
- 2026年03月21日
-
网站建设江苏百拓惠州做网站好的公司
网站建设江苏百拓惠州做网站好的公司
- 技术栈
- 2026年03月21日
-
网站建设简述工程与建设期刊
网站建设简述工程与建设期刊
- 技术栈
- 2026年03月21日
-
网站建设糹金手指花总佛山营销手机网站建设
网站建设糹金手指花总佛山营销手机网站建设
- 技术栈
- 2026年03月21日
-
网站建设教程 mysql广告公司名字大全免费
网站建设教程 mysql广告公司名字大全免费
- 技术栈
- 2026年03月21日
-
网站建设教程 湖南岚鸿外贸收款平台有哪些
网站建设教程 湖南岚鸿外贸收款平台有哪些
- 技术栈
- 2026年03月21日
