机器学习预测先固定标签和划分
先问模型预测的是哪个参数,再评价它在什么数据上有效。
读图时保留这项条件:预测位移好并不自动表示完整谱模拟好,模拟域成绩也不等于实验域成绩。
8.10.1 把结构变成模型的输入
谱参数预测从给定结构出发,计算各原子的位移或原子对的耦合。机器学习把许多结构与参数的对应关系用于训练,学到一个近似映射。它的输入是否包括构象、溶剂、电荷与温度,决定模型有机会辨认哪些影响。仅给二维连接图的模型可以学习数据集中的平均规律,却没有直接收到本样品溶液中的全部环境信息。
展开说明与推导
分子图以原子为节点、键为边。节点特征可包含元素、形式电荷、杂化与所连氢数;边特征可包含键级与立体标记。芳香表示、互变异构形式和盐的处理也属于输入约定。相同分子若被表示成不同质子化状态,模型看到的邻域已改变,不能把两个输出差异只解释为算法波动。
图神经网络通过沿边传递信息更新节点表示,再用读出函数预测参数。节点编号只是存储顺序:重新编号后,原子位移应随对应原子一起重新排列,而分子整体性质应保持相同。若输入或读出无意中依赖编号,预测就会随文件排序改变。需要同时保存结构、原子映射与输出,才能把结果落回实验峰。
氢可作为显式节点,也可由重原子特征代表;两种方案对非等价亚甲基氢的处理不同。把一个碳上的所有氢合并,不能自然得到其两个非对映异位氢的独立位移。三维坐标或立体信息能够补充区分,但仍须核对模型究竟预测单个氢、等价氢组,还是某种平均标签。
图表示是样品信息的编码。没有输入模型的条件,只能通过训练数据中的统计关联间接体现;这种关联不等于已测得本样品的条件。
8.10.2 信息经过几步到达目标原子
用一个可逐步复算的规则说明信息传播。给碳初值零、氧初值一,每轮把节点当前值加上邻居当前值的平均。所有节点同步更新,即本轮只能读取上一轮结果。这不是训练好的网络,也没有 ppm 含义;它只展示沿键传播的距离限制。
展开说明与推导
乙醇的重原子链按末端碳开始写成 C₀—C₁—O₂。初值为零、零、一;第一轮变成零、二分之一、一,第二轮变成二分之一、一、二分之三。末端碳在第一轮还未接收到氧的影响,第二轮通过相邻碳得到二分之一。这里的平均包括节点的全部邻居,因此中间碳与末端碳的更新不同。
正丙醇写成 C₀—C₁—C₂—O₃。第一轮为零、零、二分之一、一,第二轮为零、四分之一、一、二分之三。两个分子的末端碳在一轮后相同,在两轮后才不同。本书用同步更新脚本复算这些值,并检查乙醇重新编号后的逐节点对应结果。若直接在同一数组内顺序修改,后面的节点可能提前读到新值,那就不再是公式规定的模型。
展开说明与推导
实际网络会用可学习函数组合节点、边与空间信息,并可能采用更复杂的读出。增加层数扩大可接收的图邻域,但不自动恢复缺失构象,也不保证深层表示更准确。比较模型时需要看独立测试结果和输入范围,不能仅按层数或网络名称判断能力。
8.10.3 位移与耦合需要不同标签
位移是原子或等价组的标签,J 是原子对的标签。化学图中的边表示直接成键,而可观测的两键、三键或更长程耦合涉及并不直接成键的核。因此,模型可以沿化学键传播信息,再对指定核对读出 J;不能把分子图中不存在直接边理解为该核对没有耦合。
展开说明与推导
J 的符号、单位和可见性必须区分。训练标签若只有耦合大小,不能由输出自行恢复符号;峰形未显现某个 J,也不能将其标签设成零。位移通常以 ppm 数值记录,耦合以 Hz 记录,二者的损失尺度不同。原子对顺序还应满足交换两个核后同一个标量 J 保持相同。
实验标签来自测量、指认和处理,会受参考、条件、重叠与误指认影响。量子化学标签来自规定计算层次,适合建立大规模一致的训练集,却带有该理论流程的系统误差。模型在计算标签上准确,直接说明它逼近那套计算结果;能否同样准确描述实验,需要独立实验检验。
相同连接结构可能有多个构象。把某个静态构象的参数与实验快速交换平均值配对,会让标签与输入不一致。若用构象集合,应记录各构象的来源和权重;若使用单一几何或纯二维图,应说明这种近似。通过训练平均吸收构象差异的模型,也可能在受限或异常构象上失效。
每个数据集至少区分核种、单核或核对、单位、参考方式、实验或计算来源、原子映射与缺失值。未测到的数据保留缺失状态,不能用零补齐后当成真实监督标签。
8.10.4 阅读已发表模型的能力范围
Jonas 与 Kuhn 的工作用图卷积预测 NMR 位移并给出不确定度估计,展示了结构到逐原子参数的学习框架。[1] 评估时仍要核对所用核种与分子范围,不能从位移预测扩展出它未训练的 J 或未知结构生成能力。论文的测试误差是特定数据划分下的结果。
展开说明与推导
CASCADE 使用三维图神经网络预测氢与碳位移,其研究分别涉及计算数据与实验数据的学习任务。[2] 三维表示让模型利用空间环境,但坐标来源本身也需要审核。名称中的计算精度描述对应其比较对象;它不能替代本样品的构象采样与溶液条件验证。
FullSSPrUCe 将位移、耦合及不确定度纳入完整自旋体系参数预测,使用构象相关信息和信息传递模型。[3] 其耦合学习主要利用计算标签,并另作实验比较。由预测参数合成的谱仍应检查等价组、场强与线宽;一个看起来像实验的模拟图不单独证明每个耦合参数都被实验确定。
NMRNet 提出位移预测的统一基准与框架,采用结构预训练再进行相关任务训练,研究包含不同相态的数据。[4] 液体与固体标签的物理平均和表示不同,读者应依据具体任务理解输出。该工作不能因为采用统一框架就被转述为已支持所有核种、所有 J 或仅凭氢谱解决未知结构。
公开的耦合预测竞赛研究则让多种方法在规定计算数据与评价流程中比较。[5] 排名能揭示方法在共同任务上的表现,但训练分子、理论标签和评分函数共同限定了结论。将某项比赛的分数直接用作新实验样品的误差界限,缺少从计算任务到实验应用的验证步骤。
8.10.5 数据划分与不确定度
若同一分子的部分原子进入训练、其他原子进入测试,模型可能利用已经见过的分子环境获得很低误差。以整分子划分能减少这种泄漏;更严格的问题还可能需要按骨架、来源或时间划分。不同划分回答不同泛化问题,测试集名称相同也不表示评价难度相同。
展开说明与推导
重复记录、同一谱的重新处理与不同条件下的同一化合物,也需要按任务分组。参考修正、特征选择与误差校准应在训练部分完成,再应用于留出的数据。先看全体数据决定修正办法,再报告留出部分的误差,会让测试信息进入开发过程。
总体平均误差可能遮住少数环境的较大偏差。除 MAE,还应按核种、官能团、电荷、分子大小和是否超出训练范围查看误差与异常点。一个模型对大量普通烷基氢表现良好,并不使少量交换性氢或特殊芳香环境的预测自动可靠。
不确定度可以反映数据噪声、输入不足或模型对陌生环境的不确定。预测区间需要校准:在独立验证集上检查所声称的覆盖率。若十个教学样本的“95% 区间”只有九个包含真值,观察覆盖率是 90%;这个小样本不足以精确判断总体覆盖率,却提示必须报告样本数量,不能只写区间名称。
展开说明与推导
多个模型意见一致也可能来自共同的训练偏差。对训练集外的新元素、电荷或结构,模型间方差小不必然代表实验误差小。应设置适用范围检查,并把异常输入交给进一步测量或计算。区间作为后续候选排序的依据时,还需考虑多个原子误差之间的相关性。
计算标签测试分数、实验标签测试分数和未知样品的结构判断是三个评价对象。只有在输入、条件、划分与目标一致并有检验时,数值才可直接比较。
8.10.6 将预测接入可复查的解谱流程
应用时先固定输入结构和状态,保存模型版本、权重标识、预处理、构象与原子映射。再将逐核输出与实验可指认位置对照,列出残差与预测区间。不能先按预测重命名所有实验峰,再把这套匹配的一致性当成独立验证;有歧义的峰应保留备选映射。
展开说明与推导
模型可帮助选择候选与安排后续实验。例如两个候选只在某个羟基附近环境预测差异较大,就可以优先检验相邻的可稳定指认信号,而不是依赖交换性氢单一位置。决定实验的依据包括预测差异、误差尺度与信号可测性,三个因素缺一都可能选出没有辨别力的测量。
最终记录应明确哪些参数来自模型,哪些来自实验拟合,哪些因重叠只能给区间。本节复算了教学信息流,没有下载权重或运行所列研究模型。软件发布、论文报告和本书实际复现分别标注;这样后续从谱反推结构时,预测能够成为有边界的证据,而不会悄然变成预先固定的答案。
8.10.7 习题与解答
习题8.10-1 正丙醇末端碳何时收到氧的信息?
沿本节规则,氧初值为一,碳为零。计算三轮后 C₀ 的值,并解释两轮后为何还是零。
解答第二轮为 [0, 0.25, 1, 1.5],第三轮 C₀ 为 0+0.25=0.25。氧与 C₀ 相距三条边,同步传递每轮最多沿一条边;第二轮信息尚未到达 C₀。该值没有位移单位。
习题8.10-2 原子级随机拆分有什么问题?
一分子的十个氢有八个用于训练、两个用于测试。模型测试误差很小,能否据此说明能预测陌生分子?
解答不能直接说明。测试氢所在分子的结构与其他标签已部分进入训练,存在分子信息泄漏。应按整分子留出,再按实际任务考虑骨架或来源分组,并在开发过程中不使用测试标签校准。原拆分只能评价已部分见过分子的补全任务。
习题8.10-3 预测区间与陌生结构
模型给十个样本各自标称 95% 区间,九个覆盖实验值;对训练集外盐类,五个模型又给出很一致的预测。分别能得出什么结论?
解答十个样本观察覆盖率为 9/10=90%,样本少,不能精确确定总体覆盖率,需更大独立验证。盐类的一致预测只表明这些模型输出接近;共同训练偏差、未表示的电荷或溶剂效应可能使它们一起错误,需适用范围与实验检验。
8.10.8 术语
- 分子图
- 用节点与边表示原子及键的结构编码。
- 信息传递
- 按图连接更新节点表示的计算过程。
- 读出函数
- 从内部表示生成目标参数的函数。
- 等变性
- 节点重编号时逐节点输出随对应关系重排。
- 监督标签
- 训练时作为目标的实验或计算数值。
- 核对预测
- 为两个核之间的参数建立输出。
- 数据泄漏
- 测试信息进入训练或模型开发过程。
- 覆盖率
- 验证样本中预测区间包含真值的比例。
- 适用范围
- 模型经验证可支持的输入与任务范围。
8.10.9 参考文献
- Jonas E, Kuhn S. Rapid prediction of NMR spectral properties with quantified uncertainty. J Cheminform, 2019, 11:50. 原始研究。
- Guan Y, Sowndarya S V S, Gallegos L C, St. John P C, Paton R S. Real-time prediction of ¹H and ¹³C chemical shifts with DFT accuracy using a 3D graph neural network. Chem Sci, 2021, 12:12012–12026. CASCADE。
- Williams J, Jonas E. Rapid prediction of full spin systems using uncertainty-aware machine learning. Chem Sci, 2023, 14:10902–10913. FullSSPrUCe。
- Xu F, Guo W, Wang F, et al. Toward a unified benchmark and framework for NMR chemical shift prediction. Nat Comput Sci, 2025, 5:292–300. NMRNet;作者代码。
- Bratholm L A, Gerrard W, Anderson B, et al. A community-powered search of machine learning strategy space to find NMR property prediction models. PLoS ONE, 2021, 16:e0253612. 耦合预测比较研究。