Math of GCN

参考视频

目录

  • Math of GCN
    • 1 Basic of GCN
    • 2 Spectral Graph Theory
      • 2.1 Properties of matrixes related to A
      • 2.2 LLL 和 LsymL_{sym}Lsym​​是半正定矩阵
      • 2.3 LsymL_{sym}Lsym​的特征值范围为[0, 2]
    • 3 Fourier for Graph
      • What Lx really does?

1 Basic of GCN

  • GNN: H(l+1)=f(A,H(l))H^{(l+1)}=f(A, H^{(l)})H(l+1)=f(A,H(l))
  • GCN: H(l+1)=σ(D^−12A^D^12H(l)θ)H^{(l+1)}=\sigma(\hat{D}^{-\frac{1}{2}}\hat{A}\hat{D}^{\frac{1}{2}}H^{(l)}\theta)H(l+1)=σ(D^−21​A^D^21​H(l)θ)
    • A:AdjacencyMatrixA:Adjacency MatrixA:AdjacencyMatrix
    • D:DegreeMatrixD:Degree MatrixD:DegreeMatrix
    • A^=A+I\hat{A}=A+IA^=A+I
    • D^=D+I\hat{D}=D+ID^=D+I

2 Spectral Graph Theory

2.1 Properties of matrixes related to A

  • L=D−A(LaplaceMatrix)L = D - A (Laplace Matrix)L=D−A(LaplaceMatrix)​

    • 令G(i,j)=[⋱1−1−11⋱]G_{(i,j)} = \left[ \begin{matrix} \ddots & & & \\ & 1 & -1 \\ & -1 & 1 \\ & & & \ddots \\ \end{matrix} \right]G(i,j)​=⎣⎢⎢⎡​⋱​1−1​−11​⋱​⎦⎥⎥⎤​​​​​,​​​​​​​其中对于点对(i,j)(i,j)(i,j)​​​,若二者之间有边,则Gij=1,Gji=−1G_{ij}=1,G_{ji}=-1Gij​=1,Gji​=−1​。因此,有L=D−A=∑i,j∈EG(i,j)L = D - A = \sum\limits_{i,j\in E}{G_{(i,j)}}L=D−A=i,j∈E∑​G(i,j)​​.

    • xTG(i,j)x=xT[⋮xi−xj⋮xj−xi⋮]=xi(xi−xj)+xj(xj−xi)=(xi−xj)2\begin{aligned} x^TG_{(i,j)}x&=x^T \left[ \begin{matrix} \vdots \\ x_i - x_j \\ \vdots \\ x_j - x_i \\ \vdots \\ \end{matrix} \right] \\ &=x_i(x_i - x_j)+x_j(x_j-x_i) \\ &=(x_i-x_j)^2 \end{aligned} xTG(i,j)​x​=xT⎣⎢⎢⎢⎢⎢⎢⎢⎡​⋮xi​−xj​⋮xj​−xi​⋮​⎦⎥⎥⎥⎥⎥⎥⎥⎤​=xi​(xi​−xj​)+xj​(xj​−xi​)=(xi​−xj​)2​

  • Lsym=D−12LD−12(SymmetricnormalizedLaplacian)L_{sym} = D^{-\frac{1}{2}}LD^{-\frac{1}{2}}(Symmetric\quad normalized\quad Laplacian)Lsym​=D−21​LD−21​(SymmetricnormalizedLaplacian)​

2.2 LLL 和 LsymL_{sym}Lsym​​是半正定矩阵

  • Rayleigh quotient

    • R(A,x)=xTAxxTx为A的特征值。R(A,x)=\frac{x^TAx}{x^Tx}为A的特征值。 R(A,x)=xTxxTAx​为A的特征值。

    • xTLx=xT(∑G(i,j))x=∑xTG(i,j)x=∑(xi−xj)2⩾0\begin{aligned} x^TLx&=x^T(\sum G_{(i,j)})x \\ &=\sum x^TG_{(i,j)}x \\ &=\sum (x_i-x_j)^2 \geqslant 0 \end{aligned} xTLx​=xT(∑G(i,j)​)x=∑xTG(i,j)​x=∑(xi​−xj​)2⩾0​

    • 所以R(A,x)⩾0R(A,x) \geqslant 0R(A,x)⩾0,即LLL的特征值均为非负数,LsymL_{sym}Lsym​同理。

2.3 LsymL_{sym}Lsym​的特征值范围为[0, 2]

  • 令G(i,j)pos=[⋱1111⋱]G_{(i,j)}^{pos} = \left[ \begin{matrix} \ddots & & & \\ & 1 & 1 \\ & 1 & 1 \\ & & & \ddots \\ \end{matrix} \right]G(i,j)pos​=⎣⎢⎢⎡​⋱​11​11​⋱​⎦⎥⎥⎤​​​,-1均改为+1。
  • 令Lpos=D+AL^{pos} = D + ALpos=D+A。则与2.1相似可得,Lpos=D+A=∑G(i,j)posL^{pos}=D+A=\sum{G_{(i,j)}^{pos}}Lpos=D+A=∑G(i,j)pos​。

xTLposx=∑(xi+xj)2⩾0xTLpossym=∑(xidi+xjdj)⩾0Lsympos=D−12LposD−12=D−12(D+A)D−12=I+D−12AD−12⇒x(I+D−12AD−12x)⩾0⇒xTx+xTD−12AD−12x⩾0⇒xTx⩾−xTD−12AD−12x⇒2xTx⩾xTx−xTD−12AD−12x⇒2xTx⩾xT(I−D−12AD−12)x⇒2xTx⩾xTD−12(D−A)D−12x⇒2xTx⩾xTLsymx⇒2⩾xTLsymxxTx\begin{aligned} x^TL^{pos}x &= \sum(x_i+x_j)^2 \geqslant 0 \\ x^TL^pos_{sym}&=\sum (\frac{x_i}{d_i} + \frac{x_j}{d_j}) \geqslant 0 \\ L^{pos}_{sym}=D^{-\frac{1}{2}}L^{pos}D^{-\frac{1}{2}}&=D^{-\frac{1}{2}}(D+A)D^{-\frac{1}{2}}=I+D^{-\frac{1}{2}}AD^{-\frac{1}{2}} \\ &\Rightarrow x(I+D^{-\frac{1}{2}}AD^{-\frac{1}{2}}x) \geqslant 0 \\ &\Rightarrow x^Tx+x^TD^{-\frac{1}{2}}AD^{-\frac{1}{2}}x \geqslant 0 \\ &\Rightarrow x^Tx \geqslant -x^TD^{-\frac{1}{2}}AD^{-\frac{1}{2}}x \\ &\Rightarrow 2x^Tx \geqslant x^Tx-x^TD^{-\frac{1}{2}}AD^{-\frac{1}{2}}x \\ &\Rightarrow 2x^Tx \geqslant x^T(I-D^{-\frac{1}{2}}AD^{-\frac{1}{2}})x \\ &\Rightarrow 2x^Tx \geqslant x^TD^{-\frac{1}{2}}(D-A)D^{-\frac{1}{2}}x \\ &\Rightarrow 2x^Tx \geqslant x^T L_{sym}x \\ &\Rightarrow 2 \geqslant \frac{x^TL_{sym}x}{x^Tx} \\ \end{aligned} xTLposxxTLpossym​Lsympos​=D−21​LposD−21​​=∑(xi​+xj​)2⩾0=∑(di​xi​​+dj​xj​​)⩾0=D−21​(D+A)D−21​=I+D−21​AD−21​⇒x(I+D−21​AD−21​x)⩾0⇒xTx+xTD−21​AD−21​x⩾0⇒xTx⩾−xTD−21​AD−21​x⇒2xTx⩾xTx−xTD−21​AD−21​x⇒2xTx⩾xT(I−D−21​AD−21​)x⇒2xTx⩾xTD−21​(D−A)D−21​x⇒2xTx⩾xTLsym​x⇒2⩾xTxxTLsym​x​​

3 Fourier for Graph

What Lx really does?

Lx=[∑(1,j)∈E(xi−xj)∑(2,j)∈E(xi−xj)⋮∑(n,j)∈E(xi−xj)]=UΛUTxLx= \left[\begin{matrix} \sum\limits_{(1,j) \in E}{(x_i - x_j)} \\ \sum\limits_{(2,j) \in E}{(x_i - x_j)} \\ \vdots \\ \sum\limits_{(n,j) \in E}{(x_i - x_j)} \\ \end{matrix} \right] = U\Lambda U^T x Lx=⎣⎢⎢⎢⎢⎢⎢⎢⎡​(1,j)∈E∑​(xi​−xj​)(2,j)∈E∑​(xi​−xj​)⋮(n,j)∈E∑​(xi​−xj​)​⎦⎥⎥⎥⎥⎥⎥⎥⎤​=UΛUTx

  • UTxU^TxUTx: 基底, ΛUTx\Lambda U^TxΛUTx: 放缩, UUU: 逆变换回原空间
  • 在原来的空域中难以卷积(尺寸不同),因此转移到时域,完成卷积后再变换回去

设F(A)=UΛUTF(A)=U\Lambda U^TF(A)=UΛUT, 则图上的卷积操作gθ∗x=Ugθ(Λ)UTxg_{\theta}*x=Ug_{\theta}(\Lambda)U^Txgθ​∗x=Ugθ​(Λ)UTx。

限制gθ(Λ)g_{\theta}(\Lambda)gθ​(Λ)是关于Λ\LambdaΛ的多项式函数,则有Ugθ(Λ)UTx=gθ(UΛUT)=gθ(F(A))Ug_{\theta}(\Lambda)U^Tx=g_{\theta}(U\Lambda U^T)=g_{\theta}(F(A))Ugθ​(Λ)UTx=gθ​(UΛUT)=gθ​(F(A)).

而(UΛUT)k=UΛkUT(U\Lambda U^T)^k=U\Lambda^k U^T(UΛUT)k=UΛkUT, 会产生梯度爆炸或梯度消失,所以考虑使用切比雪夫多项式:Tn(x)=2Tn−1(x)−Tn−2(x)T_n(x)=2T_{n-1}(x)-T_{n-2}(x)Tn​(x)=2Tn−1​(x)−Tn−2​(x), 其中T0(x)=1,T1(x)=xT_0(x)=1,T_1(x)=xT0​(x)=1,T1​(x)=x. 由于切比雪夫多项式有性质:Tn(cosθ)=cosnθT_n(cos\theta)=cosn\thetaTn​(cosθ)=cosnθ, 所以可以保证始终有波动。

但切比雪夫多项式要求x∈[−1,1]x\in [-1, 1]x∈[−1,1], 而LsymL_{sym}Lsym​的特殊值范围为[0, 2],所以令F(A)=Lsym−IF(A)=L_{sym}-IF(A)=Lsym​−I。

所以,
gθ∗x=Ugθ(Λ)UTx=U(∑k=0KθkTk(Λ))UTx=∑k=0KθkUTk(Λ)UTx=∑k=0KθkTk(UΛUT)x=∑k=0KθkTk(Lsym−I)x≈θ0T0(Lsym−I)x+θ1T1(Lsym−I)x=θ0x+θ1(Lsym−I)x.(限制K到1,降低计算量)∵Lsym=D−12LD−12=D−12(D−A)D−12=I−D−12AD−12,∴gθ∗x≈θ0x−θ1D−12AD−12x\begin{aligned} g_{\theta}*x&=Ug_{\theta}(\Lambda)U^Tx=U(\sum\limits^K_{k=0}\theta_k T_k(\Lambda))U^Tx=\sum\limits^K_{k=0}\theta_k UT_k(\Lambda)U^Tx=\sum\limits^K_{k=0}\theta_k T_k(U\Lambda U^T)x=\sum\limits^K_{k=0}\theta_k T_k(L_{sym}-I)x \\ &\approx \theta_0T_0(L_{sym}-I)x + \theta_1T_1(L_{sym}-I)x=\theta_0x+\theta_1(L_{sym}-I)x.(限制K到1,降低计算量) \\ &\because L_{sym}=D^{-\frac{1}{2}}LD^{-\frac{1}{2}}=D^{-\frac{1}{2}}(D-A)D^{-\frac{1}{2}}=I-D^{-\frac{1}{2}}AD^{-\frac{1}{2}}, \\ & \therefore g_{\theta}*x \approx \theta_0 x-\theta_1D^{-\frac{1}{2}}AD^{-\frac{1}{2}}x \end{aligned} gθ​∗x​=Ugθ​(Λ)UTx=U(k=0∑K​θk​Tk​(Λ))UTx=k=0∑K​θk​UTk​(Λ)UTx=k=0∑K​θk​Tk​(UΛUT)x=k=0∑K​θk​Tk​(Lsym​−I)x≈θ0​T0​(Lsym​−I)x+θ1​T1​(Lsym​−I)x=θ0​x+θ1​(Lsym​−I)x.(限制K到1,降低计算量)∵Lsym​=D−21​LD−21​=D−21​(D−A)D−21​=I−D−21​AD−21​,∴gθ​∗x≈θ0​x−θ1​D−21​AD−21​x​

若令θ0\theta_0θ0​和θ1\theta_1θ1​共享参数,即θ0=−θ1\theta_0 = -\theta_1θ0​=−θ1​, 则gθ∗x≈(I+D−12AD−12)xg_{\theta}*x \approx (I+D^{-\frac{1}{2}}AD^{-\frac{1}{2}})xgθ​∗x≈(I+D−21​AD−21​)x,令A^=A+I,D^=D+I\hat{A}=A+I,\hat{D}=D+IA^=A+I,D^=D+I,可得gθ∗x≈D^−12A^D^−12xg_{\theta}*x \approx \hat{D}^{-\frac{1}{2}}\hat{A}\hat{D}^{-\frac{1}{2}}xgθ​∗x≈D^−21​A^D^−21​x,即GCN公式。相关改进可以将k的近似放大。

图卷积网络GCN数学原理相关推荐

  1. 图卷积网络 GCN Graph Convolutional Network(谱域GCN)的理解和详细推导

    文章目录 1. 为什么会出现图卷积神经网络? 2. 图卷积网络的两种理解方式 2.1 vertex domain(spatial domain):顶点域(空间域) 2.2 spectral domai ...

  2. 图卷积网络GCN(Graph Convolution Network)(一)研究背景和空域卷积

    文章首发于个人站点: 图卷积网络GCN(Graph Convolution Network)(一)研究背景和空域图卷积 | 隐舍 公众号:[DreamHub] 由于文章篇幅较长,因此将其分解为三部分: ...

  3. 一文读懂简化的图卷积网络GCN(SGC)| ICML 2019

    作者 | yyl424525 来源 | CSDN博客 文章目录 1 相关介绍 1.1 Simple Graph Convolution (SGC)提出的背景 1.2 SGC效果 2 Simple Gr ...

  4. 图神经网络之图卷积网络——GCN

    图卷积网络--GCN 一.前置基础知识回顾 图的基本概念 构造图神经网络的目的 训练方式 二.回顾卷积神经网络在图像及文本上的发展 图像上的卷积网络 文本上的卷积网络 图卷积网络的必要性 三.图卷积网 ...

  5. 图卷积网络GCN简介

    翻译自GRAPH CONVOLUTIONAL NETWORKS, THOMAS KIPF, 30 SEPTEMBER 2016,原文作者是semi-Supervised Classification ...

  6. 图卷积网络(GCN)简单理解

    1. 预备知识 1.1 图网络的种类.区别和联系 Graph Embedding Graph Embedding指图嵌入,属于表示学习的范畴,也可以称为网络嵌入.图表示学习.网络表示学习等等. 具体可 ...

  7. 图卷积网络GCN的简单理解

    GCN ( Graph Convolutional Networks ),图卷积网络 Hl+1=σ(D~−12A~D~−12Hlwl)(1)H^{l+1}=\sigma\left(\widetilde ...

  8. 解读:CVPR1903_图卷积网络GCN无监督人脸聚类

    Linkage Based Face Clustering via Graph Convolution Network https://arxiv.org/pdf/1903.11306.pdf 1简述 ...

  9. 图卷积神经网络的数学原理——谱图理论和傅里叶变换初探

    Math of GCN 一.warmup 1.Graph vs Image ①Graph是相比于Image更加广义的一种拓扑结构. ②Image是Grape在欧式空间的一种特例. 2.符号含义 ①A: ...

最新文章

  1. 社交媒体分析-恶意内容自动检测相关论文
  2. SqlService 数据操作
  3. Linux下常用日志分析工具
  4. Vue入门到TodoList练手
  5. jmeter模拟http请求/发送gzip数据
  6. 这个大部分CNS都会用到的技术分析流程大放送......
  7. SQL的老题目:查询学生平均成绩及其名次
  8. 2018-2019-2 20175320实验三《敏捷开发与XP实践》实验报告
  9. 量子计算机 程序,量子计算机程序 会早于量子计算机出现
  10. 持续集成CI, 持续部署CD, 持续交付CD要点
  11. wireshark 安装失败报错,缺少kb2999226补丁的解决方案
  12. mybatis获取map中的key和value
  13. 深度学习实例——Flappy Bird
  14. ACT托管的CRM软件开发您的业务
  15. 京东商品列表API接口-(item_search-按关键字搜索京东商品API接口),京东API接口
  16. STM32堆栈溢出的主要的问题和现象
  17. 阿里刘振飞:我们用了10年,从去IOE到OceanBase世界第一!
  18. 《MySQL高级篇》数据库建模工具---PowderDesigner的使用教程
  19. 台式计算机连接投影仪无信号,投影仪连接电脑后显示无信号该怎么排查原因?...
  20. OpenGL uniform的用法

热门文章

  1. Reality Capture 入门教程
  2. Actual Multiple Monitors v8.14.6.1 多显示器设置管理工具
  3. 手机短信验证码的定时器
  4. JS 判断一个数组是否包含另一个数组
  5. Data Structures and Algorithms7-25——Harry Potter's Exam
  6. win10 开启Hyper-V遇到的问题及解决方法
  7. 星环科技回复科创板首轮问询,公司发明专利占比高达98%
  8. 2015年阿里巴巴数据分析实习生招聘笔试题
  9. 联发科mtk和骁龙730哪个好_天玑720和骁龙730G哪个好_天玑720和骁龙730G性能对比
  10. 1097: 树状数组1(快速求和计算)