首页 >> 知识 >> GCN:基于切比雪夫多项式(chebyshev ploynomials)为核的图卷积推导与pytorch实现

GCN:基于切比雪夫多项式(chebyshev ploynomials)为核的图卷积推导与pytorch实现

图的表示方式:

1)邻接矩阵 A A A,表示节点与节点之间是否存在连接,若存在则为1,不存在为0,对角线均为0

2)度矩阵 D D D ,只有对角线有值,表示该节点所连接边的个数

​3) Laplacian 拉普拉斯矩阵: L = D − A L=D-A L=D−A 1)对称 2)非负特征值 3)正交

​ 归一化Laplacian: L s y m = D − 1 2 L D − 1 2 = I − D − 1 2 A D − 1 2 L^{sym}=D^{-frac{1}{2}}LD^{-frac{1}{2}}=I-D^{-frac{1}{2}}AD^{-frac{1}{2}} Lsym=D−21​LD−21​=I−D−21​AD−21​

卷积公式:其中 F ( X ) F(X) F(X)表示傅里叶变换

f ∗ g = F − 1 ( F ( f ) ∗ F ( g ) ) f*g=F^{-1}(F(f)*F(g)) f∗g=F−1(F(f)∗F(g))

根据拉普拉斯矩阵正交特性,存在 U , U T U,U^T U,UT使得 L = U Λ U T L=ULambda U^T L=UΛUT 其中 Λ Lambda Λ表示特征向量

则Graph Fourier可对应表示如下:

G F ( x ) = U T x GF(x)=U^Tx GF(x)=UTx

根据卷积公式,对应图卷积公式如下:

g ∗ x = U ( U T g U T x ) g*x=U(U^TgU^Tx) g∗x=U(UTgUTx)

每一次卷积操作作用域都希望在中心节点附近的区域,则草莓视频在线观看APP可以将 g g g看作关于拉普拉斯矩阵 L L L的函数 g ( L ) g(L) g(L),那么,每卷积一次则相当于传递一次相邻节点信息

而由 L L L特征值特性: U T L = Λ U T U^TL=Lambda U^T UTL=ΛUT 可知, U T g ( L ) U^Tg(L) UTg(L) 可看作是关于拉普拉斯矩阵 L L L的特征函数 g θ ( Λ ) g_ heta(Lambda) gθ​(Λ)

则图卷积表达式可写作:

g ∗ x = U ( U T g U T x ) = U g θ U T x g*x=U(U^TgU^Tx)=Ug_ heta U^Tx g∗x=U(UTgUTx)=Ugθ​UTx

运算简化

由于计算 g θ g_ heta gθ​需要计算拉普拉斯矩阵特征值,计算复杂,因而提出利用切比雪夫Chebyshev polynomials多项式来进行近似计算,这里并不影响特征值的计算属性,只是通过切比雪夫多项式作为核能够将特征值矩阵计算化简为L,从而跳过特征值计算的步骤,表示如下。

g θ = ∑ k = 0 K θ k T k ( Λ ~ ) g_ heta=sum_{k=0}^{K} heta_k T_k(widetilde{Lambda}) gθ​=∑k=0K​θk​Tk​(Λ )

其中 Λ ~ = 2 ∗ Λ Λ m a x − 1 widetilde{Lambda}=2*frac{Lambda}{Lambda_{max}}-1 Λ =2∗Λmax​Λ​−1,只是因为Chebyshev polynomials要求 x x x处于 [ − 1 , 1 ] [-1,1] [−1,1]

T k ( x ) = 2 x T k − 1 ( x ) − T k − 2 ( x ) T_k(x)=2xT_{k-1}(x)-T_{k-2}(x) Tk​(x)=2xTk−1​(x)−Tk−2​(x), T 0 = 0 T_0=0 T0​=0, T 1 = 1 T_1=1 T1​=1

那么将上式代入卷积表达式可以得到:

g ∗ x = U ∑ k = 0 K θ k T k ( Λ ~ ) U T x = ∑ k = 0 K θ K T k ( L ~ ) x g*x=Usum_{k=0}^{K} heta_k T_k(widetilde{Lambda})U^Tx\=sum_{k=0}^K heta_K T_k(widetilde{L})x g∗x=Uk=0∑K​θk​Tk​(Λ )UTx=k=0∑K​θK​Tk​(L )x

网站地图