3.4.1 卷积的两条支柱与图上的失配
3.3 节把基线立在了固定指纹上;端到端图学习从这里开始。先把老问题想清楚:图像卷积究竟依赖什么。一幅图像上,3×3 卷积核做的事一句话可以说完——输出像素的值,等于以其为中心的 3×3 窗口内九个输入值的加权和。这件事成立靠两条本质。局部性(locality):每个输出只看一个固定大小的邻域窗口;权重共享(weight sharing):同一组九个权重滑过整幅图像,处处复用。两条合起来,参数量与图像大小脱钩,泛化能力也由此而来。
支柱之下还有地基:平移结构。像素排成规则网格,任何位置的 3×3 窗口在拓扑上完全相同——“左上、正上、右上……”这九个相对位置在每个像素处都有定义。卷积因此可以按平移等变性(translation equivariance)刻画:图像平移一格,输出随之平移一格。核的九个权重按相对位置索引,靠的正是这份处处一致的邻域。
分子图上没有这份地基。图 G=(V, E) 的顶点是原子、边是化学键,全部连接信息装在邻接矩阵(adjacency matrix) A 里:Aij = 1 当且仅当原子 i 与 j 成键(键级通常先二值化,作为边属性另行处理)。失配有两条。第一条,邻域大小不齐:苯环上的碳有两个重原子邻居,支链分支点的碳有三个;计入氢,度数在一到四之间分布。“固定九格的核”没有落脚处。第二条更根本,邻域没有次序:分子的原子编号来自 SMILES 或遍历约定,换个编号,同一个分子的邻接矩阵就换一副模样。按“相对位置”索引权重的卷积核,在图上找不到可索引的对象。对换两个邻居就改变输出的模型,谈不上分子表示。
两条支柱并未失效,它们换了个立足点重生。参数共享的对象从“平移”改为“邻域结构”:同一个函数作用在每个节点上,吃进它自己与邻居的特征;聚合规则必须对邻居的排列次序不敏感,求和、平均、取最大这类对称函数因此成为图上的基本构件。局部性改写成“跳数”(hop):一次聚合只触及一跳邻域,k 层嵌套触及 k 跳。剩下的问题是数学的——在任意图上,什么算子配得上“卷积”这个名字。答案先从谱里来。
3.4.2 图的谱语言:拉普拉斯、特征分解与图频率
把分子看作带信号的图:|V| = n,每个原子带一个特征向量,拼成 n×d 的矩阵 X;任取一列 x ∈ ℝn,就是一个图信号(graph signal)——把一个数值量挂到每个原子上,例如某维原子特征、局部电荷的近似。原子的键数(度)di = Σj Aij 排成对角阵,即度矩阵(degree matrix) D。谱语言的第一块砖是拉普拉斯:
图拉普拉斯与归一化形式。对无向图 G,L = D − A;作用在信号上,(Lx)i = Σj∈N(i)(xi − xj)。其二次型 xᵀLx = Σ(i,j)∈E(xi − xj)² 累加逐边信号差。归一化拉普拉斯定义为 Lsym = D−1/2LD−1/2,谱落于 [0, 2],与图的规模和度数脱钩。
先按差分算子来读。(Lx)i 度量信号在原子 i 处与其邻域的分歧:分歧越大,值越大。把原子排成一条链,L 在链内点上的作用正是 2xi − xi−1 − xi+1,数值分析里的二阶差分——一维拉普拉斯。图像处理中的锐化核(中心 4、四邻 −1)恰是网格图的 D − A。拉普拉斯清点局部变化量,这层含义在图上原样保留。
再按能量来读。二次型给出:
半正定让特征分解有了干净的结构:
图傅里叶变换(graph Fourier transform)就是投影 x̂ = UTx:把信号拆到特征向量这组基上,U 的每一列是一个“纯音”。特征值扮演频率:小特征值方向上信号跨图缓变(低频、全局),大特征值方向上相邻节点剧烈翻转(高频、局部)。路径图的特征向量恰是采样余弦——经典傅里叶基在图上的直系亲属;六元环(苯环重原子图)的特征向量则是采样正弦。频率高低不是比喻,式 (3.4-3) 的注已把账算清:同样一份能量 xᵀLx,摊到小特征值上需要更大的振幅,摊到大特征值上只需小幅振荡。
特征值与“频率”的直觉。低频特征向量跨越整张图缓慢变化,像信号的全局趋势;高频特征向量在相邻节点间正负交替,像局部细节。分子语境下的对照:整体电性分布的缓变趋势是低频信息;羰基、卤素取代处的局部极性翻转是高频信息。图 3.4-1 在六节点路径上把两种极端画了出来。
可视化的直觉值得展开。把特征向量的分量当作节点高度画在图上,低阶特征向量呈现为跨越整图的“驻波”:在苯环上,最低非零模式是半波——环的一半取正、一半取负;更高阶模式沿环出现更多正负交替。这与弦振动、鼓面振动的模式序列同构——拉普拉斯在连续物理里本就支配波动方程,图的拉普拉斯继承了同一套谱结构,只是“振动”发生在离散的原子骨架上。分子的全局缓变性质(整体尺寸、拓扑)倾向由低频承载,局部反应性(断键位点、亲电位置)倾向由高频承载——这一分辨视角在 3.6 节的注意力与读出设计里还会回来。
最后一块砖是归一化。组合拉普拉斯的特征值上限随最大度数增长(可达 2dmax 量级):富氢分子的谱域宽,贫氢的窄,滤波参数没有共同标尺。归一化拉普拉斯(normalized Laplacian)把谱压进固定区间:
3.4.3 谱卷积:定义与三重痛点
经典信号处理里,卷积定理说:时域卷积等于频域逐点乘。图上没有平移,卷积无从直接定义;但频域已经有了——U 就是图上的傅里叶基。Bruna 等(2014)顺此给出谱图卷积(spectral graph convolution):把信号变换到谱域,对每个频率分量乘一个可学习的增益,再变换回来:
这一步是开创性的:卷积网络第一次推广到一般图。但三条痛点随即显形,每一条都直指分子建模的日常。
痛点一,基随图变。U 是 A 的函数:换一张图,换一组特征向量。θ 按特征向量的“座次”索引,而座次在图与图之间没有任何对应。分子的世界里每张图都不同——十七个原子的分子学出的 θ 有十七个分量,换一张图既对不上号也无从复用;同一批训练数据里图的大小参差,参数连统一的形状都没有。特征向量本身还不稳定:近简并的特征值附近,图的微小改动(哪怕只动一条边)可能让特征向量大幅旋转。
痛点二,特征分解 O(n³)。对社交网络规模的大图,这是绕不过去的墙;U 还是稠密的 n×n 矩阵,存储同样沉重。分子图只有几十个原子,n³ 单独看不是分子建模的瓶颈,真正卡住的是痛点一。但“图卷积要能扩展到任意大图”的普遍要求,让这条必须一并解决。
痛点三,截断不局部。想在频域省参数,自然的办法是只保留前 k 个低频分量、其余置零。但每个特征向量几乎处处非零:只动几个频率,滤波器的空间支集仍铺满全图。Bruna 等学出的滤波器正是这样弥散在整个图上,CNN“小核、局部模式”的类比落空——Defferrard 等(2016)的批评正落在此处。三条痛点指向同一个方向:把滤波器从“特征向量的函数”改写成“拉普拉斯的多项式”。
3.4.4 局部化两步:切比雪夫截断与一阶近似
多项式滤波器一步兑现三件事。把增益写成 gθ(Λ) = ΣkθkΛk,由谱映射,U gθ(Λ)UT = ΣkθkLk——U 与 UT在中间相消,滤波成为对矩阵本身取多项式。其一,局部性:L 是一跳算子(只在有边处非零),Lk 的非零元只落在 k 跳之内,K 阶多项式滤波器严格局部于 K 跳邻域,痛点三解除。其二,可迁移:θk 不再绑定任何特征向量,它是“L 的第 k 次幂”的系数,任何图上都能求值,痛点一解除。其三,计算无须先分解:Lx、L(Lx)、……逐次稀疏矩阵–向量乘即可,痛点二解除。
剩下数值稳定性。单项式基在 [0, λmax] 上病态,幂次越高越相关。Defferrard 等(2016)把谱缩放到 [−1, 1]:Λ̃ = 2Λ/λmax − I,再换成切比雪夫多项式(Chebyshev polynomials)基——在 [−1, 1] 上正交、处处有界 |Tk| ≤ 1,还自带三项递推:
第二步,一阶近似。Kipf 与 Welling(2017)问:K 取最小时剩下什么。取 K = 1,以 λmax ≈ 2 代入(Lsym 的谱本就压在 [0, 2]),gθ(Λ) ≈ θ0 + θ1Λ̃ = θ0 + θ1(Λ − I)。重新参数化,并约束到单参数(θ0 − θ1 = θ1),得 y = θ(I + D−1/2AD−1/2)x。最后一步是重归一化(renormalization):把括号里的恒等项折叠进邻接——给每个节点加一条自环,Ã = A + I,D̃ 取 Ã 的度矩阵——两处归一化合并,得到图卷积网络(graph convolutional network, GCN)的层间传播式:
翻译成空间语言,逐原子写出:
这笔交易的账要算清。所得:参数完全脱离谱基,跨图跨分子共享;每层只剩稀疏矩阵乘法,批量训练不同大小的分子毫无障碍。所失:K = 1 把每层感受野钉死在一跳,远处信息只能靠层数累积——这句话的伏笔在 3.4.6。三代滤波器并排看,脉络更清楚:
| 滤波器 | 可学参数 | 是否依赖谱基 | 空间局部性 | 每层计算 |
|---|---|---|---|---|
| 谱卷积(Bruna et al., 2014) | θ0, …, θn−1,逐频率一个 | 是:换图即换基,参数不迁移 | 频域截断不保证 | 先 O(n³) 特征分解,再稠密乘 |
| ChebNet(Defferrard et al., 2016) | θ0, …, θK,多项式系数 | 否:系数跨图共享 | 严格 K 跳,K 预先设定 | O(K|E|) 稀疏递推 |
| GCN(Kipf & Welling, 2017) | W(l)(K = 1 折叠进权重) | 否 | 严格 1 跳,靠层数扩展 | 稀疏聚合加线性层 |
3.4.5 空间视角:归一化邻域平均的逐元素读法
现在完全离开谱域,直接读矩阵 S = D̃−1/2ÃD̃−1/2。其元素 Sij = Ãij/√(d̃id̃j),给“原子 i 聚合原子 j”定了一个明码权重:正比于 1/√(d̃id̃j)。两个因子各管一半。1/√d̃i 说:自己的邻居越多,每个邻居分到的权重越薄——聚合是加权平均而非加权求和,行内权重总量有界。1/√d̃j 说:对方的邻居越多,它的话被摊得越薄——枢纽原子向许多邻居广播同一份特征,每份的分量相应缩水。高度数节点由此被削弱,度数悬殊不再直接放大激活幅度。谱视角补一句注脚:S 的谱落于 (−1, 1],作为算子反复作用也不放大信号的二范数。
平均意义上的精确性分两档。图正则时(所有 d̃ 相同,如苯环重原子图加自环后 d̃ = 3),S = Ã/d̃,每列之和恰为 1——聚合是不折不扣的平均。图不正则时,列和围绕 1 摆动,摆动量正是度数不齐的度量(习题 3.4-2 在三节点路径上算出 0.91 与 1.15)。对照的随机游走形式 D̃−1Ã 每行严格和 1,但矩阵不对称;对称形式保住对称性,换来正交特征向量与 [−1, 1] 的谱界,作为算子性质更稳。两版的取舍在此,分子建模里对称形式是主流。
与消息传递的接口也在这里。式 (3.4-8) 已是消息传递(message passing)的特例:消息函数取恒等映射——消息就是邻居特征本身;聚合函数取归一化平均;更新即“平均后过 W 与 σ”。3.5 节把三件各自松绑:消息函数换成神经网络,聚合从平均扩展到求和、最大、门控;分子性质预测还要补上读出函数(readout function),把逐原子表示汇成图级向量——本式只走到节点层。另外,此处的权重 1/√(d̃id̃j) 由度数唯一决定;3.6 节的 AttentiveFP 把定价权交给注意力。
习题 3.4-1
证明组合拉普拉斯半正定:对任意 x ∈ ℝn,xᵀLx = Σ(i,j)∈E(xi − xj)²。并据此说明:L 的特征值全非负;0 必是特征值,其特征向量是什么;连通图的零特征值重数为何是 1。
参考解答展开二次型:xᵀLx = xTDx − xTAx = Σidixi² − Σi,jAijxixj。逐边记账:每条无向边 (i, j) 在 Σidixi² 中贡献两次——一次计入 di、一次计入 dj——合计 xi² + xj²;在 xTAx 中,对称的 Aij = Aji = 1 使该项出现两次,合计 2xixj。于是每条边净贡献 xi² + xj² − 2xixj = (xi − xj)²,求和即得。右端显然非负,故 L 半正定,特征值全非负。取 x = c·1(全图常值):每条边贡献为零,故 xᵀLx = 0;半正定矩阵上二次型为零 ⟺ Lx = 0,故 1 是零特征值的特征向量。更一般地,xᵀLx = 0 要求每条边两端相等,即 x 在每个连通分量内取常值;连通图的此类向量只有一维(c·1),零特征值单重。分子图连通,故其拉普拉斯恰有一个零特征值——特征分解 UΛUT 的第一列总是全 1 向量。
习题 3.4-2
三节点路径图 1—2—3(无向)。(a) 写出 A、D、L 与 Lsym;(b) 计算 S = D̃−1/2ÃD̃−1/2(Ã = A + I);(c) 求 S 的三个列和,并与随机游走矩阵 D̃−1Ã 的行和对照;(d) 验证 S(√2, √3, √2)T = (√2, √3, √2)T,说明其含义。
参考解答(a) A = [0,1,0; 1,0,1; 0,1,0],D = diag(1, 2, 1),L = D − A = [1,−1,0; −1,2,−1; 0,−1,1]。D−1/2 = diag(1, 1/√2, 1),故 Lsym = [1, −1/√2, 0; −1/√2, 1, −1/√2; 0, −1/√2, 1],非对角元为 −1/√(didj)。(b) Ã = [1,1,0; 1,1,1; 0,1,1],D̃ = diag(2, 3, 2),S = [1/2, 1/√6, 0; 1/√6, 1/3, 1/√6; 0, 1/√6, 1/2],非对角元为 1/√(d̃id̃j)。(c) 列和:c₁ = 1/2 + 1/√6 ≈ 0.908,c₂ = 1/3 + 2/√6 ≈ 1.150,c₃ = c₁(S 对称,行和同值)。对称归一化的“平均”并不严格:列和在 1 附近摆动,摆动量刻画度数不齐——中间节点度大,其列反而超 1。对照 D̃−1Ã = [1/2, 1/2, 0; 1/3, 1/3, 1/3; 0, 1/2, 1/2],每行严格和 1:随机游走形式行随机,对称形式以“列和不严格”换来对称性与谱界。(d) 逐分量验算:第一分量 (1/2)√2 + (1/√6)√3 = √2/2 + √2/2 = √2;第二分量 2·(1/√6)·√2 + (1/3)√3 = 2/√3 + √3/3 = √3;第三分量同第一。故 v = (√2, √3, √2)T = D̃1/21 是 S 的特征向量,特征值恰为 1。含义:对称归一化的“平均”以谱半径而非列和的形式精确成立——最大特征值为 1,反复传播在主导方向上既不放大也不衰减,这是 GCN 深层堆叠时不发散的算子依据(塌缩是另一回事,见 3.4.6)。
3.4.6 过平滑与层数的选择
每一层都在平均,而平均是平滑。把 σ 与 W 暂时拿掉,只看传播算子 S 反复作用。S 与随机游走矩阵 D̃−1Ã 相似(D̃1/2·S·D̃−1/2 = D̃−1Ã),后者的幂收敛到秩一矩阵:
这就是过平滑(over-smoothing)的算子根源。节点间携带判别信息的差异,是信号的高频成分;每次邻域平均都压低高频,沿第 k 个特征方向的分量按 λk(S)k 衰减(|λk| < 1)。层数一深,全体原子的表示向主导特征向量方向塌缩,彼此无从区分。Li 等(2018)把 GCN 的传播明确论证为拉普拉斯平滑,并以此解释深 GCN 的失效:不是过拟合——训练与测试一起垮。经验与此一致:Kipf 与 Welling 在引用网络基准上两层结构即达其最优,层数再增成绩回落(Kipf & Welling, 2017)。
层数的另一端拴着感受野。一阶近似把每层感受野钉在一跳,L 层的感受野(receptive field)即 L 跳。药物分子的图直径不大:苯环六元环,对径原子相距三键,三层已把全环尽收(习题 3.4-3);典型类药分子的重原子图直径在十个键上下。要看全分子,深一些似乎有理;但深到能看全时,平滑也把特征抹平了。实践落在 2–4 层——DeepChem 的 GCNModel 与 TorchDrug 的图卷积默认层数都在这个区间——再配合残差连接、层间归一化或跳跃聚合缓解塌缩。跨越长程的化学效应(共轭链两端的电性传递)更依赖注意力与读出的设计(3.5、3.6 节),而非一味加深。
过平滑的识别与处置。症状:加深后训练集与验证集成绩同步下滑——与过拟合“训练升、验证降”的分化方向相反。诊断:抽取倒数第二层表示,看节点间余弦相似度是否整体趋近 1、表示矩阵的数值秩是否骤降。处置:2–4 层起步;确需更深时加残差与归一化,或让末层直接读多跳聚合结果;层数应与“信息真正需要传播的距离”匹配,而非与模型容量挂钩。
习题 3.4-3
苯环的重原子图是六元环(2-正则),各原子加自环后 d̃ = 3。(a) 写出 S = D̃−1/2ÃD̃−1/2;(b) 证明其每列和恰为 1;(c) 论证三层一阶 GCN 即可让每个原子“看全”苯环,并解释继续加深为何未必更好。
参考解答(a) 度全相同,D̃ = 3I,故 S = (1/3)(I + A):对角元 1/3,两条环边的元各 1/3。(b) 任一列的和 = (1/3)(自身 1 + 两个环邻居 2) = 1。正则图上对称归一化退化为严格平均——习题 3.4-2 里的摆动完全消失,根源是度数全齐。(c) 六元环的直径为 3(对径原子相距三键)。一阶 GCN 每层触及一跳,L 层后节点 i 的计算图覆盖 i 的 L 跳邻域;L = 3 时每个原子的感受野已达全环,环上任何原子的信息都已进入其表示。第 4 层不再扩大结构可达范围——邻域本已全环——只是把完全重叠的邻域再平均一轮:新信息为零,平滑加剧。除非配残差等手段,加深在正则小环上纯付代价。类药分子直径更大,同一逻辑仍然成立:层数应匹配信息需要传播的距离。
3.4.7 桥:站到消息传递的门口
GCN 把谱方法送完了最后一程:一个由度数定价的邻域平均,两三层的堆叠,已能在 Tox21 这类任务上与指纹基线同台竞争(Wu et al., 2018)。但平均把“哪些邻居更值得听”压缩进了度数这一个变量:羰基旁的 α-碳与甲基旁的碳,若度数相同,在本层公式里的待遇完全相同。下一节把传播式拆成消息、聚合、读出三件,逐个位置松绑;3.6 节再让注意力接管定价权。谱方法的遗产留下两样:归一化的纪律,与“层数即跳数”的几何直觉。
关键术语
- 平移等变性 (translation equivariance)
- 输入平移则输出随之平移的性质;图像卷积参数共享的地基。
- 邻接矩阵 (adjacency matrix)
- A 的元素标记两点是否相邻,装下图的全部连接信息。
- 度矩阵 (degree matrix)
- 对角元为各节点度数的对角矩阵。
- 图拉普拉斯 (graph Laplacian)
- L = D − A,图的差分算子;二次型累加逐边信号差,半正定。
- 归一化拉普拉斯 (normalized Laplacian)
- D 的 −1/2 次幂夹乘 L 所得,谱压入 [0, 2],跨图共用频率标尺。
- 图傅里叶变换 (graph Fourier transform)
- 把图信号投影到拉普拉斯特征向量基 x̂ = UTx。
- 谱滤波器 (spectral filter)
- 在特征值域逐频率乘增益的图上滤波方式,g(Λ) = diag(θ)。
- 切比雪夫多项式 (Chebyshev polynomials)
- [−1, 1] 上正交的多项式族,三项递推,支撑 K 阶局部滤波。
- 重归一化 (renormalization)
- 给邻接加自环 Ã = A + I 并同步取 D̃,一阶近似收尾的一步。
- 图卷积网络 (graph convolutional network, GCN)
- 一阶切比雪夫近似的卷积网络;层内做邻居归一化平均加线性变换。
- 感受野 (receptive field)
- 一个节点表示所依赖的输入范围;一阶 GCN 中 L 层即 L 跳。
- 过平滑 (over-smoothing)
- 层数加深时节点表示因反复邻域平均而趋同、判别力衰减。
参考文献与延伸阅读
- Bruna J, Zaremba W, Szlam A, LeCun Y. 2014. Spectral networks and locally connected networks on graphs. In: International Conference on Learning Representations (ICLR).
- Defferrard M, Bresson X, Vandergheynst P. 2016. Convolutional neural networks on graphs with fast localized spectral filtering. In: Advances in Neural Information Processing Systems 29 (NIPS 2016).
- Duvenaud DK, Maclaurin D, Aguilera-Iparraguirre J, et al. 2015. Convolutional networks on graphs for learning molecular fingerprints. In: Advances in Neural Information Processing Systems 28 (NIPS 2015).
- Gilmer J, Schoenholz SS, Riley PF, et al. 2017. Neural message passing for quantum chemistry. In: Proceedings of the 34th International Conference on Machine Learning (ICML), PMLR 70:1263–1272.
- Hammond DK, Vandergheynst P, Gribonval R. 2011. Wavelets on graphs via spectral graph theory. Applied and Computational Harmonic Analysis 31:129–150.
- Kipf TN, Welling M. 2017. Semi-supervised classification with graph convolutional networks. In: International Conference on Learning Representations (ICLR).
- Li Q, Han Z, Wu X-M. 2018. Deeper insights into graph convolutional networks for semi-supervised learning. In: Proceedings of the 32nd AAAI Conference on Artificial Intelligence, 3538–3545.
- Wu Z, Ramsundar B, Feinberg EN, et al. 2018. MoleculeNet: a benchmark for molecular machine learning. Chemical Science 9:513–530.