Learning the Neighborhood: Contrast-Free Multimodal Self-Supervised Molecular Graph Pretraining¶
会议: ICML 2026
arXiv: 2509.22468
代码: https://github.com/ariguiba/C-FREE
领域: 分子表征 / 自监督预训练 / 图神经网络
关键词: 多模态分子图、Ego-Net、JEPA、对比无关、3D 构象
一句话总结¶
C-FREE 把分子拆成固定半径的 k-EgoNet 子图,2D 拓扑 + 多个 3D 构象走 GINE + PaiNN + Transformer 编码后用 JEPA 风格的潜空间预测做预训练,全程无负样本、无增广、无位置编码,仅用 0.33M 分子(GEOM)就在 MoleculeNet 8 个任务上超越了用 19M–77M 分子训练的 UniMol / MolFM 等多模态基线。
研究背景与动机¶
领域现状:分子表征学习的自监督方法大致分三派——对比式(GraphCL / GraphMVP / 3D InfoMax)、生成式(AttrMask / GROVER / MoleBlend)和潜空间预测式(BGRL / LaGraph / GraphJEPA),近年又开始引入 3D 构象做多模态融合(UniMol、GEM、MolFM)。
现有痛点:对比式离不开"什么算正/负样本"的人工设计,分子里手性异构体结构几乎相同但性质迥异,用增广造正例本就尴尬;生成式要在离散图空间重建节点/边/属性,自回归还得编一个本不存在的节点顺序;GraphJEPA 把 JEPA 搬到图上但要先跑 METIS 聚类、加双曲位置编码、做层次目标,工程链条又长又重。
核心矛盾:分子的"邻域结构"才是性质的真正载体,而现有 SSL 框架把太多算力花在"如何造视图"上,反而稀释了对邻域本身的建模;同时主流方法只用 2D 或只用 3D,忽略两者互补。
本文目标:(i) 不要负样本和复杂增广;(ii) 把 2D 拓扑 + 多个 3D 构象统一进同一个预测目标;(iii) 在 0.33M 量级的 GEOM 上就能跑得比 UniMol(19M 分子)还好。
切入角度:把分子也当成"图像 patch"——固定半径的 k-EgoNet 就是分子里的 patch,让 context patch 在潜空间预测互补的 target patch,搬 I-JEPA 的范式到图上,但抛掉一切"非必要的复杂"。
核心 idea:用"k-EgoNet 子图 + 其互补子图"作为 context-target 对,在潜空间做 L2 预测,target encoder 走 EMA,2D/3D 模态拼成一个 multimodal token 序列过 Transformer,全程没有负样本、没有位置编码、没有图重建。
方法详解¶
整体框架¶
分子被表示成 2D 图 \(G=(V,E)\),每个原子额外带多个构象的 3D 坐标 \(r_v \in \mathbb{R}^3\)。Pipeline 分四步:(1) 视图构造——采样一个锚点节点 \(v\),取其 k-hop 邻域作为 context 子图,剩下的边作为互补 target 子图(k∈{3,4},边界边专属于一边、边界节点两边都出现,保证边不重叠);(2) 模态编码——2D 走 GINE 输出节点级嵌入 \(\{\mathbf{h}^{2D}_v\}\)(多层平均),3D 走 PaiNN/SchNet 输出每个构象 \(c\) 的 \(\{\mathbf{h}^{3D}_{v,c}\}\);(3) 多模态融合——拼成 \(\mathbf{H}=[\mathbf{h}_{CLS}, \mathbf{h}_{SEP}, \{\mathbf{h}^{2D}_v\}, \mathbf{h}_{SEP}, \{\mathbf{h}^{3D}_{v,c}\}, \mathbf{h}_{SEP}]\) 序列,加可学习的模态嵌入区分 2D/3D,过一个 Transformer;(4) 预测对齐——context 嵌入经 predictor(轻量 Transformer + MLP)输出预测 CLS,target 嵌入直接取 target encoder 的 CLS,最小化二者 L2 距离。Context 和 target 角色在训练中交替,避免方向偏置;同一分子会采多个锚点构造多对子图扩充信号。
关键设计¶
-
k-EgoNet 互补子图作为预测单元:
- 功能:用图上"固定半径的局部块"代替图像里的固定大小 patch,让 JEPA 范式可以直接迁移到分子图,且不依赖任何手工增广或聚类。
- 核心思路:从节点 \(v\) 出发取 k-hop 诱导子图作为 context,剩下的边构成 target;边界边硬性划归一侧、边界节点双方共享,确保两个子图边不相交但联合覆盖全图。一个分子会采 \(n\) 个锚点产生 \(n\) 组互补对,相当于一个无监督的"分子内 mini-batch"。
- 设计动机:分子大小变化剧烈但局部化学环境是有限的,固定半径让每个子图"吃下大致相当的局部信息";互补构造保证 context 和 target 在结构上是天然配对,不需要"什么算正例"的人工定义;和 GraphJEPA 的 METIS 聚类相比,EgoNet 是 \(O(|V|)\) 一遍 BFS 就能算出来,工程上几乎零开销。
-
2D + 多构象 3D 拼成 multimodal token 序列:
- 功能:在一个 Transformer 里同时建模拓扑(共价键)和几何(原子坐标),并显式吃下多个构象,让分子性质对"构象多样性"的依赖被直接编码。
- 核心思路:GINE 给出每个原子的 2D 嵌入;PaiNN/SchNet 对每个构象 \(c\) 给出 3D 嵌入;用
[CLS][SEP] {2D tokens} [SEP] {3D tokens (多构象拼接)} [SEP]这种 BERT 风格序列加可学习模态嵌入,让 self-attention 在模态内和模态间同时聚合;最终拿 \(\mathbf{h}_{CLS}^{out}\) 作为子图的单一表示。 - 设计动机:很多分子性质(如 BBBP、ClinTox 涉及的结合行为)依赖多种高概率构象的加权而不是单一构象(Cao et al. 2022),所以 3D 不能只塞一个;同时不引入位置编码——因为 GINE 和 PaiNN 各自的归纳偏置已经把空间/拓扑信息编进 token 了,再加 PE 反而破坏等变性。
-
EMA target encoder + Transformer predictor 防坍缩:
- 功能:在没有负样本的潜空间预测里防止表征坍缩成常量,同时让 predictor 起到"细化表征"的作用而不是退化成 identity。
- 核心思路:target encoder \(f_{\bar{\theta}}\) 是 context encoder 的指数滑动平均 \(\bar{\theta}^{(t)} = \tau \bar{\theta}^{(t-1)} + (1-\tau)\theta^{(t)}\),初始 \(\tau_0 = 0.995\) 线性升到 \(\tau_T = 1\);损失是 \(\frac{1}{M}\sum_i \sum_j \|\hat{\mathbf{s}}_{y_j} - \mathbf{s}_{y_j}\|^2\)。Predictor 是节点级的 Transformer + MLP,在 pooling 之前就开始预测,保留更多结构信息。
- 设计动机:BYOL/I-JEPA 的经验是"EMA 单靠自己不够、必须配非对称 predictor 才能避免坍缩";消融显示去掉 predictor 后 SSL loss 直接掉到 0(完全坍缩),MLP predictor 能救但 Transformer predictor 在 Kraken 上 MAE 最低,说明节点级再 pooling 比 graph 级直接预测更利于学到细粒度结构。
损失函数 / 训练策略¶
预训练损失即上面 L2;微调有两个 head——(i) C-FREE\(_{\text{MOL}}\) 用整图嵌入接线性层,(ii) C-FREE\(_{\text{SUB}}\) 取多个子图嵌入再用 DeepSets 聚合。理论上 C-FREE\(_{\text{SUB}}\) + DeepSets 等价于 ESAN,因此严格强于 1-WL(论文 Lemma 1)。预训练在 GEOM 的 330K 分子上跑,2D-only backbone 4M 参数,多模态 backbone 9.1M 参数;微调时若构象缺失就 RDKit 现生成 3 个补上。
实验关键数据¶
主实验¶
MoleculeNet 8 任务,frozen backbone + 线性探测,ROC-AUC ↑
| 设置 | 类别 | 代表方法 | Avg |
|---|---|---|---|
| 2D 对比 | CL | GraphCL | 65.04 |
| 2D 非对比 | Non-CL | ContextPred | 60.36 |
| 本文 2D-MOL | Non-CL | C-FREE\(_{\text{2D-MOL}}\) | 66.63 |
| 本文 2D-SUB | Non-CL | C-FREE\(_{\text{2D-SUB}}\) | 67.27 |
| 本文 MM-MOL | Multi | C-FREE\(_{\text{MM-MOL}}\) | 71.07 |
| 本文 MM-SUB | Multi | C-FREE\(_{\text{MM-SUB}}\) | 70.92 |
MM-MOL 在 8 个任务中拿下 6 个 first/second;即便只用 2D 也已经超过所有 2D 基线平均值。
MoleculeNet 全微调(与 19M+ 分子预训练的多模态大模型对比)
| 方法 | 预训练规模 | MoleculeNet Avg ROC-AUC ↑ |
|---|---|---|
| MoleBlend | PCQM4Mv2 (3M) | 76.16 |
| GEM | ZINC-20M | 78.11 |
| UniMol | 19M 分子 / 209M 构象 | 78.56 |
| C-FREE\(_{\text{PaiNN-3C}}\) | GEOM 0.33M | 79.81 |
用 1/60 的预训练数据反超 UniMol 1 个点,并在 BBBP、Tox21、ToxCast、HIV 上取得最佳。
消融实验¶
(a) 模态消融(Kraken, MAE ↓,FFT = fine-tune from pretrain,RND = 随机初始化)
| 模态 | 初始化 | B5 | L | BurB5 | BurL |
|---|---|---|---|---|---|
| 2D | RND | 0.297 | 0.396 | 0.205 | 0.152 |
| 2D | FFT | 0.276 | 0.340 | 0.176 | 0.146 |
| 3D | FFT | 0.194 | 0.329 | 0.134 | 0.131 |
| MM | FFT | 0.193 | 0.306 | 0.134 | 0.126 |
(b) Predictor / EMA / k 消融总结
| 配置 | 关键指标 | 说明 |
|---|---|---|
| 完整模型(Transformer predictor + EMA τ₀=0.995 + k∈{3,4}) | Kraken MAE 最低 | baseline |
| w/o predictor | SSL loss → 0,下游 MAE 最差 | 完全坍缩,证明 EMA 单独不够 |
| MLP predictor | 介于二者之间 | predictor 容量也重要 |
| τ₀=1.0(无 EMA 衰减) | Kraken Avg 0.502,劣于 RND (0.496) | 不衰减 = 无 momentum teacher,学不到东西 |
| τ₀=0.5(更激进) | Kraken Avg 0.428(最佳) | 论文选 0.995 是出于稳定性折中 |
| k=1(仅一跳邻域) | 与 RND 持平 | 太局部,结构信号不足 |
| k=5 | 最佳 | context 和 target 大小相当时表征最丰富 |
(c) Drugs-75K 标签效率(1% 标签下 IP/EA/χ 的 MAE ↓)
| 数据量 | RND | FFT | 相对提升 |
|---|---|---|---|
| 1% IP | 0.638 | 0.608 | -4.7% |
| 1% EA | 0.613 | 0.583 | -4.9% |
| 1% χ | 0.334 | 0.317 | -5.1% |
| 100% IP | 0.419 | 0.419 | 持平 |
低标签场景预训练优势明显,全量数据下打平——验证 SSL 的核心价值在 label-efficient 区。
关键发现¶
- 3D 比 2D 重要:模态消融显示 3D-only 几乎追上多模态,2D-only 显著落后;分子性质本质是几何敏感的,几何信息一进来就把表征拉满。
- predictor 是防坍缩的真正功臣:去掉后 loss 直接归零,BYOL 系列里"EMA + asymmetric predictor"是缺一不可的组合,并非单 EMA 就够。
- 小数据 + 强归纳偏置可以打败 60× 大数据:0.33M GEOM 训出来的 C-FREE 超过 19M UniMol,说明"构象多样性 + 子图预测"比"单纯堆数据"的样本效率更高。
- k 选择有最优解:k=1 等同于随机初始化(局部信息太弱),k=5 最佳(context/target 规模匹配让预测任务难度最适中),印证 JEPA"目标既不能太琐碎也不能太抽象"的设计哲学。
- SUB head 只在 2D 场景必要:3D 信息已经够丰富时 DeepSets 聚合的增益几乎被吃掉,但收敛更快,说明对齐预训练-微调几何形式仍有训练效率收益。
亮点与洞察¶
- JEPA-on-graph 的"最小可用"实现:与 GraphJEPA 相比砍掉了 METIS 聚类、双曲位置编码、层次目标三大组件,证明这些"为图特地加的复杂结构"对 JEPA 并不是必需的,是一个很好的"减法式研究"案例。
- 构象作为天然数据增广:传统 contrastive 要人工造正例对手性异构无能为力,而 C-FREE 直接把"同一分子的多个构象"喂进 3D encoder,让构象多样性变成预训练信号的一部分而不是噪声——这个思路可以反过来启发蛋白质/材料 SSL。
- 多模态 Token 化的统一格式:
[CLS][SEP] 2D [SEP] 3D-conf1 ... 3D-confN [SEP]这种序列结构非常像 BERT-NSP,几乎是即插即用的模板,把任意数量的几何视图塞进同一个 Transformer 而不需要改架构。 - 理论 + 实验联动:Lemma 1 给出"C-FREE\(_{\text{SUB}}\) 等价 ESAN,严格强于 1-WL"的形式化保证,再用 EXP 数据集做经验验证,这种"理论上界 + 经验下界"双侧夹击的论证风格值得学习。
局限与展望¶
- 构象生成是潜在瓶颈:SIDER 上表现不佳的直接原因是大分子构象生成失败用了 dummy 坐标,说明方法对 RDKit / GEOM 提供构象的质量有依赖;未来可以接更强的 diffusion-based 构象生成器(如 Torsional Diffusion)。
- 预训练数据规模未充分扩展:作者只在 0.33M GEOM 上证明 sample efficiency,但没有在 3M+ PCQM4Mv2 或 20M+ ZINC 上跑 scaling law,无法回答"如果给同等数据能不能再涨一截"。
- 缺乏 SMILES / 文本模态:作者主动放弃 1D 表示(理由在 A.4),但近年 MolT5 / ChemBERTa 证明文本模态对低数据场景特别有用,引入文本可能进一步提升。
- EgoNet 半径需手工选:虽然 ablation 显示 k=5 最佳,但作者保守用 k∈{3,4},未来可以让 k 自适应于分子大小或者做 multi-scale ego-net 拼接。
- 理论部分主要是承接性的:Lemma 1 本质上是 ESAN 表达力的复用,C-FREE 自己引入的"预测目标"对表达力的影响没有形式化分析。
相关工作与启发¶
- vs GraphJEPA (Skenderi 2025):同样把 JEPA 搬到图,但 GraphJEPA 走 METIS 聚类 + 双曲位置编码 + 层次目标三件套,C-FREE 全砍掉只保留"互补 EgoNet + EMA + predictor";ZINC 上 C-FREE 超过 GraphJEPA,证明"复杂≠必要"。
- vs UniMol / GEM / MoleBlend(多模态生成式):他们要 mask 重建或做跨模态对齐损失,C-FREE 只做潜空间 L2 预测;用 1/60 数据反超 UniMol,说明在分子里"预测式 ≥ 生成式"。
- vs GraphMVP / 3D InfoMax(2D-3D 对比对齐):他们靠对比损失对齐 2D/3D 视图,但负样本采样在分子里很微妙(手性异构);C-FREE 直接把多构象拼进序列由 Transformer 自己学跨模态依赖,回避了"什么算负"的问题。
- vs ESAN / Bevilacqua 2022:ESAN 是监督学习里"图分子图作子图"的代表,C-FREE 把它的子图分解思想扩展到自监督,并通过 DeepSets head 在微调阶段复现 ESAN 的表达力上界——本质是"ESAN 的 SSL 化"。
- vs I-JEPA / BYOL(视觉 JEPA):直接借了 EMA + predictor + 潜空间 L2 三件套,但把"图像 patch"换成"k-EgoNet",把"位置编码"丢掉(GNN 编码器已经包含拓扑),是把 JEPA 范式做最小化迁移的一个范本。
评分¶
- 新颖性: ⭐⭐⭐⭐ 把 JEPA 搬到分子图本身不算首创(GraphJEPA 已经做了),但"砍掉一切非必要复杂"+ 多构象统一 token 化是清晰的工程贡献。
- 实验充分度: ⭐⭐⭐⭐⭐ MoleculeNet(frozen + FFT)+ QM9 + Kraken + ZINC + Drugs-75K + 模态/predictor/EMA/k 四向消融 + 理论 lemma,覆盖度非常完整。
- 写作质量: ⭐⭐⭐⭐ 动机链条清晰,方法图(Figure 1)一图说清,但有些段落(如 fine-tuning head 的两种变体)需要反复读才能区分 MOL 和 SUB。
- 价值: ⭐⭐⭐⭐⭐ 用 0.33M 数据反超 19M 的 UniMol,对分子 SSL 社区"是否必须堆数据"的迷思是一记有力反驳,预训练 backbone 直接可用。