马可洛夫图扩散(MARKOVGNN) 笔记

1 Title

        MarkovGNN: Graph Neural Networks on Markov Diffusion(Md. Khaledur Rahman、
Abhigya Agrawal、Ariful Azad)【WWW '22: The ACM Web Conference 2022】

2 Conclusion

        Most real-world networks contain well-defined community structures where nodes are densely connected internally within communities. To learn from these networks, this study develops MarkovGNN that captures the formation and evolution of communities directly in different convolutional layers. Unlike most Graph Neural Networks (GNNs) that consider a static graph at every layer, MarkovGNN generates different stochastic matrices using a Markov process and then uses these community-capturing matrices in different layers. MarkovGNN is a general approach that could be used with most existing GNNs.

3 Good Sentences

        1、While a GNN with L layers indirectly exchanges messages among L-hop neighbors, messages in each layer are still restricted to direct neighbors. Message passing via direct neighbors on the same static graph structure may limit the expressive power of GNNs.(The disadvantages and limitations of GNNs)
        2、The goal is not to develop a new GNN method, but to use Markov diffusion to
improve the performance of any existing GNN. When an existing GNN method uses different Markov matrices at different layers, we call this augmented GNN a MarkovGNN.(The contribution of this study has done)
        3、 At the second layer of GCN, node 𝑣1 receives information from 2-hop neighbors (𝑣4 and 𝑣5) indirectly via 1-hop neighbors (𝑣2 and 𝑣3). Such indirect messages dilute information received from high-order neighbors and may create the “over-smoothing" problem resulting from hidden-layer representations being squeezed into fixed-length vectors( the limitation of using the same static graph at every layer)
        4、, GDC still uses the same connectivity matrix (albeit different from the original graph) in every layer and thus misses the opportunity to incrementally learn from the diffusion process. Furthermore, the diffusion process typically results in a dense matrix, making the computation prohibitively expensive.(The limitations of GDC that previous works)


MarkovGNN的核心思想是在GNN的不同层上使用一系列图,这样不同层就不会在相同的静态图结构上操作。

为了方便理解,以上图为例,说明GCN在静态图上的局限性,

        a图展示了在GCN的第二层,节点𝑣1通过1跳邻居(𝑣2和𝑣3)间接接收来自2跳邻居(𝑣4和𝑣5)的信息。这种间接消息会稀释从高阶邻居接收到的信息,并可能产生“过度平滑”问题。(因为隐藏层表示被压缩成固定长度的向量)。

        b图显示了基于扩散模型添加了一个新边{𝑣1,𝑣4}并删除了一个现有边{𝑣3,𝑣5}的修改后的图(捕捉原始图中的群落结构)。这会促进直接消息(来自𝑣4)并抑制间接消息(来自𝑣5)。

背景知识说明:

设𝐺(V,E)表示一个具有𝑛=|V|的顶点和边|E|的图。邻接矩阵用𝑛×𝑛的稀疏矩阵A表示,其中如果{𝑣i,𝑣𝑗}∈E,A[ i, 𝑗 ]= 1,否则A[ i , 𝑗 ]= 0。X∈R^{n \times f}表示特征矩阵,其中第i行存储第i个顶点的𝑓维特征,GNN的第l个卷积层根据邻居的嵌入计算每个节点的嵌入:。其中,X(𝑙)∈R^{n \times f_l}是用于第l层输入的𝑓𝑙维嵌入,X(𝑙+1)∈R^{n \times f_{l+1}}是第𝑙层输出的𝑓𝑙+1维嵌入,W(𝑙)∈R^{f_l \times f_{l+1}}为权重矩阵。在大多数GNN实例中,邻接矩阵被归一化,ReLU被用作激活函数。

Previous work that uses diffusion in GNNs(也就是GDC)

GDC的扩散矩阵\tilde{A}:,其中\beta _j是权重系数,T是一个列随机邻接矩阵,T由AD^{-1}计算,D是节点的度对角矩阵。图扩散可以作为一个去噪滤波器,类似于图像上的高斯滤波器,然而,GDC创建扩散矩阵作为预处理步骤,并在GNN的每一层中使用相同的扩散矩阵\tilde{A},因此失去了从扩散过程中逐步学习的机会。此外,扩散过程通常会导致密集的矩阵,使得计算非常昂贵。

        本文的目标是直接在GNN的不同层中捕获扩散过程(更具体地说,是通过马尔可夫过程),算法在识别聚类模式和分类节点方面比GDC表现得更好。

 THE MARKOV DIFFUSION PROCESS

图的马尔可夫过程通过计算每对顶点之间的转移概率来控制随机行走。该过程递增地提升聚类内行走的概率,递减地降低聚类间行走的概率,并移除具有低概率的路径以发现图中的自然聚类。整个马尔可夫过程由四个操作组成:

(a)从一列(或一行)随机转移矩阵开始并保持它直到收敛
(b)通过扩张操作扩展随机行走
(c)通过膨胀操作加强群内行走并削弱群间行走
(d)通过剪枝操作移除低概率路径。重复这些操作直到收敛

转移矩阵:设D是对角矩阵,,其中A是图的(加权)邻接矩阵。

马尔可夫过程从列随机矩阵开始,m的𝑖th列总和为1。M[𝑖,𝑗]为在随机漫步中从顶点j𝑗到顶点𝑖的边的概率

扩张操作:马尔可夫过程通过对马尔可夫矩阵M求平方来扩展随机游动,因此,𝑖th迭代中的扩展运算计算M_(i-1)是前一次迭代的输出。扩展步骤类似于广义图扩散,通常根据Perron–Frobenius定理收敛到幂等矩阵。

膨胀操作:具有参数𝑟的参数化膨胀操作执行由M^{or}表示的矩阵的Hadamard Power运算,并使矩阵列再次随机,如下所示:非线性膨胀步骤的目标是加强高概率路径(群内连接)和削弱低概率路径(群间连接)

剪枝操作:为了保持马尔可夫矩阵稀疏,删除低于阈值Θ的小条目,该步骤确保随机路径包含在社区内,并且矩阵不会变得密集。

伪代码如下:

.

该算法显示了用于生成马尔可夫扩散矩阵的步骤。该算法从列随机矩阵M1开始,其中每列总和为1,并在每次迭代中维护列随机矩阵。第𝑘次迭代执行扩展、膨胀和修剪操作。当随机矩阵在连续迭代中不变时,算法收敛。存储所有随机矩阵M1,M2,...M𝑘,以便它们可以用于GNN的不同层。虽然存储𝑘个马尔可夫矩阵需要内存开销,但这使得GNN训练速度更快(本文的实验表明,大概三十多次左右就能收敛)

关于参数:膨胀中的𝑟和剪枝中的𝜃是可以调整以获得不同矩阵的超参数。当𝑟设置为1(即没有膨胀)时,马尔可夫过程相当于一般的扩散过程。r控制最终社区的数量和粒度,𝜃控制着马尔可夫矩阵的稀疏性。

THE MARKOVGNN ALGORITHM

        马尔可夫链算法将静态邻接矩阵与GNN不同层的一系列马尔可夫矩阵进行交换。这种方法可以用于最流行的GNN方法,这种方法可以用于最流行的GNN方法,如GCN、GAT等

如图所示的例子中,GNN有三层,马尔可夫过程在四次迭代中收敛因此,GNN的第1、2和3层分别使用M1、M3和M5。M1是表示给定图形的输入随机矩阵,M5是具有四个已发现社区的收敛矩阵,M2、M3和M4是捕捉社区形成的中间矩阵。随着社区被发现,边在不同的迭代中被添加和删除,其中𝛼是残余连接的贡献因子。  

Residual connections(残差连接):马尔科夫网比典型的GNN需要更多的层来利用不同层的各种马尔科夫矩阵,为了训练这样的深度GNN模型,本文使用残差连接,对残差连接,马尔可夫链的𝑙-th层中的嵌入计算如下:其中,𝜎是激活函数,𝜙是选择器,𝛼是控制残差连接贡献的超参数。𝑙-th图层中的运算符𝜙仅从先前的𝑙1图层中选择一个表示矩阵。

马尔科夫GCN算法的前向传播如图所示:

如果一个GNN有𝐿层,本文从来自算法1返回的随机矩阵集合选择L矩阵,然后,在GNN的𝑙th层中,对A^{l}而不是原始邻接矩阵执行卷积(算法2的第7行),这里,假设马尔可夫过程所需的迭代次数k大于𝐿。

Training MarkovGNN:在算法2中,𝜎表示第7行中的激活函数,对于该函数,ReLU或LeakyReLU是常见的选择。为每个卷积层添加一个可调的dropout参数。此外,在MarkovGNN的最后一层添加了一个softmax层。与其他gnn类似,目标是通过如下优化损失函数来学习权重矩阵:

其中,Y_L表示具有ground-truth标签的所有顶点,X^{(L)}_i表示X^{L}的具有ground-truth标签y_i的第𝑖行。在MarkovGNN中,使用标准的负对数似然损失函数和Adam优化器来训练模型。

一些变体:

MarkovGNN的一些性质

        1、计算复杂性
        2、稀释化:随着马尔可夫过程中社区的形成,相应的矩阵变得越来越稀疏。
        3、层数的上限:马尔科夫网将层数的上限设置为算法1返回的马尔科夫矩阵(𝑘)的数量。
        4、邻居爆炸问题的潜在解决方案:随着社区的形成,马尔可夫过程通过膨胀和修剪操作来移除簇内边缘。这些步骤使图在每一层都保持稀疏,并且可以防止在GNNs中观察到的邻居爆炸问题。        
        5、从取样的作用:从可用矩阵池中选择矩阵使得不必对graph sage中使用的邻居进行采样或对graph saint中使用的小批次进行采样。

        缺陷:当一个图没有清晰的聚类模式时,马尔科夫网可能不会比其他GNN方法表现得更好

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值