13 个蛋白语言模型实测:最后一层 embedding 只在 18% 组合最优

Task- and dataset-specific information in protein language models

Roman Joeres, Ilya Senatorov, Anastasia Kolchina, Dietrich Klakow, Olga V. Kalinina

cs.LG, q-bio.BM

2026-08-12

13 个蛋白语言模型 × 15 个任务逐层实测:最后一层 embedding 仅 17.9% 组合最优;选哪层看数据构成,DMS 数据浅层最好。

这篇在解决什么

蛋白语言模型(PLM)把 NLP 的训练范式搬到了氨基酸序列上,业界惯例是取模型最后一层的输出当 embedding,接一个预测头去下游任务里用:酶活性、结合位点、亚细胞定位。这个惯例继承自端到端训练的视觉模型,ResNet-50 的每一层都在为最终分类服务,层越深线性可分性越好。但 PLM 是自监督预训练出来的,目标是猜被遮住的氨基酸,与下游任务并不对齐,「最后一层最有信息」没有必然性。此前只有针对单个模型的零散观察,缺一份跨模型、跨任务的系统答案。这篇把 13 个 PLM(ESM-2 五档、ESMC 两档、ProtT5、ProstT5、ProGen2 三档、ProtGPT2,参数最大 3B)放到 11 个数据集的 15 个下游任务上,逐层训练探针,配三个隐空间几何指标,给出第一份全景图。

方法

核心工具是 linear probe(线性探针):冻结 PLM,对每一层的输出单独训一个线性回归或分类头,哪层探针成绩高,就认为任务相关信息富集在哪层。蛋白级任务先对序列做 mean pooling,残基级任务(二级结构、配体结合)逐位取向量。同时算三个隐空间指标:固有维度(TwoNN 估计)、相邻层的邻域重合度、前 10 个主成分解释的方差,用来刻画各层隐空间的复杂度和层间变化。

两个补充实验用来定位原因。一是在预训练目标本身上逐层评估:给 ESM-2 算 MLM loss、给 ProGen2 算 next-token loss。二是把 ESM-2 150M 在 6 个下游任务上微调后再逐层探针,看层间曲线是否变单调、MLM 性能付出了多少代价。

结果

最后一层的 embeddings 只在 17.92% 的模型×任务组合里是最佳。蛋白级任务普遍在前几层急升,于 10%90% 深度区间见顶,最深层回落;残基级任务一路单调上升。

在预训练目标本身上,两个家族都随层数几乎单调改善;微调之后,下游任务的层曲线也变成单调。非单调是「先预训练、再单独训预测头」这种两段式训练与目标错位的产物,不是模型缺陷。

决定哪层最好的主要是数据集,不是任务。同一数据集的两个任务层曲线几乎重合:DeepLoc2.0 二分类对十分类的曲线相关性 0.978,SCOPe40 二级结构三分类对八分类 0.996,荧光数据的回归对二分类 0.681。

数据集类型代表平均序列同一性最佳层位置
DMS 单蛋白变体库荧光(54,024 个 GFP 变体)、GB1(149,361 个变体)88%97%浅层见顶,深层显著回落
多元天然蛋白DeepLoc2.0、DeepSol、SCOPe4013%17%随深度稳定上升,仅最深 5% 回落

浅层抓局部细节与突变上下文,深层抓区分不同蛋白的一般规则,与文本 LLM「浅层句法、深层语义」的分层一致。热图里 ESMC 两档模型的个别任务上,最佳层比最后一层高出 165%170%;荧光回归任务各模型最佳层成绩从 0.58(ESM-2 8M)到 0.74(ProGen2-large)。

人工设计蛋白上 PLM 明显失效:Rocklin 稳定性数据里 Rosetta 设计的蛋白远差于 DMS 与天然部分;90 条 ProGen 生成的溶菌酶上,活性预测 Spearman 只有约 0.2,天然序列约 0.6,而人工序列的活性分布范围其实更宽。

实用结论:只用 15%20% 训练数据就足以找到达到最佳性能 95% 以上的层,且模型越大对稀疏数据越鲁棒。

为什么重要

每天用 ESM 出特征的人可以直接改代码:别默认取最后一层,花一小部分标签把各层扫一遍,多数任务能白捡性能。更关键的一课在蛋白质设计:PLM 学到的是自然演化序列空间的结构,不是「蛋白功能」本身;拿它给全新设计的人工蛋白排序稳定性或活性基本不可靠,这一点对 Rosetta 物理设计和 PLM 生成的设计同样成立。评审「AI 设计蛋白 + PLM 打分」的工作流时,这条应该记在心上。

局限与存疑

作者自述的边界:受存储与算力限制只测到 3B 参数,仅蛋白 embeddings 就占了约 10TB,残基级实验跳过了 ESM-2 3B、ProGen2-large 和 ProtGPT2;ProtGPT2 用 BPE 分词,一个 token 对应多个氨基酸,残基级任务根本做不了。人工蛋白的结论只来自两个案例(稳定性、溶菌酶活性),作者也只谨慎地推广。此外全文用线性与 kNN 探针衡量信息量,测的是线性可分性这个下界,深层可能藏着探针测不出的信息;「最佳层」的认定依赖有标签数据,纯无标签场景没有给出方案。

术语

原文与代码

社区讨论

相关论文

全部论文解读