图卷积神经网络

本文需要读者对卷积神经网络有基本的了解,如果有上过《信号与系统》这么课,对卷积、傅里叶变换有所了解就更好了。

卷积神经网络适用于具有一个欧几里得域的数据,如图像具有空域,声音具有时域,分别能用二维和一维的序列来表达,与同一个域中的卷积核继续卷积。但图没有一个域,要怎么进行卷积呢?

1. 图的扩展

一个无向图 G(V,E) 由一个顶点的集合 V 和一个边的集合 E 构成,其中 V 包含 n 个顶点,E 包含 m 条边,每个顶点有一个值 f[i]=f_i 组成一个向量 \vec f,每条边有一个权值 w(i,j)=w_{i,j}
V=\{v_i\ |\ i=1,\cdots,n\} E=\{e_{i,j}\ |\ i<j,\ i,j=1,\cdots,n\} \vec f=[f_1,\cdots,f_n]^T

1.1. 图的拉普拉斯矩阵

对于连续函数而言,拉普拉斯算子之于一个 n 元函数 f(x_1,\cdots,x_n) 为其各偏导之和:
\nabla^2 f=\sum_{i=1}^n\frac{\partial^2 f}{\partial x_i^2}

类似地,对于图的一个顶点 v_i 而言,其拉普拉斯算子为:
\nabla^2 f[i]=\sum_{j,\ j\ne i}w_{i,j}(f_i-f_j)

这样定义的意义也很明显,之所以用边的权值相乘,因为权值可以理解为两点之间的关联程度的高低,那么其倒数即表示两点之间的距离(关联越低则距离越大),在这里扮演着偏导中分母的角色。

我们观察一个包含三个顶点 a,b,c 的图,且每两个顶点之间都有一条边相连,有:
\nabla^2 f[a]=w_{a,b}(f_a-f_b)+w_{a,c}(f_a-f_c) \nabla^2 f[b]=w_{a,b}(f_b-f_a)+w_{b,c}(f_b-f_c) \nabla^2 f[c]=w_{a,c}(f_c-f_a)+w_{b,c}(f_c-f_b)

将三个顶点处的拉普拉斯算子取值组成一个矩阵,有:
\begin{aligned} \left [ \matrix{ \nabla^2 f[a] \cr \nabla^2 f[b] \cr \nabla^2 f[c] } \right ] & = \left [ \matrix{ w_{a,b}(f_a-f_b)+w_{a,c}(f_a-f_c) \cr w_{a,b}(f_b-f_a)+w_{b,c}(f_b-f_c) \cr w_{a,c}(f_c-f_a)+w_{b,c}(f_c-f_b) } \right ] \cr & = \left [ \matrix{ (w_{a,b}+w_{a,c})f_a-w_{a,b}f_b-w_{a,c}f_c \cr -w_{a,b}f_a+(w_{a,b}+w_{b,c})f_b-w_{b,c}f_c \cr -w_{a,c}f_a-w_{b,c}f_b+(w_{a,c}+w_{b,c})f_c } \right ] \cr & = \left [ \matrix{ w_{a,b}+w_{a,c} & -w_{a,b} & -w_{a,c} \cr -w_{a,b} & w_{a,b}+w_{b,c} & -w_{b,c} \cr -w_{a,c} & -w_{b,c} & w_{a,c}+w_{b,c} } \right ] \times \left [ \matrix{ f_a \cr f_b \cr f_c } \right ] \end{aligned}

最后一行左边的矩阵就是图的拉普拉斯矩阵,即:
L=D-W

显然拉普拉斯矩阵 L 为一个 n 阶方阵,n 图中顶点的个数。其中 DL 的主对角线部分提取出的对角矩阵,对角线上的每个值为图中每个顶点相连的边的权值之和,W 为图的邻接矩阵,即对角线之外的部分的负值。

L 可以求出 n 个特征值 λ_k 和特征向量 \vec x_k,使得:
L\vec x_k=\lambda_k \vec x_k,\quad k=1,\cdots,n

对线性代数已经遗忘的同学可以穿越回到大一重新学一下。

1.2. 图的傅里叶变换

离散时间序列f[n]傅里叶变换将序列的时域表达转换为频域
\mathcal{F}\{f[i]\}=F(e^{j\omega})=\sum_{i=-\infty}^{+\infty}f[i]e^{-j\omega t}

类似地,对于图而言,其傅里叶变换为:
\mathcal{F}\{f[i]\}=F(\lambda_k)=\sum_{i=1}^n f[i]\vec x_k[i],\quad k=1,\cdots,n

此变换将各顶点值的图谱转换为频谱,其中,λ_k\vec x_k 分别为图的拉普拉斯矩阵的第 k 个特征值和特征向量,显然频谱中的每个值其实就是各顶点值组成的向量与各特征向量的内积:
F(\lambda_k)=\vec f\cdot\vec x_k

将每个特征值对应的傅里叶变换取值组成一个列向量 F,相同顺序地将每个特征向量作为一列组成一个矩阵 U,则可写为矩阵形式:
F=U^T\vec f

其中,U 必然是一个正交矩阵,因此有 U^T=U^{-1},可得傅里叶变换的逆变换的矩阵形式:
\vec f=UF

1.3. 图的卷积

离散时间序列的卷积为:
x[i]\otimes h[i]=\sum_{k=-\infty}^{+\infty}x[k]x[i-k]

对于图而言,难以像时间序列那样直接定义顶点值的卷积,只能迂回地通过傅里叶变换的性质来定义。离散时间傅里叶变换有一个经典的性质——时域的卷积等价于频域的相乘:
\mathcal{F}\{f[i]\otimes h[i]\}=\mathcal{F}\{f[i]\}\mathcal{F}\{h[i]\}=F(e^{j\omega})H(e^{j\omega})

因此可以结合傅里叶变换来定义图 G_f 与图 G_h 的各顶点值的卷积:
f[i]\otimes h[i]=\mathcal{F^{-1}}\{\mathcal{F}\{f[i]\}\mathcal{F}\{h[i]\}\}

写成矩阵形式为:
\vec f\otimes\vec h=U(U^T fH)=UH_dU^Tf

其中,\vec f\otimes\vec h 为卷积的值组成的列向量,U 为图 G_f 的拉普拉斯矩阵的每个特征向量作为一列组成的矩阵,H 为图 G_h 顶点值的傅里叶变换组成的列向量,H_dH 的各分量组成的对角矩阵。H_d 无需事先计算而是作为可学习参数,这样,第一代图卷积神经网络呼之欲出!

2. 网络的进化

前文已给出第一代图卷积神经网络的公式,但需要对拉普拉斯矩阵求出特征向量,此过程很复杂。

Licensed under CC BY-SA 4.0

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容