Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification

Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification

  • Introduction
    • [ Local Consistency Convolution: C o n v A ConvA ConvA ](https://blog.csdn.net/qq_45312141/article/details/106711724)
    • Global Consistency Convolution: C o n v P ConvP ConvP
    • 整合局部和全局一致性

Introduction

这篇文章的主要思想,是基于半监督学习的两个基本假设

  • (1)局部一致性:距离比较近的数据,通常有相同的标签;
  • (2)全局一致性:处在相似的上下文中的数据,通常有相同的标签。如下图所示,该图卷积网络包括两个通路, C o n v A ConvA ConvA嵌入了半监督分类局部一致性的信息,是一个传统的图卷积过程; C o n v P ConvP ConvP 嵌入了半监督分类全局一致性的信息,是作者的一个创新点。在两个通路后,作者设计了一个新的 L o s s Loss Loss 函数,可以将局部一致性和全局一致性完美结合,取得一个好的实验效果。
  • Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第1张图片

Local Consistency Convolution: C o n v A ConvA ConvA

c o n v A convA convA 的计算公式如下:
在这里插入图片描述

  • A ~ = A + I N \tilde{A} = A + I_N A~=A+IN 是无向图 G G G的自环邻接矩阵。
  • I N I_N IN是单位矩阵。
  • D ~ i i = ∑ j A ~ i j \tilde{D}_{ii} = \sum_j \tilde{A}_{ij} D~ii=jA~ij A ~ \tilde{A} A~ 的度矩阵。
  • W ( i ) W^{(i)} W(i)是可训练的权重矩阵,即网络的参数。
  • D ~ − 1 2 A ~ D ~ − 1 2 \tilde{D}^{-\frac{1}{2}}\tilde{A}\tilde{D}^{-\frac{1}{2}} D~21A~D~21是对邻接矩阵 A A A的归一化
  • σ ( ⋅ ) \sigma(\cdot) σ()是激活函数,比如 R e L U ReLU ReLU
  • Z ( i ) ∈ R N × D Z^{(i)} \in \mathbb{R}^{N \times D} Z(i)RN×D是第 i i i层的激活矩阵,即网络的输出。
  • Z ( 0 ) = X Z^{(0)}=X Z(0)=X第一层为输入。

对邻接矩阵进行归一化处理,可以很好的在每一层中进行 1 − h o p   d i f f u s i o n   p r o c e s s 1-hop\ diffusion\ process 1hop diffusion process。但是,只使用局部一致性会使得一部分并不属于一类的点距离很近,以至于被错误的分为一类。

举例
按局部信息进行计算, 8 8 8 30 30 30距离很近,但实际标签一个为红一个为绿,标签不同。因此为解决这个问题,引入全局一致性信息,引入了 C o n v P ConvP ConvP
Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第2张图片

Global Consistency Convolution: C o n v P ConvP ConvP

作者使用随机游走的策略,生成频率矩阵,进而生成 P P M I PPMI PPMI矩阵。 P P M I PPMI PPMI矩阵可以很好的嵌入语义信息,利用数据的全局一致性。

获得频率矩阵 F F F:

  • (1)确定节点的随机游走长度 γ \gamma γ,采样次数 w w w,初始化频率矩阵 F F F值为 0 0 0
  • (2)以节点 x i x_i xi为起点,开始以 0 0 0为步长随机游走,得到所有可能的情况,表示为点对集合 S = { ( x n , x m ) } S=\{{(x_n,x_m)}\} S={(xn,xm)},接着以等式 ( 8 ) (8) 8作为概率采样 w w w次,得到 w w w对点对。
  • (3)对于点对 ( x n , x m ) (x_n,x_m) (xn,xm),在频率矩阵中对应位置 F n , m , F m , n ​ F_{n,m},F_{m,n}​ Fn,m,Fm,n 对应加 1 1 1
  • (4)将游走步长 1 1 1逐渐变化到 γ \gamma γ,循环 ( 2 ) ( 3 ) (2)(3) (2)(3)步骤。
  • (5)对于所有的节点,执行 ( 2 ) ( 3 ) ( 4 ) (2)(3)(4) (2)(3)(4)步骤得到频率矩阵 F F F
    伪代码如下:
    Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第3张图片
    马尔可夫链描述了随机游走所访问的节点的顺序,通常被称为随机游走。每个节点的转移概率可以由等式 ( 8 ) (8) 8计算得到:
    在这里插入图片描述
    构建PPMI矩阵P:
    Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第4张图片
    Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第5张图片
  • C o n v P ConvP ConvP的热度图想对于 C o n v A ConvA ConvA有所不同
  • 通过 t − s t o c h a s t i c   n e i g h b o r   e m b e d d i n g s ( S N E s ) t-stochastic\ neighbor\ embeddings(SNEs) tstochastic neighbor embeddings(SNEs)对结果进行比较, 8 8 8 30 30 30距离有所增大
    PPMI介绍
    Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第6张图片
    Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第7张图片
    Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第8张图片
  • 除了这个以外,我们还可以在加入拉普拉斯平滑
    Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第9张图片
    Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第10张图片

整合局部和全局一致性

Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第11张图片
D u a l G C N DualGCN DualGCN伪代码如下:
Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification_第12张图片

DGCN:Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification
https://github.com/ZhuangCY/DGCN

你可能感兴趣的:(图网络,深度学习)