Skip to content

GCN 论文个人学习总结:关键思想、理解路径与实验认识 ​

论文: Thomas N. Kipf and Max Welling, Semi-Supervised Classification with Graph Convolutional Networks (ICLR 2017)

写作说明 ​

【本文使用AI进行总结】本文依据原论文及相关学习讨论整理,旨在记录对 GCN 核心思想的理解过程,并总结学习中出现的关键问题与认识修正。论文中的公式、数据集统计、实验设置和实验数值以原文为依据;为帮助理解而作的解释性概括,则与作者在论文中直接陈述的结论区分开来。

一、研究问题与论文主线 ​

该论文研究的是半监督节点分类:给定一张图,节点具有各自的特征,节点之间存在连接关系,但训练时只有少量节点提供已知标签。模型需要利用这些有限的监督信号,以及图中更广泛的特征和连接信息,学习分类规则,并预测其他节点的类别。

在论文使用的引文网络中,节点表示论文,边表示论文之间的引用关系,节点特征是论文的词袋表示,标签则表示论文所属的类别。论文将节点特征矩阵记为 X ,邻接矩阵记为 A ,并构建同时依赖二者的模型 f(X,A) 。

理解这篇论文的关键,不只是记住 GCN 会聚合邻居信息,而是看清作者如何把图结构、可学习的特征变换和少量标签结合起来。GCN 的逐层传播根据图连接整合节点自身与邻居的表示;可训练权重矩阵学习如何变换聚合后的特征;训练损失则只在有标签的训练节点上计算。由于节点间的特征传播发生在整张图上,无标签节点的特征也可能影响有标签节点的预测,从而间接参与参数学习。

论文的主要贡献有两方面:一是提出一种简洁的逐层图传播规则,并从谱图卷积的一阶近似中为其提供理论动机;二是将该规则用于可扩展的半监督节点分类,并通过引文网络、知识图谱数据和运行时间实验评估其表现(Kipf & Welling, 2017)。

二、学习过程中的关键问题与认识修正 ​

2.1 GCN 的邻居信息融合是否类似 Attention? ​

学习论文背景初期,一个自然的直觉是:GCN 让每个节点融合邻居的信息,因此看起来类似一个 Attention 层。这个类比抓住了"聚合信息"的共同点,但二者的权重机制并不相同。

基础 GCN 使用归一化邻接矩阵确定信息沿图结构传播时的权重。这些权重由连接关系和节点度数决定,并不是像图注意力网络(GAT)那样,为每一对相邻节点学习动态的注意力权重。因此,更准确的理解是:GCN 先依据图结构传播节点表示,再通过共享的可训练参数变换这些表示。邻居聚合规定信息如何流动,权重矩阵则学习哪些特征组合对分类有用。

2.2 为什么不无限增加 GCN 的层数? ​

"层数越多,节点获得的信息越丰富"是一个容易产生的直觉,但它忽略了信息传播范围与模型性能之间并非简单的正相关关系。在基础 GCN 中,每一层传播一跳邻域的信息;堆叠多层后,节点表示可以受到更远邻域的影响。与此同时,传播范围扩大也会引入更多参数、增加优化难度,并使与目标节点关系较弱的邻居信息进入计算过程。

原论文附录 B 专门考察了模型深度。在 Cora、Citeseer 和 Pubmed 上进行的五折交叉验证实验中,作者报告,所测试模型的较好结果通常出现在两层或三层;对于超过七层且没有残差连接的模型,训练可能变得困难,模型深度增加所带来的过拟合也可能成为问题。因而,"不堆叠 100 层"的依据不应被简化为"远处节点没有价值",而应理解为传播范围、模型复杂度和优化稳定性之间需要权衡。

还需区分两个概念:切比雪夫多项式的阶数 K 决定单个近似滤波器所覆盖的局部邻域范围;GCN 的网络层数决定逐层传播和特征变换重复多少次。两者都与信息范围有关,但并不是同一个参数。

2.3 无标签节点如何参与模型训练? ​

学习中一个核心问题是:如果无标签节点不提供真实类别,它们为什么仍然能参与 GCN 的学习?答案需要区分前向传播、损失计算和反向传播。

前向传播时,模型使用整张图的节点特征和连接关系,并为所有节点计算输出。损失函数则只使用训练集中具有真实标签的节点。反向传播沿着这些有标签节点预测所依赖的计算路径传播梯度,并据此更新模型的共享参数。

因此,无标签节点的最终预测不会自动产生监督损失;但它们的特征或中间隐藏表示可能参与有标签节点的预测,进而影响损失对模型参数的梯度。对于两层 GCN,如果一个无标签节点位于某个受监督节点的两跳范围内,它的特征就可能影响该受监督节点的输出。相反,若一个节点与所有受监督节点之间都没有两跳以内的路径,它的特征通常不会通过这两层传播直接影响这些节点的预测。

这一机制可概括为:

无标签节点特征⟶有标签节点的预测⟶监督损失⟶参数更新

由此可以更准确地理解半监督学习:无标签节点不需要通过自己的真实标签提供监督,也可能借助图结构和特征传播影响模型训练。

2.4 图结构是否总能提升分类效果? ​

学习过程中还提出了一个重要疑问:引用关系可以为论文特征提供补充信息,但如果连接关系与类别无关,或图中存在大量噪声连接,邻居信息也可能干扰分类。这个疑问与论文的研究动机相呼应。作者在引言中指出,传统图正则化方法往往依赖"相连节点倾向于具有相同标签"的假设;然而,图边不一定只表示节点相似性,也可能编码其他关系信息。

传统图正则化方法可通过损失项惩罚相连节点预测之间的差异。论文给出的形式为:

(1)L=L0+λLreg,Lreg=∑i,jAij‖f(Xi)−f(Xj)‖2=f(X)⊤Δf(X)

其中, L0 是有标签节点上的监督损失, Δ=D−A 是非归一化图拉普拉斯矩阵。该正则项会鼓励相连节点具有相近的输出。GCN 的不同之处在于,它把邻接矩阵 A 直接纳入神经网络的传播过程,并在有标签节点上计算监督损失,而不是依靠同一个显式图平滑正则项约束所有相连节点的预测。

这并不意味着 GCN 可以保证任何图结构都有帮助。它说明模型能够利用图结构中的信息;这种信息在具体任务中是否有益,仍需要通过实验检验。论文表 3 中不使用图传播的 MLP 基线,为分析图传播的作用提供了一个对照。

2.5 为什么邻居聚合之外还需要可训练的权重矩阵? ​

固定的邻居聚合只能规定信息如何汇入节点表示,不能单独完成分类规则的学习。GCN 在传播之后引入可训练权重矩阵,使模型能够学习如何组合输入特征,并通过损失函数和反向传播调整这些组合。非线性激活函数则使网络能够表达比单纯线性变换更复杂的关系。

第二层也不只是重复第一层。第一层生成融合邻域信息的隐藏表示;第二层在这些隐藏表示上再次执行传播和变换,使最终输出能够利用更远邻域的信息,并映射到目标类别空间。

2.6 为什么传统 CNN 不能直接照搬到一般图结构? ​

传统二维 CNN 通常处理规则网格,例如图像像素具有固定的空间邻接位置。一般图结构则是不规则的:不同节点的邻居数量可以不同,邻居也没有天然统一的排列顺序。因此,不能直接为所有节点套用相同的固定空间窗口。

GCN 使用邻接矩阵描述连接关系,并通过归一化传播规则聚合邻居表示,从而避免要求图具有规则网格结构。归一化也与节点度数有关:它按连接规模缩放传播权重,缓解不同度数带来的数值尺度差异。不过,归一化并不保证所有节点的输出完全相同,也不能保证每一项较小的特征贡献都被完整保留。它是控制传播权重的一种机制,而不是解决所有信息损失问题的通用方法。

三、核心公式的逻辑:从谱图卷积到两层分类模型 ​

本节按照论文的公式编号,概括各个公式在整体方法中的作用。重点是理解推导的动机与前后联系,而不是把每一步代数计算孤立地记下来。

3.1 图拉普拉斯矩阵与传播矩阵 ​

设 A 为图的邻接矩阵, D 为度矩阵,其对角元素定义为:

Dii=∑jAij

非归一化图拉普拉斯矩阵为:

Δ=D−A

对称归一化图拉普拉斯矩阵为:

L=IN−D−12AD−12

这里需要区分两种拉普拉斯矩阵:非归一化形式通过 D−A 表示节点度数和连接结构;归一化形式则使用度数对邻接权重进行缩放。两者都包含度数信息,不能把它们的区别描述为"一个考虑度数、另一个不考虑度数"。

GCN 最终使用的传播矩阵也需要与 L 区分。论文先为每个节点添加自连接,再计算新的度矩阵:

A~=A+IN,D~ii=∑jA~ij

随后定义:

A^=D~−12A~D~−12

其中, IN 是 N×N 的单位矩阵。添加自连接后,节点在传播时也会保留自身特征的贡献。矩阵 A^ 是 GCN 逐层传播规则中的归一化邻接矩阵,不应与归一化图拉普拉斯矩阵 L 混为一谈。

3.2 公式(3)---(5):谱图卷积的局部近似 ​

论文从谱图卷积的定义出发:

(3)gθ⋆x=Ugθ(Λ)U⊤x

其中, U 是归一化图拉普拉斯矩阵的特征向量矩阵, Λ 是其特征值构成的对角矩阵。该表达式利用图傅里叶变换描述图信号的滤波;但显式计算特征分解,以及反复使用特征向量矩阵 U ,在大图上可能代价较高。

为避免直接依赖完整特征分解,作者使用切比雪夫多项式近似谱滤波器:

(4)gθ′(Λ)≈∑k=0Kθk′Tk(Λ~)

其中, Tk 是第 k 阶切比雪夫多项式, Λ~ 是经过缩放的特征值矩阵,定义为

Λ~=2λmaxΛ−IN

相应地,令

L~=2λmaxL−IN

则卷积运算可近似写成:

(5)gθ′⋆x≈∑k=0Kθk′Tk(L~)x

这一步将谱域滤波转化为图拉普拉斯矩阵的多项式运算。由于 K 阶拉普拉斯多项式只依赖中心节点最多 K 跳范围内的节点,近似滤波具有局部性,也更适合借助稀疏矩阵进行计算。公式(3)给出理论定义,公式(4)引入多项式近似,公式(5)则将其转化为局部计算形式。

3.3 公式(6)---(8):简化传播规则与重新归一化 ​

作者把多项式阶数限制为 K=1 ,并近似取 λmax≈2 ,得到:

(6)gθ′⋆x≈θ0′x−θ1′D−12AD−12x

进一步约束参数 θ=θ0′=−θ1′ ,得到只有一个可学习标量的形式:

(7)gθ⋆x≈θ(IN+D−12AD−12)x

论文指出,反复使用公式(7)中的算子可能造成数值不稳定,并在深层网络中引发梯度爆炸或消失。为缓解这一问题,作者引入重新归一化技巧,将该算子替换为基于添加自连接后的邻接矩阵构造的归一化形式:

A^=D~−12A~D~−12,A~=A+IN

推广到多维节点特征 X 后,得到:

(8)Z=A^XΘ=D~−12A~D~−12XΘ

其中, Θ 是可训练的特征变换矩阵。需要注意,从公式(7)到重新归一化形式并非严格的恒等变形,而是论文为改善传播算子性质所采用的替换。公式(8)也体现了 GCN 的两个基本操作:按图结构传播特征,再使用可学习矩阵变换特征。

3.4 公式(2):GCN 的逐层传播规则 ​

论文将上述传播形式组织为可堆叠的神经网络层:

(2)H(l+1)=σ(A^H(l)W(l))

其中, H(l) 是第 l 层的节点表示, H(0)=X ; W(l) 是该层可训练的权重矩阵; σ 是非线性激活函数,例如 ReLU。矩阵 A^H(l) 负责依据图结构聚合当前层的节点表示,右乘 W(l) 则完成可学习的特征变换。

这一公式将前面的谱图卷积近似落实为可以逐层堆叠的传播规则。它也是理解整篇论文时最核心的公式:图结构决定信息传播的方式,权重矩阵学习特征变换,非线性激活使模型能够表达更复杂的关系。

3.5 公式(9)和(10):从节点表示到半监督分类 ​

论文使用两层 GCN 完成分类:

(9)Z=softmax(A^ReLU(A^XW(0))W(1))

第一层将原始节点特征转化为隐藏表示;第二层再次传播和变换这些表示,输出每个节点对各类别的分数;Softmax 按行将分数转化为类别概率。若图中有 N 个节点、目标类别数为 F ,则输出矩阵 Z 的形状为 N×F ,因此模型会为所有节点生成预测。

半监督训练使用的交叉熵损失为:

(10)L=−∑l∈YL∑f=1FYlfln⁡Zlf

其中, YL 是具有训练标签的节点索引集合, Ylf 表示真实标签, Zlf 是模型预测节点 l 属于类别 f 的概率。公式(9)作用于整张图,而公式(10)只对有标签的训练节点计算监督损失。这一区别解释了为什么模型能够使用无标签节点的特征和连接信息,却不需要为每个节点都提供真实标签。

四、相关工作与基线方法 ​

论文第 4 节将相关研究放在两个背景下讨论:一类是利用图结构进行半监督学习的方法,另一类是直接处理图结构的神经网络。理解这些方法的差异,有助于判断 GCN 的贡献究竟来自哪里,而不只是把它视为一个在数据集上取得较高准确率的模型。

4.1 显式图正则化与图嵌入方法 ​

早期的图半监督学习方法通常利用图拉普拉斯正则项,使相连节点的预测趋于接近。标签传播(LP)、流形正则化(ManiReg)和半监督嵌入(SemiEmb)属于论文讨论的相关方法。此类方法能够利用图连接,但其效果与边所表达的含义有关:如果一条边并不表示两个节点在分类意义上相似,过度平滑相连节点的预测就可能受到限制。

另一条路线是学习节点的低维表示。DeepWalk 通过图上的随机游走构造节点序列,再利用类似 skip-gram 的目标学习嵌入;LINE 和 node2vec 采用了不同的邻域采样或游走策略。Planetoid 则进一步在嵌入学习过程中引入标签信息。论文指出,这些基于随机游走的嵌入方法通常包含多个需要分别优化的步骤,而 GCN 把图传播、特征变换与监督分类组织在同一个可微模型中进行训练。

4.2 图神经网络与谱图卷积的关系 ​

论文还回顾了递归式图神经网络、基于图的卷积方法,以及将局部图转换为序列后再使用传统一维 CNN 的方法。不同路线分别面临固定点迭代、随节点度数变化的参数规模、较高计算复杂度或节点排序等问题。GCN 的设计选择是为每层使用共享权重矩阵,并通过归一化邻接矩阵处理不同节点度数,使传播规则能够利用稀疏矩阵计算。

这与第 2 节的公式推导形成呼应:作者并非只是把二维 CNN 的卷积核搬到图上,而是从谱图卷积的局部近似出发,构造适用于不规则图结构的传播算子,并针对直推式节点分类任务作出简化。

4.3 实验基线分别提供什么参照? ​

论文第 5.3 节将 GCN 与 LP、SemiEmb、ManiReg、DeepWalk、迭代分类算法(ICA)以及 Planetoid 等方法比较。它们提供的参照并不完全相同:LP 主要利用图上的标签传播;ManiReg 和 SemiEmb 代表图正则化或半监督嵌入思路;DeepWalk 通过随机游走学习表示;ICA 将局部特征分类器与关系分类结合;Planetoid 则把标签信息纳入节点嵌入学习。

因此,基线比较不只是排列准确率名次。不同方法利用的信息、训练流程和假设存在差异,比较结果需要结合这些机制理解。原论文还说明,除 ICA 外,表 2 中其他基线结果取自 Planetoid 论文;ICA 的结果则报告了随机节点顺序下 100 次运行的平均准确率。这个来源差异在解读结果时应当保留,而不应将表中每个数值都描述为作者在同一套代码中重新训练得到的结果。

五、实验设计:从准确率转向证据与结论 ​

5.1 数据集与标签比例 ​

论文在三个引文网络------Citeseer、Cora 和 Pubmed------以及从知识图谱中提取的 NELL 数据集上进行实验。引文网络中的节点是文档,边是引用关系;NELL 则是由实体节点和关系节点构成的二部图。原论文表 1 的统计如下。

数据集类型节点数边数类别数特征维度训练标签率
Citeseer引文网络3,3274,73263,7030.036
Cora引文网络2,7085,42971,4330.052
Pubmed引文网络19,71744,33835000.003
NELL知识图谱65,755266,1442105,4140.001

在三个引文网络中,训练时每个类别只使用 20 个标签;Cora 有 7 个类别,因此训练标签总数为:

7×20=140

论文沿用 Yang 等人(2016)的数据划分,并另外使用 500 个有标签样本作为验证集、1,000 个有标签样本作为测试集。验证标签用于超参数选择,但不用于训练损失。NELL 的设置更加极端:每个类别只有一个训练标签。作者还为 NELL 中的关系节点分配独热特征,使每个节点的稀疏特征向量扩展到 61,278 维;该维度与表 1 中报告的原始特征统计不同。

5.2 直推式设置与数据划分的作用 ​

这篇论文采用直推式(transductive)节点分类设置。在这种设置下,训练期间可以使用测试节点的特征和图连接关系,但不能使用测试节点的真实标签计算训练损失或选择超参数。因此,"模型在训练时可以接触测试节点的特征与连接"并不等同于"模型使用了测试标签"。

训练集、验证集和测试集的作用不同:训练集的标签提供梯度监督;验证集用于选择超参数和监测训练过程;测试集则在模型选择完成后用于最终评价。如果测试标签参与了参数更新或超参数选择,测试集就不再提供独立的最终评估,得到的准确率也不能再以原本的方式解释为对未见标签节点的泛化表现。

5.3 训练配置与公平比较 ​

论文采用两层 GCN 作为默认模型,并在 Cora 上选择超参数,再将同一组参数用于 Citeseer 和 Pubmed。原文报告的引文网络设置为:隐藏层维度 16、Dropout 率 0.5、第一层 L2 正则化系数 5×10−4 、Adam 优化器、学习率 0.01,最多训练 200 个 Epoch;若验证损失连续 10 个 Epoch 未下降,则提前停止。输入特征向量按行归一化,权重采用 Glorot 与 Bengio(2010)提出的初始化方法。NELL 使用不同的超参数,包括隐藏层维度 64、Dropout 率 0.1 和 L2 正则化系数 1×10−5 。

这些设置说明,模型比较需要尽可能控制非研究变量。若要研究归一化传播是否带来改善,就应明确指定对照传播算子,并尽量保持数据划分、输入特征、训练轮数上限、优化器、学习率、正则化策略和评价指标一致。由于随机初始化可能影响结果,重复运行并报告平均值及波动程度,也比只报告一次结果更有说服力。

5.4 归一化传播的对照实验:研究问题与结论边界 ​

在学习过程中提出的实验方案是:构建两个模型,一个采用论文的归一化传播方法,另一个采用明确定义的简单邻居聚合方法,在其他条件尽量一致时训练并比较分类结果。该方案能够检验传播形式与分类性能之间的关系,但实验结论仍取决于对照方法的定义、随机性控制和所使用的数据集。

论文表 3 比较了不同传播模型,包括切比雪夫滤波器、一阶近似、单参数模型、重新归一化技巧、仅使用一阶项的模型,以及不使用图传播的多层感知机(MLP)。原文报告的准确率如下,单位为百分比。

传播模型CiteseerCoraPubmed
Chebyshev filter,K=369.879.574.4
Chebyshev filter,K=269.681.273.8
一阶模型(公式 6)68.380.077.5
单参数模型(公式 7)69.379.277.4
重新归一化技巧(公式 8)70.381.579.0
仅使用一阶项68.780.577.8
MLP(不使用图传播)46.555.171.4

论文说明,表 3 的数值是随机权重初始化下 100 次运行的平均分类准确率。重新归一化技巧在这三个数据集上均取得表内最高的准确率,因此结果支持作者在这些实验设置下采用该传播形式。MLP 在 Citeseer 和 Cora 上明显低于使用图传播的模型,在 Pubmed 上的差距则较小。这表明图结构对不同数据集的贡献程度可能不同,不能预先假定每个任务都能从图传播中获得同等收益。

表 3 应被理解为对不同传播模型的比较,而不是对所有图任务作出的普遍证明。各方法的参数化形式并不完全相同,因此解读结果时,需要结合作者实际替换的传播模型、对应的参数设置和统一的实验框架,避免将性能差异全部归因于单一因素。

5.5 不同实验各自回答什么问题? ​

论文中的实验并非都在验证同一件事。引文网络实验主要评价半监督文档分类性能;NELL 实验考察模型在知识图谱提取的图结构和极少标签设置下的表现;随机图实验则用于测量不同图规模下每轮训练的运行时间。分类准确率与计算时间对应不同的评价目标,不能用其中一个指标替代另一个。

5.6 主要分类结果:不同数据集的准确率应如何解读? ​

论文表 2 汇总了各基线方法在 Citeseer、Cora、Pubmed 和 NELL 上的分类准确率。表中括号内的秒数是 Planetoid 与 GCN 收敛所需的壁钟时间,不是每个 Epoch 的耗时。

方法CiteseerCoraPubmedNELL
ManiReg60.159.570.721.8
SemiEmb59.659.071.126.7
LP45.368.063.026.5
DeepWalk43.267.265.358.1
ICA69.175.173.923.1
Planetoid*64.7(26 s)75.7(13 s)77.2(25 s)61.9(185 s)
GCN(原文主实验)70.3(7 s)81.5(4 s)79.0(38 s)66.0(48 s)
GCN(随机划分)67.9 ± 0.580.1 ± 0.578.9 ± 0.758.4 ± 1.7

原论文报告,主实验的 GCN 结果是在沿用既有数据划分的条件下,对 100 次随机权重初始化取平均;“GCN(随机划分)”则是在 10 个随机抽取的数据划分上报告平均准确率与标准误。两行对应不同的评估设置,不能不加说明地混为同一组重复实验。

学习过程中曾出现一个重要问题:为什么同一模型在不同数据集上的准确率会有明显差异?表 1 已显示这些任务并非只在图规模上不同:Citeseer、Cora 和 Pubmed 的类别数分别为 6、7 和 3,训练时每类使用 20 个标签;NELL 则有 210 个类别,每类只有一个训练标签,而且它来自经过特殊处理的知识图谱,而非普通引文网络。各数据集的节点特征维度、连接结构与规模也不同。因此,绝对准确率的高低不能直接解释为模型在某个数据集上“更好”或“更差”,更不能据此单独断定某一个因素造成了差异。原论文并没有通过这张表把类别数、图结构和标签数量的影响逐一隔离。

更有解释力的做法,是先在同一个数据集内比较不同方法。例如,GCN 在 NELL 上比 LP 高 39.5 个百分点,在 Cora 上比 LP 高 13.5 个百分点。这些差值反映了特定数据划分和实验设置下的相对表现;它们不能直接证明图传播在所有任务上都会带来同样幅度的提升。

运行时间也需要单独解读。按表 2 的括号数值,GCN 在 Citeseer、Cora 和 NELL 上的收敛时间短于 Planetoid,但在 Pubmed 上是 38 秒,而 Planetoid 为 25 秒。因此,准确的结论应是 GCN 在多个数据集上同时表现出较高准确率和有竞争力的效率,而不是断言它在每个数据集上都更快。

5.7 每轮训练时间实验回答什么问题? ​

第 6.3 节不再比较分类准确率,而是考察图规模增大时每轮训练的时间如何变化。作者构造了不同规模的随机图:若图有 (N) 个节点,就随机生成 (2N) 条边;输入特征矩阵取单位矩阵 (X=I_N),每个节点对应一个独热向量,并为所有节点设置虚拟标签。这个设置的目的在于分析计算开销,而不是模拟一个具有真实语义标签的实际分类任务。

作者测量了 100 个 Epoch 的平均每轮耗时,其中包含前向传播、交叉熵计算和反向传播,并比较 GPU 与仅使用 CPU 的实现。图中横轴以边数表示规模,并标记了发生显存不足的实验点。结合第 3.2 节给出的计算复杂度,论文强调其稀疏实现的计算成本随图的边数线性增长;这也是 GCN 可扩展性论证的一部分。

这项实验与表 2 的收敛时间并不相同:表 2 关注模型在特定任务上达到收敛需要多久,而第 6.3 节关注给定图规模下一个 Epoch 的运行时间。把两者分开,才能避免用单轮速度替代端到端训练效率,或从分类准确率直接推断计算复杂度。

六、讨论与局限:模型为何有效,又在何处受限? ​

6.1 作者如何解释 GCN 的实验表现? ​

第 7.1 节中,作者将 GCN 的表现与相关方法的机制联系起来。图拉普拉斯正则化方法可能受到“边仅表示节点相似性”这一假设的限制;基于 skip-gram 的图嵌入方法则涉及多个需要分别优化的步骤。GCN 将节点特征和图结构直接纳入逐层传播过程,并在有标签节点上端到端地优化分类目标。与主要聚合标签信息的 ICA 相比,每一层传播节点特征也为分类提供了更丰富的信息。

作者还指出,重新归一化传播形式相较于朴素的一阶模型及采用更高阶切比雪夫多项式的模型,在若干数据集上兼具较少的参数和运算操作,以及更好的预测表现。这一判断与表 3 的对照实验相互对应,但其结论范围仍是论文实际评估的数据集和设置。

6.2 全图批量训练带来的内存限制 ​

论文的默认训练方式是在每次迭代中使用完整数据集进行批量梯度下降。作者指出,内存需求随数据集规模线性增长;对于无法装入 GPU 内存的大图,CPU 训练仍可能可行,但训练速度和资源效率需要另外评估。小批量随机梯度下降可以缓解内存压力,不过,若要精确计算一个包含多层传播的 GCN,小批量的构造需要考虑目标节点所需的多跳邻域;图很大且连接稠密时,可能还需要进一步近似。

这说明 GCN 的“随边数线性增长”并不意味着对任何规模的图都没有资源瓶颈。计算复杂度、内存占用、邻域采样方式和硬件条件是不同但相关的因素。

6.3 有向边、边特征与自连接权重 ​

原文指出,基础框架自然地适用于无向图(可以是加权或非加权图),但不能直接处理一般的边特征。NELL 实验通过把原始有向关系转换成带有关系节点的无向二部图,使模型能够间接表示原图中的关系信息。这是通过图结构预处理适配任务,而不是说明基础传播公式原生支持任意有向边与边属性。

作者还讨论了传播规则隐含的假设:模型依赖局部邻域,并在 (\tilde A=A+I_N) 中以固定方式加入自连接。对某些数据集而言,节点自身信息和邻居信息的重要性可能需要调整。论文因此提出更一般的形式:

(11)A~=A+λIN

这里的 (\lambda) 用于调节自连接的相对权重。作者指出,该参数可以通过梯度下降学习,作用类似于传统半监督学习中平衡监督目标与图正则项的权衡参数。这个扩展提醒读者:自连接系数为 1 是论文当前模型的设计选择,并不是所有图任务都必须采用的普遍规律。

七、附录 A:WL-1 算法、节点嵌入与“先聚类再分类”的区别 ​

7.1 GCN 与 WL-1 的联系 ​

附录 A 从 Weisfeiler–Lehman(WL-1)算法解释 GCN 的传播形式。WL-1 通过迭代汇总邻居的节点标记,并使用离散的哈希操作更新节点颜色;GCN 则把这种离散更新替换为可微的特征聚合、可训练权重矩阵和非线性激活。按照附录中的归一化选择,当边的归一化系数与相邻节点度数的平方根乘积相对应时,可以得到与 GCN 传播规则相同的形式。

这一联系提供了直观解释:每一层都根据邻居的表示更新当前节点的表示,重复传播会让节点表示逐渐编码更大范围的局部结构。作者将 GCN 解释为 WL-1 的一种可微、参数化推广;这种说法是对传播机制的联系和直观解释,不应被扩大为 GCN 与 WL-1 在所有图上的表达能力完全相同。

7.2 随机权重为什么也可能形成有结构的嵌入? ​

附录 A.1 使用 Zachary 的空手道俱乐部网络作为示例。该图包含 34 个节点、154 条无向无权边,节点被划分为四个社群。作者将输入特征设为单位矩阵 (X=I_N),使每个节点以独热向量表示身份;随后使用一个三层 GCN,权重按 Glorot–Bengio 方法随机初始化,但不进行训练,并将输出映射到二维空间进行可视化。论文展示的节点嵌入仍能反映图中的结构,与 DeepWalk 获得的嵌入有可比之处。

这个示例说明,图传播本身就能够从邻接结构中提取信息,训练并不是节点嵌入包含结构信息的唯一来源。但它只是一个小型示例,不能据此断言随机权重 GCN 在所有网络或所有任务上都能产生高质量嵌入。

7.3 少量标签如何让嵌入适应分类任务? ​

附录 A.2 在同一个小型网络上进一步加入 Softmax 分类层,只使用每个类别一个带标签节点,总计四个标签,并以交叉熵损失训练 300 次迭代。作者观察到,随着训练推进,节点嵌入逐渐变得适合区分不同社群;在这一示例中,极少量监督信息与图结构就足以形成线性可分的表示。

学习过程中曾出现一种理解:GCN 是否先通过训练权重把节点聚类,再依据聚类结果预测标签?需要在这里作出修正。论文中的模型并没有一个独立的“先聚类、后分类”步骤。它直接使用有标签节点的分类损失训练网络,Softmax 输出各节点属于不同类别的概率。隐藏表示在训练后可能呈现出社群分离或类别聚集的几何结构,但这种分离是监督分类训练形成的表示结果,而不是一个预先运行的聚类算法。附录中的嵌入可视化帮助解释表示如何变化,却不能把模型的训练目标改写成无监督聚类。

八、附录 B:网络深度、邻域扩大与残差连接 ​

附录 B 专门研究网络层数对分类性能的影响。实验在 Cora、Citeseer 和 Pubmed 上采用五折交叉验证,并使用全部标签;除标准 GCN 外,还比较了在隐藏层之间加入残差连接的变体。每个划分训练 400 个 Epoch,不使用提前停止,使用 Adam 优化器,学习率为 0.01,隐藏层维度为 16,Dropout 率为 0.5,第一层的 L2 正则化系数为 (5\times10^{-4})。

这一实验的标签使用方式与正文的半监督主实验不同:附录 B 使用全部标签来考察模型深度,不能把它与正文每类仅使用少量标签的结果直接视为相同设置下的比较。原文报告,在所测试的数据集上,较好的结果通常来自两层或三层模型;当网络超过七层且没有残差连接时,训练可能变得困难。随着层数增加,节点表示的有效上下文范围也会扩大,参数数量增加还可能带来过拟合。

残差连接允许后续层保留来自前一层输入的信息,从而帮助训练更深的网络。不过,残差连接并不意味着增加层数必然改善分类效果,它只是缓解深层网络优化困难的一种机制。

学习过程中提出的一个直觉是:不同类别邻居的信息混合后,可能干扰目标节点的分类。这个判断能够帮助理解为什么更大的邻域未必总是有益,但需要与论文的直接结论区分开来。附录 B 明确强调的是上下文范围随深度扩大、深层模型训练困难以及参数增加导致的过拟合;过平滑和异类邻居干扰可以作为相关的解释视角,但不应被说成该段实验唯一验证的原因。

九、结论与完整的学习认识 ​

从研究问题到实验结论,这篇论文形成了一条连贯的技术路线。半监督节点分类面对的是标签稀缺而图结构与节点特征仍然可用的情形;谱图卷积给出了图信号滤波的理论形式,切比雪夫多项式近似将其转化为局部计算;进一步的一阶近似、参数约束与重新归一化构成高效的传播规则。GCN 将这一规则与可训练的特征变换、非线性激活组合起来,并只在有标签训练节点上计算监督损失,从而让整张图的特征与连接关系参与表示学习。

后半部分的阅读进一步补全了对模型的理解。基线比较说明 GCN 与显式图正则化、图嵌入和迭代分类方法的差异;主实验提供分类准确率与收敛时间的证据;随机图实验则从每轮耗时考察计算扩展性。讨论部分提醒读者注意全图批量训练的内存需求、基础框架对有向边和边特征的限制,以及自连接权重和局部传播等设计假设。附录 A 从 WL-1 与节点嵌入角度解释传播机制,附录 B 则表明网络深度需要在信息范围、训练难度和过拟合风险之间权衡。

这一学习过程中的重要认识修正,是逐渐把直觉性的描述转化为有边界的技术判断:邻居聚合并不等同于注意力机制;无标签节点能通过有标签节点的计算路径影响参数更新,但其最终预测不会自动产生监督损失;嵌入可视化中的社群分离不等同于先聚类再分类;不同数据集上的准确率差异不能归因于单一因素;计算复杂度随边数线性增长也不意味着训练没有内存瓶颈;而更深的网络虽然扩大了传播范围,却不保证得到更好的预测结果。

因此,对 GCN 的理解不应止于记住传播公式或实验表格,而应同时把握三个层面:传播规则如何编码图结构,监督目标如何把少量标签转化为可学习的分类模型,以及实验结果能够支持哪些结论、又有哪些问题仍受数据和模型假设的限制。这也是从阅读单个模型论文中获得的更一般的方法论收获。

参考文献 ​

Kipf, T. N., & Welling, M. (2017). Semi-Supervised Classification with Graph Convolutional Networks. International Conference on Learning Representations (ICLR).

Yang, Z., Cohen, W. W., & Salakhutdinov, R. (2016). Revisiting Semi-Supervised Learning with Graph Embeddings. Proceedings of the 33rd International Conference on Machine Learning (ICML).

最近更新: