3.4 从谱滤波的局部近似说明 GCN 的传播规则:先对含自环的邻域进行归一化加权聚合,再施加可学习变换与非线性。对称归一化通常不等于算术平均。邻域计算还可以采用其他聚合与更新方式,而多轮传播得到的原子表示需要经读出形成分子级输出。本节据此比较不同模型的计算规则,并讨论传播深度应如何结合任务验证。
3.5.1 消息传递的一般框架
分子图的邻域大小不固定,原子编号通常也不具有物理意义。通过共享函数反复汇总邻域信息,是适应这些特点的一类建模方法。Gilmer 等(2017)将许多已有图模型统一为消息传递神经网络(message passing neural network, MPNN)。设分子图 G = (V, E),原子 v 在第 t 轮的表示为 hv(t) ∈ Rd,邻居集为 N(v),euv 表示键特征。一轮节点消息传递可分为三步:
M 与 U 可采用线性层、多层感知机或门控循环单元等形式,参数由任务损失训练。AGG 可以是无参数的求和、均值或逐维最大值,也可以包含学习到的注意力权重。关键要求是置换不变性(permutation invariance):重排邻居列表不应改变其数学输出。共享的打分函数与对称汇总可以同时满足可学习性和不变性;直接按输入次序拼接邻居向量则通常不满足。整个节点更新应对原子重编号保持置换等变,即输出随编号作相同重排。实际浮点实现可能因求和次序出现微小差异,因此数值检查通常采用适当容差。
MPNN 框架。给定初始节点与边特征,通过局部消息传递更新隐藏状态;图级任务再使用置换不变的读出函数。式 (3.5-1)–(3.5-3) 是节点状态版本,D-MPNN 则将传播状态设在有向边上。GCN、神经指纹、GGNN 与 AttentiveFP 的许多计算都可在这一框架下比较,但图学习方法并不限于局部消息传递;模型还可在状态位置、跨层连接和读出方式上有所不同。
以 3.4 的 GCN 层为例,采用列向量记法时可写为:
表 3.5-1 比较三个代表模型的传播规则。图 3.5-1 使用算术均值演示消息、聚合与更新的分工,是便于手算的独立示例,不是式 (3.5-4) 在该链上的数值实现。
| 模型 | 消息 M | 聚合 AGG | 更新 U |
|---|---|---|---|
| GCN 式(3.4) | 邻居状态,不显式使用键类型 | 对称归一化加权求和,含自环 | 线性变换与非线性 |
| Duvenaud 神经指纹 | 邻域原子表示 | 求和,包含自身 | 按中心原子度数选线性变换,再施加非线性;各层输出累加为固定长度指纹(3.5.3) |
| D-MPNN(Yang et al., 2019) | 有向边隐藏状态 | 对发送端的入边求和,排除当前边的反向边 | 共享线性变换、初始边状态残差与 ReLU(3.5.4) |
3.5.2 聚合算子:sum、mean 与 max
聚合方式影响可保留的信息。例如多重集 {1, 1} 与 {1, 1, 1} 的和分别为 2、3,而均值与最大值都为 1。求和聚合能够保留某些重数差异,但不自动区分全部多重集:{2} 与 {1, 1} 的和相同,零向量的重复也不会改变和。均值聚合对整个多重集的等比例重复不敏感;最大值聚合仅保留各维最大响应,因此会忽略许多重数与非最大值信息。具体区分能力必须连同输入特征及求和前的映射一起分析。
考虑一个受限的分子图示例:只保留重原子,初始特征仅含元素类型,不含度数、氢数或键类型;各层对闭邻域取算术均值,使用共享更新函数,且最终仍取均值读出。此时全碳图的节点可始终保持相同状态,不同碳原子数的图也可能得到相同表示。若改为求和读出,节点数仍可能影响输出;若加入度数或氢数,节点状态也可能不同。因此,不能把这一特定条件下的信息丢失推广到所有采用均值的模型。分子大小有时提供预测信号,但是否需要显式保留,应结合性质、特征和数据分布判断。
Xu 等(2019)的 Lemma 5 给出一个存在性结论:当特征域可数、多重集大小具有统一上界时,存在适当的特征映射 f,使映射后特征的和对这些多重集具有单射性。结论不要求直接对原始数值求和就单射,也不保证任意 MLP 或训练结果都实现该映射。图同构网络(graph isomorphism network, GIN)据此采用求和与多层感知机组合:
该理论以具有相同初始标记的标准节点邻域聚合模型为对象,其结构区分能力不超过一维 Weisfeiler–Lehman 测试(1-WL)。在聚合与更新满足所需单射条件、轮数充分且图级读出也保留区分信息时,可达到相应的 1-WL 区分能力;1-WL 本身仍不能区分所有非同构图。使用键标记时,应与包含相应边标记的测试比较,不能无条件沿用忽略键特征的结论。结构区分能力也不等于某项分子预测任务上的泛化性能。
习题 3.5-1
三原子链 A—B—C,一维初始表示 h(0) = (1, 2, 3)。聚合取闭邻域(自身+邻居)求和,更新取 h′ = 0.5 × 聚合值,标量 W 在节点与轮次间共享,激活取恒等。(1) 求 h(1) 与 h(2)。(2) 改用图 3.5-1 的闭邻域均值,写出 h(1) 并比较极差;这一比较能否证明一般表达能力的优劣?(3) 对求和版的 h(1) 分别计算 sum、mean、max 读出。
参考解答(1) 第一轮为 (1.5, 3.0, 2.5):三个闭邻域之和分别是 3、6、5。第二轮为 (2.25, 3.5, 2.75),对应计算为 0.5×(1.5+3.0)、0.5×(1.5+3.0+2.5)、0.5×(3.0+2.5)。(2) 均值版为 (0.75, 1.00, 1.25)。本例求和版与均值版的极差分别为 1.5、0.5,两者仍给三个节点不同数值。极差受缩放影响,不能据此判定一般单射性或预测能力;本例求和还使节点度数影响表示幅度。(3) 三种读出分别为 7.0、7/3 ≈ 2.33、3.0。它们保留的信息不同,适用性仍需结合任务比较。
习题 3.5-2
(1) 比较多重集 {1, 1} 与 {1, 1, 1} 的和与均值,再用 {2} 与 {1, 1} 说明原始数值求和不一定单射。这个反例能否证明可数特征域中不存在单射求和表示?给出有限特征域的修正映射,并说明可数域、大小有界的结论如何构造。(2) 证明:对输入顺序不变的函数 F 可写成多重集函数 G,即 F(x1, …, xn) = G({{ x1, …, xn }})。
参考解答(1) 前两个多重集的和为 2、3,均值均为 1;后两个的原始数值和均为 2。后者只涉及有限特征域 {1, 2},说明恒等映射下的求和会碰撞,不能证明可数性是必要条件,也不否定存在合适映射。取 f(1) = (1, 0)、f(2) = (0, 1),求和即记录两类元素各自的重数。对可数域枚举 x1, x2, …,若多重集大小最多为 K,取整数 B > K 并令 f(xj) = B−j。有限和的 B 进制各位直接记录重数,且不会进位,因此得到数学上的单射表示;这不需要在有限维空间中放入无限多个线性无关向量,也不保证浮点计算能精确实现该构造。(2) 定义 G 为 F 在任意排列上的值。同一多重集的任意两个排列可由置换互相得到,因此 F 的不变性保证 G 与代表排列无关。反过来,多重集函数与取多重集操作的复合必然不变。该结果描述顺序不变性,完整模型的区分能力还取决于特征、更新层和读出。
3.5.3 神经指纹:从离散标识符到可学习表示
2.5 介绍的位向量 ECFP 先以原子与键特征形成离散邻域标识符,再将不同半径的标识符映射到固定长度向量;哈希与离散索引不能直接通过常规反向传播训练。Duvenaud 等(2015)保留逐层扩展原子邻域的思想,以连续表示、可学习变换和 softmax 输出构造神经指纹(neural fingerprint)。按原文 Algorithm 2 的简化记法,一层更新为:
表 3.5-2 与图 3.5-2 比较两种表示。位向量 ECFP 的一个位置可对应多个被映射到此处的子结构标识符;神经指纹的一个分量则累积各原子、各层的软归属权重。式 (3.5-7) 的输出长度始终为 F,不随层数拼接增长。它避免显式整数取模这一操作,但有限维映射与求和仍可能丢失区分信息,可微性并不保证不同分子具有不同指纹。
| 环节 | 位向量 ECFP | 神经指纹 |
|---|---|---|
| 初始表示 | 由原子不变量形成离散标识符 | 原子特征向量 hv(0) |
| 迭代 | 根据自身、邻域标识符及键信息更新标识符 | 闭邻域求和,经按度数选择的可学习矩阵与非线性更新 |
| 层内汇总 | 记录该半径的子结构标识符 | 各原子输出 F 维 softmax 权重并求和 |
| 跨层汇总 | 各半径标识符映到同一 F 位向量,可能发生碰撞 | 各层贡献累加到同一 F 维实值向量,长度固定 |
| 重建条件 | 固定输入处理、算法参数与实现版本,不依赖预测模型权重 | 还需固定网络结构与训练权重;不同模型的坐标不默认对齐 |
可微性、重建与实现差异。ECFP 不依赖预测模型权重,但跨项目比较仍需一致的分子标准化、半径、位长、手性设置与实现版本;位与子结构也可能多对一。神经指纹还依赖训练权重,不同模型的向量坐标不能默认直接比较。DeepChem 的 GraphConv 借鉴按原子度数设置变换的思路;2.8.0 的 GraphGather 则拼接节点表示的求和与逐维最大值,并可施加激活。因此,引用这一实现时应说明版本,不能将其等同于原论文逐层 softmax 累加的完整模型。
3.5.4 以边为中心:D-MPNN
普通节点消息传递允许信息沿相邻边立即返回,例如从 A 到 B,再从 B 返回 A。这种往返路径在链与环中都可能出现。Yang 等(2019)使用的有向消息传递神经网络(directed message passing neural network, D-MPNN)通过有向边状态排除这种直接回退。每条无向键对应两个有向状态,u→v 的初始状态由源原子特征 xu 与键特征 euv构成;随后汇总进入 u 的其他有向边状态:
完成 T 轮边状态传播后,将进入原子 v 的状态求和,与该原子的初始特征拼接,再生成最终原子表示:
有向边模型为每条无向边维护两个状态,其状态数量为 2|E|;与 |V| 个节点状态相比,实际计算和内存开销还取决于隐藏维度、度数、聚合实现和训练方式。共享 Wm 使参数数量不随传播轮数线性增加,但反向传播所保存的中间状态仍可能随轮数增长。Yang 等在多种公开与工业数据集上比较了学习表示和固定描述符,并考察数据划分、附加特征及调参等因素。其结果不构成所有任务随数据量增长必然获得优势的保证,直接回退的排除也不能单独证明训练更稳定。
3.5.5 读出函数:从原子表示到分子表示
末轮原子表示的数量随分子大小变化。毒性、溶解度等分子级预测通常需要固定维度表示,因此使用读出函数(readout)汇总这些原子向量。原子编号改变时,节点表示应相应重排,分子表示则应保持不变;这要求读出对节点顺序不敏感。原子级任务保留节点输出,不必经过分子级池化。
表 3.5-3 列出常见选择。求和池化(sum pooling)、均值池化(mean pooling)与最大池化(max pooling)分别汇总节点表示的和、平均值与逐维最大值。直接拼接原子向量保留了顺序,长度也随原子数变化;若使用排序、填充或截断,需要另行处理不变性、并列值与信息损失。分层读出则先形成官能团、环或学习到的簇表示,再汇总到分子层,聚类与汇总过程也应满足相应的对称性。另一类方法是可学习的加权汇总:
| 读出 | 计算方式 | 主要偏置与限制 |
|---|---|---|
| 求和池化 | 累加节点表示 | 可保留规模信号,是否可恢复计数取决于节点特征 |
| 均值池化 | 节点表示求和后除以节点数 | 对相同表示多重集的等比例重复不敏感,节点状态仍可含规模相关信息 |
| 最大池化 | 分别取每个维度的最大响应 | 适合汇总强响应,但弱响应和重数信息可能丢失 |
| 注意力池化 | 以学习到的归一化权重汇总 | 可按输入调整权重;不保证单射或自动获得可靠解释 |
| Set2Set | 循环状态驱动多轮注意力读取 | 可反复整合集合信息,增加计算步骤与配置选择 |
读出选择应结合数据中的规模信号分析。若每个节点都含常数 1 这一维,求和读出会显式给出原子数;其他表示下则不能保证直接恢复节点数。均值虽消除了简单的整体倍数,仍可能利用节点状态中编码的大小相关特征。局部聚合碰撞也不意味着两个完整分子必然不可区分:它们可能拥有不同节点数或其他不同状态。只有最终节点表示多重集相同、且读出不接收额外信息时,任何确定性的多重集读出才无法区分两图。单层丢失的信息能否由其他路径保留,应检查完整模型。
按任务比较聚合与读出。① 对可由原子组成相加得到的量,可设置原子贡献求和基线,并明确氢原子等特征如何表示;② 对平均贡献或比例型目标,可比较均值读出,但无需同时强制邻域使用均值;③ 对局部结构相关目标,可比较最大值、注意力与求和读出,并检验局部信号之外的背景影响;④ 对跨尺度任务,可比较注意力、Set2Set 或分层表示;⑤ 需要较强多重集区分能力时,可使用 GIN 式聚合,并核对其输入与读出条件。LogP 是分配系数的对数,不是热力学广延量;原子片段加和的估计方法只是建模近似。各方案应在相同数据划分下选择深度,并以原子重编号测试检查输出在数值容差内的不变性。
习题 3.5-3
考虑三个任务:(i) LogP 预测;(ii) 代谢软点判别,即预测分子中各原子的代谢易感性;(iii) 分子大小与标签高度相关的聚集倾向预测。分别提出传播深度、聚合与输出方式的候选方案及验证方法;对 (iii) 说明如何区分有用的大小信息与依赖数据偏差的预测。
参考解答(i) 比较固定描述符或原子片段贡献基线,以及不同深度的 GNN;求和、均值或注意力读出均可作为候选。LogP 不随样品量成比例增加,不能由片段加和估计推出广延性,也不能预先断言一两层足够。(ii) 使用共享的原子级预测头,重编号后输出应作同样重排;传播深度通过位点标签和验证集选择,必要时加入更远的结构或三维信息。分子级 max 池化只能汇总响应,不能替代保留各原子位置的预测。(iii) 建立仅用原子数或分子质量的基线,再比较读出消融、大小匹配或分层评价,以及目标化学空间中的外推表现。简单基线接近完整模型仅提示大小可能解释较多信号;若大小与性质存在合理关联,不应自动判为错误依赖。均值读出也不能单独保证消除大小信息。
3.5.6 感受野与信息瓶颈
感受野(receptive field)描述表示可能依赖的输入范围。在图结构固定、每轮仅沿原图相邻节点传播的模型中,某个节点的初始状态每轮最多传播一条边,T 轮后只能影响距离不超过 T 的节点。若初始描述符已经包含更大邻域或全图信息,则必须把这部分先验范围另外计入。距离为 D 的两个端点要彼此接收对方的初始状态,通常至少需要 D 轮;在长度为 D 的路径上,中间节点约需 D/2 轮即可同时接收两端信息,这与端点间传递不同。全图读出虽然访问所有节点,也不能自动恢复局部表示中未编码的长程关系。
深度选择需要结合目标与输入表示。原子组成或局部片段贡献模型可构成某些性质的有效基线,但共轭、远端取代、三维接触等因素可能超出短程键图信息。位点预测也可能受整体结构影响,不能一概设为固定的两三跳。应比较浅层与较深模型,并核对差异究竟来自感受野、模型容量还是训练条件;对三维作用,增加键图深度也未必提供所缺少的几何信息。
深度还会影响信息混合与优化。某些反复平滑的传播使节点表示趋于难以区分的状态或受限子空间,称为过平滑(oversmoothing)。其极限形式取决于归一化与更新规则,对称归一化下不必是所有节点数值完全相等。图 3.5-1 的极差缩小还受到 W = 0.5 的整体缩放影响,不能作为一般过平滑结论的证明。另一类瓶颈是大量远程信息通过有限连接压缩进固定宽度状态,即过度压缩(oversquashing);它与表示趋同是不同问题。
若各层权重独立,增加深度通常增加参数;若跨轮共享权重,参数数目可保持不变,而计算与训练存储仍会增长。跳跃连接有助于保留初始和浅层表示、改善优化,但同一节点跨层的连接本身不会缩短原图距离或单独扩大最大感受野。粗粒化、虚拟节点或额外长程连接会改变信息传播路径,也引入新的建模假设;它们是否有益,应通过保留结构信息的程度和目标任务测试评估。
区分感受野、信息保留与训练问题。① 报告传播轮数、初始特征范围、权重是否共享,并结合图距离分布解释可达范围;② 通过深度消融、表示差异及训练曲线检查过平滑、信息压缩和优化问题;③ 需要远程依赖时,比较加深、改变传播连接或引入适当几何信息的方案。跳跃连接与原子级输出有各自用途,但不能单独补足缺失的远程信息。
消息、聚合、更新与读出共同决定表示能够保留的信息。本节既讨论了固定的求和、均值和最大值,也给出了可学习的注意力读出。3.6 将以 AttentiveFP 为例,进一步说明注意力如何分别参与原子邻域传播与分子级汇总。
关键术语
- 消息传递神经网络 (message passing neural network, MPNN)
- 通过局部消息与状态更新形成表示的一类图模型框架;图级任务再使用读出。
- 消息函数 (message function)
- 根据所选节点、边状态或特征生成传递信息的函数,可包含学习参数。
- 聚合算子 (aggregation operator)
- 将邻域消息多重集汇总为向量的函数,可固定或可学习,数学输出不依赖消息排列。
- 更新函数 (update function)
- 根据已有状态、聚合结果或初始特征产生下一轮状态的函数。
- 多重集 (multiset)
- 允许元素重复、不记顺序的集合;置换不变算子的天然定义域。
- 置换不变性 (permutation invariance)
- 重排输入不改变输出的性质;节点级输出通常要求随编号相同重排的置换等变性。
- 图同构网络 (graph isomorphism network, GIN)
- 结合自身加权状态、邻域求和与 MLP 的模型;满足相应单射与读出条件时可达到 1-WL 区分能力。
- 神经指纹 (neural fingerprint)
- 以可学习邻域传播生成原子表示,并将多层输出累加为固定长度向量的可微分子表示。
- 有向消息传递神经网络 (directed message passing neural network, D-MPNN)
- 在有向边上维护状态并排除立即反向传播的模型;Yang 等(2019)采用共享残差 ReLU 更新。
- 读出函数 (readout)
- 把节点表示多重集映为定长图级向量的置换不变函数。
- 感受野 (receptive field)
- 表示可能依赖的输入范围;普通一跳传播的 T 轮影响范围还需结合初始特征与额外连接判断。
- 过平滑 (oversmoothing)
- 反复传播使节点表示趋于难以区分的状态或受限子空间的现象,具体行为取决于更新规则。
参考文献与延伸阅读
- 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(Algorithm 2).
- Gilmer J, Schoenholz SS, Riley PF, Vinyals O, Dahl GE. 2017. Neural message passing for quantum chemistry. In: Proceedings of the 34th International Conference on Machine Learning, PMLR 70:1263–1272.
- Kearnes S, McCloskey K, Berndl M, Pande V, Riley P. 2016. Molecular graph convolutions: moving beyond fingerprints. Journal of Computer-Aided Molecular Design 30:595–608.
- Kipf TN, Welling M. 2017. Semi-supervised classification with graph convolutional networks. In: International Conference on Learning Representations (ICLR).
- Li Y, Tarlow D, Brockschmidt M, Zemel R. 2016. Gated graph sequence neural networks. In: International Conference on Learning Representations (ICLR).
- Vinyals O, Bengio S, Kudlur M. 2015. Order matters: sequence to sequence for sets. arXiv:1511.06391.
- Xu K, Hu W, Leskovec J, Jegelka S. 2019. How powerful are graph neural networks? In: International Conference on Learning Representations (ICLR)(Lemma 5、Corollary 6 与附录证明).
- Yang K, Swanson K, Jin W, et al. 2019. Analyzing learned molecular representations for property prediction. Journal of Chemical Information and Modeling 59(8):3370–3388(Methods: Directed MPNN).
- Li Q, Han Z, Wu XM. 2018. Deeper insights into graph convolutional networks for semi-supervised learning. In: Proceedings of the AAAI Conference on Artificial Intelligence 32(1).
- Alon U, Yahav E. 2021. On the bottleneck of graph neural networks and its practical implications. In: International Conference on Learning Representations (ICLR).
- DeepChem. Layers 与 2.8.0 实现源码(GraphConv、GraphGather).
- RDKit. rdkit.Chem.Crippen(原子贡献式 LogP 与摩尔折射率估计).