1. 文献信息

- 题目:Best Practices for Machine Learning-Assisted Protein Engineering
- 期刊:Journal of Chemical Information and Modeling(2025);DOI:10.1021/acs.jcim.5c01983
- 预印本:arXiv:2507.07547
- 类型:Perspective(观点/最佳实践指南),聚焦监督学习(supervised learning)
- 配套资源:蛋白质工程代码中心(Protein Engineering Code Center,PECC)— github.com/davari-group/Protein_Engineering_Code_Center
2. 文章定位与核心主张
2.1 背景问题
蛋白质工程(protein engineering,PE)主流路径为定向进化(directed evolution,DE)与理性设计(rational design)。前者依赖高通量筛选、耗时耗资源;后者依赖结构与机制知识,而动力学与变构信息往往不全。机器学习(machine learning,ML)可在序列—功能景观上建立数据驱动映射,缩小实验搜索空间。
但领域内常见隐患包括:
- 将 ML 开发视为「一次性脚本」而非软件工程,缺乏版本控制、测试与文档;
- 数据预处理、划分与评估不统一,结果难以复现与横向比较;
- 在数据稀缺、标签不平衡、上位性(epistasis)显著的酶工程场景中过拟合与数据泄漏(data leakage)高发;
- 追逐新模型而忽视已有生物物理工具与成熟 ML 基线的性能对比。

图 2 将上述隐患归纳为四类:工程化缺失(脚本化交付)、流程碎片化(预处理/划分/指标不一致)、统计失效(小样本过拟合与近缘变体泄漏)、基线缺失(跳过生物物理与简单 ML 对照)。后文六步路线图即针对这些断点建立规范工作流。
3. 总体流程:六步路线图
更好的建模实践 → 更可靠的蛋白工程决策;监督 ML 项目应遵循从需求分析到可部署交付的完整工程化流程,而非仅训练一个黑箱模型。所以文章提出了一个机器学习引导蛋白质工程路线图。

但是最重要的一点,是在项目开始前,需要看现有的模型和工具能否进行相关的辅助预测,并评估现有工具性能。而不应该出于自己开发方法的初衷,忽略掉一些已有的成熟工具/模型,在开发前,需要详细的评估自己进行开发的必要性。所以在文章的5步路线图前面,其实还有一个隐藏的前置步骤。
| 步骤 | 目标 | 关键产出 |
|---|---|---|
| 0. 立项与需求 | 判断是否值得新建 ML 工具 | 需求文档、基线对比结论 |
| 1. 数据 | 高质量标注变体库 | 清洗后的训练/验证/测试集 |
| 2. 表征 | 序列 → 数值张量 | 特征矩阵或嵌入向量 |
| 3. 训练 | 蛋白特异性预测模型 | 调优后的模型 + 超参记录 |
| 4. 测试 | 泛化能力与可解释性 | 指标报告 + 湿实验验证 |
| 5. 部署 | 可复现、可复用 | 代码、模型、数据、文档 |
接下来我们也将跟着文章从这6个方向进行学习。
4. 步骤 0:立项评估(原文 §Guidelines 前置)
在写代码之前完成三项判断:
- 现有工具是否足够:生物物理方法(对接、MD、能量函数)与已发表 ML 模型(零样本 PLM、任务专用回归器)的性能是否已满足需求?
- 收益是否值得投入:新工具开发成本 vs 预期实验节省;避免「为 ML 而 ML」。
- 预期是否现实:ML 不是万能药;做需求分析(requirements analysis),明确输入、输出、精度下限与可解释性要求。
决策因子:数据可得性、可解释性需求、算力预算、目标性质复杂度(单点活性 vs 多性质协同优化)。
段末注释:MD 为分子动力学模拟;PLM 为蛋白质语言模型,见系列 酶改造-05.ESM框架详解。
5. 步骤 1:数据收集与准备
数据质量决定监督模型上限(garbage in, garbage out)。
5.1 构建实验标注变体库(§2.1)
数据来源:
- 公开库与基准集:文献整理的变体—活性数据、ProteinGym 等;
- 项目自有实验:针对目标蛋白的组合文库(combinatorial library)与测定。
建库原则:
| 原则 | 说明 |
|---|---|
| 区域聚焦 | 优先活性位点、变构位点等功能相关区,而非全序列随机突变 |
| 文库信息化设计 | 结合结构知识、零样本模型(ESM、RoseTTAFold 等)提名初始变体 |
| 条件一致 | 测定条件贴近实际应用场景(pH、温度、底物),降低噪声 |
| 测定标准化 | 统一、经验证的活性/稳定性测定;标签定义跨批次一致 |
| 生物学重复 | 估计实验变异、识别离群点、确认可重复性 |
| 元数据记录 | 推荐 EnzymeML 等标准记录实验条件与结果 |
5.2 清洗、归一化与标签变换(§2.2)
- 一致性检查:z-score、IQR(四分位距)或箱线图识别离群点;区分实验错误 vs 真实生物学变异后再决定修正/删除。
- 相对野生型归一化:标签常以野生型(wild type,WT)为参照。
- 对数变换(推荐用于酶学数据):
$$
y_{\log} = \log_{10}\left(\frac{\mathrm{activity}{\mathrm{variant}}}{\mathrm{activity}{\mathrm{WT}}}\right)
$$
- $y_{\log} > 0$:相对 WT 提升;
- $y_{\log} < 0$:功能损失;
- $y_{\log} = 0$:无变化。
对数变换压缩动态范围、缓解偏态,便于回归建模。
5.3 探索性数据分析(EDA,§2.3)
- 直方图、箱线图、散点图:标签分布、有益/有害突变比例;
- 描述统计:均值、标准差、极值;
- 快速衍生特征:序列保守性、距活性位点距离、二级结构等;
- 关键判断:训练集是否覆盖部署场景?有益变体是否极度稀少(类别不平衡)?
蛋白序列空间中绝大多数突变导致功能丧失;若训练集未充分表征「有益变体」,模型可能准确率高但生物学无意义。
5.4 数据划分(§2.4)— 最易出错环节
禁止:对变体序列完全随机划分(易导致数据泄漏— 近缘变体同时出现在训练集与测试集)。
推荐策略(按优先级组合):
| 策略 | 适用场景 |
|---|---|
| 进化聚类划分 | 同簇变体不跨 train/test;测试集为「进化上新颖」序列 |
| 进化距离划分 | 近缘留在训练集,远缘进测试集,评估跨家族泛化 |
| 上位性保持 | 存在 epistasis 的突变组合保持在同一子集 |
| 结构/结构域划分 | 不同结构域在子集间均衡代表 |
| 分层抽样 | 有益/有害/中性标签比例在各子集一致 |
| 时间划分 | 多轮定向进化:早期轮次训练、后期轮次测试,模拟真实迭代 |
| 默认比例 | 训练:验证:测试 ≈ 70:10:20(可按数据量调整) |
小数据集(酶工程常见 <1000 条):
- 验证集可用 k 折交叉验证(常用 10-fold)替代固定验证集;
- 仍须保留独立测试集,k-fold 不能替代 holdout test;
- k-fold 降低划分偶然性,利于超参调优,但最终性能以从未参与开发的测试集为准。
6. 步骤 2:数值表征策略
原始氨基酸序列须转为 ML 可处理的数值表示(原文 Fig.2)。
6.1 三类表征路径
| 类型 | 方法示例 | 特点 |
|---|---|---|
| 特征工程 | 保守性、理化性质、位点距离、二级结构 | 可解释性强,依赖领域知识 |
| 氨基酸编码 | One-hot、ordinal、二肽频率、AAIndex 理化向量 | 简单基线,维度可控 |
| 预训练嵌入 | ESM、ProtTrans、bioembeddings | 捕获进化与结构信息,适合小样本迁移 |
结构表征(若有 3D 信息):坐标、接触图(contact map)、图神经网络(graph neural network,GNN)等。
6.2 表征选择要点
- 特征须在变体间有差异:勿将野生型结构特征简单拼接到每条变体向量——该部分对所有变体恒定,无预测信息。
- 用 PCA(专篇)、t-SNE(专篇)、UMAP(专篇)可视化有益/有害突变聚类,预判表征质量;详见特征工程系列 降维概述;
- 计算特征与目标变量的相关性;
- 完整记录嵌入方法与参数,保证可复现;
- 优先使用成熟流水线(bioembeddings、iFeature 等)减少实现错误。
6.3 降维(§3.2)
维度灾难:特征过多而样本过少 → 过拟合、训练成本上升。
降维手段:
- 领域知识筛选(保留活性/稳定性相关特征);
- 相关性分析剔除冗余特征;
- PSSM、HMM 压缩序列信息;
- 随机森林/GBM 特征重要性、Lasso 稀疏化;
- PCA(专篇)、UMAP(专篇)(牺牲可解释性时;t-SNE 见专篇)。
注意:小数据集上盲目降维可能放大噪声;CNN 等架构有时需要完整序列输入。降维应在验证集上监控是否损失预测力。
7. 步骤 3:模型选择、训练与优化
7.1 算法选型决策树(原文 Fig.4)
机器学习的算法选择,会直接影响模型的性能表现,所以前期的模型选择也非常重要,文章也提出一个基于数据量和是否需要可解释的模型选择树。
1 | 标签数据量? |
实践建议:
- 从简单基线开始(线性回归、Ridge)建立性能下限;
- 蛋白数据常呈非线性,树模型(随机森林、XGBoost)往往是强基线;
- 深度学习需大量数据;即使可行,也应与传统方法对照;
- 需准确 + 可解释:复杂模型预测 + 简单代理模型(surrogate)解释;
- 迭代优化序列空间:贝叶斯优化(Bayesian optimization)适合概率性预测;高斯过程(Gaussian process)在大数据集上计算昂贵($O(n^3)$);
- 集成学习与迁移学习在小样本酶工程中尤为实用。
7.2 训练与超参调优(§4.2)
数据流纪律(原文 Fig.3):
1 | 训练集 → 降维(迭代)→ 验证集选特征 |
- 正则化(L1/L2)、dropout、早停(early stopping)控制过拟合;
- 系统化扫描超参并可视化性能变化;
- 小数据集用 k-fold 嵌套在训练流程内,测试集始终隔离。
8. 步骤 4:性能测试与模型解释
8.1 评估指标
| 类别 | 指标 |
|---|---|
| 相关性 | Pearson、Spearman 相关系数(含置信区间) |
| 误差 | RMSE、MAE |
| 泛化诊断 | 训练/验证误差 vs 测试误差,识别过拟合 |
8.2 统计比较
- 配对 t 检验(交叉验证配对场景);
- McNemar 检验(单次划分分类任务);
- 多模型比较:Holm–Bonferroni、Wilcoxon、Friedman 检验。
8.3 超越准确率
现代评估强调:校准度(calibration)、鲁棒性、简洁性、可解释性。
可解释性工具:特征重要性、SHAP、代理模型等——在酶工程中理解「哪些位点驱动预测」可反哺下一轮突变设计。
8.4 湿实验验证
计算指标达标后,对模型提名的高分变体进行实验验证,是蛋白工程 ML 的最终试金石。
9. 步骤 5:代码质量与部署
9.1 代码工程规范(§6.1)
| 实践 | 工具/方法 |
|---|---|
| 模块化 | 预处理、嵌入、训练、评估分模块 |
| 命名与风格 | 一致命名;pylint、flake8、black |
| 测试 | pytest 单元测试 + 集成测试 |
| 版本控制 | Git 分支管理;DVC/MLflow 追踪数据与模型 |
| 文档 | docstring、README、关键决策注释(写「为什么」而非「做什么」) |
| 环境 | Conda/virtualenv + environment.yml/requirements.txt |
| 实验追踪 | MLflow、TensorBoard |
| 模型持久化 | joblib、h5、pickle + 元数据(训练数据、预处理步骤) |
9.2 部署平台(原文 Fig.5)

| 平台 | 用途 |
|---|---|
| GitHub | 代码、笔记本、协作 |
| Zenodo | 大数据集、模型、永久 DOI |
| Python 包 | 可复用函数/类分发 |
| Hugging Face | 模型托管与推理 API |
| Docker | 环境一致的容器化部署 |
| Web 界面 | 序列输入 → 性质预测的交互工具 |
10. 小结
Herrera-Rocha 等的工作将 ML 辅助蛋白工程从「训练一个模型」提升为可审计的软件工程项目。对聚合酶定向改造而言,最值得内化的三点是:
- 数据划分与标签质量比算法花哨程度更决定成败;
- 从简单模型与公开基线出发,用实验反馈迭代,而非一步到位上大模型;
- 可复现交付(代码 + 数据 + 文档 + 模型)与预测精度同等重要,是学术与工业界采纳的前提。
参考文献
- Herrera-Rocha F. et al. Best Practices for Machine Learning-Assisted Protein Engineering. J. Chem. Inf. Model. 2025, 65, 12655–12667. DOI: 10.1021/acs.jcim.5c01983
- Walsh I. et al. DOME: recommendations for supervised machine learning validation in biology. Nat. Methods 2021, 18, 1122–1144.
- Lauterbach S. et al. EnzymeML: seamless data flow and modeling of enzymatic data. Nat. Methods 2023, 20, 400–402.
- Yang K.K., Wu Z., Arnold F.H. Machine-learning-guided directed evolution for protein engineering. Nat. Methods 2019, 16, 687–694.
- Greener J.G. et al. A guide to machine learning for biologists. Nat. Rev. Mol. Cell Biol. 2022, 23, 40–55.
附表. 实践检查清单(速查)
结合项目我们可以构建一个蛋白相关机器学习的项目时间快检清单。
立项
- 已对比现有生物物理/ML 基线
- 已书面定义输入、输出、最低可接受精度
- 预期收益大于开发成本
数据
- 测定条件与标签定义标准化,有生物学重复
- 标签经 WT 归一化,必要时 log 变换
- EDA 完成,知晓有益变体比例与分布
- 划分避免随机拆分;考虑进化/上位性/时间结构
- 独立测试集从未参与训练与调参
建模
- 建立简单线性/树模型基线
- 表征在变体间有信息量,记录嵌入参数
- 超参在验证集或 k-fold 上调优
- 报告 RMSE/MAE/Spearman 等多指标
交付
- 代码模块化、有测试、有环境文件
- 模型含元数据;实验可追踪(MLflow 等)
- 关键预测经湿实验抽检
- 代码/数据/模型已按受众选择平台发布