

2022 年,ProtGPT2 横空出世的时候,很多人以为蛋白质生成问题被解决了一半。
毕竟 GPT-2 的套路已经在文本领域证明了自己,直接把它搬到蛋白质序列上,用氨基酸字母表当词表,应该顺理成章地跑通。可事情没有那么简单。这类自回归蛋白质语言模型在实际生成时经常陷入一种诡异的状态,生成出来的序列会不断重复同一小段氨基酸,像是复读机卡住了一样,专业说法叫做低复杂度漂移。
更尴尬的是,当学界转向蛋白质结构生成这个更难的任务时,自回归模型几乎彻底缺席了战场。真正打榜的是 RFdiffusion、Chroma、FoldFlow 这些扩散模型和流匹配模型,它们用一种完全不同的、非从左到右的方式生成结构,效果远超自回归方法。
这就形成了一个很奇怪的局面。
自回归 Transformer 在文本、图像、音频、视频领域几乎是通杀的存在,GPT-4o、视觉自回归模型、语音合成,清一色都是这套下一词元预测的班底在打天下。唯独到了蛋白质这里,这套最成功的生成范式反而显得水土不服。
这篇来自密苏里大学和南加州大学团队的论文,想明白了问题到底出在哪。他们认为问题不在于自回归这个框架本身,而在于喂给模型的目标到底是什么样的语言。
氨基酸字母表的天花板
要理解这篇论文的核心洞察,得先搞清楚氨基酸序列作为语言模型目标到底有什么先天缺陷。
一个蛋白质序列就是一串氨基酸字母,一共 20 种标准氨基酸,外加一个未知符号 X。这个词表小得可怜,而且每个字母只代表残基的化学身份,不携带任何上下文信息。字母 A 不管出现在螺旋结构的中间还是转角处,它在词表里永远是同一个 token。
这就触碰到了一个近两年语言模型圈子里越来越被重视的规律:词表规模和模型表现是正相关的。
Scaling law:描述模型性能随着参数量、数据量、计算量等因素变化的规律,通常呈现幂律关系,指数越大说明同样的计算投入能换来越快的性能提升。
已经有研究专门论证过,更大的语言模型需要配上更大的词表才能发挥出应有的水平。氨基酸词表卡在 21 个符号上,相当于给一个本该说万种词汇的人只留了二十几个音节,表达力天然受限。
但光是词表小还不是全部问题。论文作者进一步指出,一个好的生成目标语言还需要满足两个条件,一是词元要承载高层语义而不只是局部符号,二是这个词元序列本身要对因果生成器友好,也就是说要容易被从左到右地预测,而不是只为了重建精度去优化。
氨基酸序列显然在第二个维度上也有缺陷。它的生成顺序完全取决于蛋白质的线性结构,而不是为了方便语言模型学习而设计的。这就好比你让一个人去记一本没有标点、没有分段、全靠蒙上下文才能读懂的天书,他当然容易读着读着就卡壳,开始原地打转重复同样的词句,这其实就是观测到的低复杂度漂移现象在认知层面的类比。
研究者的思路由此展开:既然问题出在目标表示上,那就不要改变自回归这个框架,而是去改造被预测的对象本身。
两种潜在语言的诞生
论文提出了两种学习出来的离散潜在语言,一种管序列,一种管结构。
序列这边叫蛋白质潜在语言,英文缩写 PLL。它的构造思路是把每个氨基酸残基重新编码成一个携带上下文语义的离散符号,词表大小定在 4096,比原来的 21 个符号大了近两百倍。这个编码过程依赖一个冻结参数的 ESM-2 150M 编码器。
ESM-2:Meta 公司开发的蛋白质语言模型,通过在海量蛋白质序列上做自监督预训练,学会了残基级别的进化和结构语义,被广泛用作下游任务的特征提取器。
为什么选 150M 这个相对较小的版本而不是更大的模型?论文给出的理由是蛋白质基础模型基准测试显示,更大的 ESM-2 变体相对于推理成本只能带来边际收益,用小模型做语义骨干更划算。
PLL 的构建分成两个阶段。第一阶段训练一个向量量化自编码器,把 ESM-2 产生的高语义向量压缩成离散编码再重建回去,目标是让重建后的潜在表示和原始表示尽可能接近,衡量指标包括一个叫做 ΔPPL% 的困惑度变化率,最终达到 0.47%,余弦相似度 0.970,说明离散化过程几乎没有丢失信息。第二阶段把第一阶段学到的编码器和码本冻结住,重新训练一个解码器,专门负责把离散编码翻译回氨基酸身份,最终达到 99.81% 的残基恢复准确率。
VQ-VAE:向量量化变分自编码器,一种把连续的高维表示映射到有限离散符号集合的技术,常用于图像和音频的离散化表示学习。
这个两阶段设计其实藏着一个很聪明的心思。第一阶段追求的是语义保真度,让离散编码尽可能贴近 ESM-2 学到的那套丰富上下文信息。第二阶段才去确保这套编码依然能够解码回具体的氨基酸,不会变成空中楼阁。
这就像先给一个外语学习者建立起对这门语言细腻语感的理解,让他能分辨出语境微妙的差异,然后再训练他把这些理解准确翻译成母语,两件事分开练,效果比囫囵吞枣式地同时学要稳得多。如果反过来,一开始就强求离散编码和氨基酸一一对应,那么词表就没法扩展到 4096 这么大的规模,因为能表达的语义维度会被死死锁定在 21 这个数字附近,这正是原始氨基酸语言天花板低的根本原因。
结构这边叫结构潜在语言,英文缩写 SLL。它建立在一个叫 GCP-VQVAE Lite 的几何完备型向量量化自编码器基础上,这个底层架构负责把蛋白质主链坐标编码成离散符号,再解码回三维坐标。
GCP-VQVAE:一种处理蛋白质三维主链结构的向量量化自编码器,用图神经网络捕捉残基间的几何关系,经过离散化压缩后还能重建出接近原始形状的三维坐标。
论文团队没有照搬原版 GCP-VQVAE 的训练目标,而是额外加了三个辅助监督信号。两个作用在解码器之前,直接作用于离散编码本身,一个预测氨基酸身份,另一个预测每个残基的置信度分数,专业叫法是 pLDDT。第三个辅助头作用在解码器之后,预测冻结的 ESM-2 表示,用来保证重建出来的隐状态依然和蛋白质序列语义对齐。
pLDDT:预测局部距离差异检验分数,是 AlphaFold 系列模型引入的一种每残基置信度指标,分数越高说明模型对该位置结构预测的把握越大。
加了这几个辅助头之后,SLL 在监督版蛋白质结构分词基准测试上的功能位点 AUROC 从基线的 58.26% 提升到 72.37%,理化性质斯皮尔曼相关系数从 23.93% 提升到 32.30%。代价是重建质量略微下降,平均 TM-score 从原版 GCP-VQVAE Lite 的 0.9687 降到 0.9456,但依然和专门做重建优化的 AIDO 模型处于同一水平。
这个权衡本身就很说明问题。一个结构分词器如果只盯着坐标重建精度打磨,很容易变成一个漂亮但空洞的编码方式,就像把一本书扫描成了高清图片,像素还原得完美无缺,可计算机完全读不懂里面在讲什么内容。加入语义监督相当于强迫这套编码在压缩坐标信息的同时,也把蛋白质的功能和序列线索一并塞进去,哪怕为此牺牲一点点像素级的精确度。
自回归模型真的学得更快了吗
把 PLL 和 SLL 这两套语言准备好之后,论文接下来要回答的问题是,用它们训练出来的自回归模型,到底比直接用氨基酸训练的模型强在哪。
实验设计很严谨,氨基酸模型和 PLLM(基于 PLL 训练的语言模型)用完全相同的 UniRef50 数据集、相同的训练词元预算、相同的优化设置,唯一变量就是目标语言不同。
拟合出来的计算扩展指数,氨基酸模型是 0.020,PLLM 是 0.038,接近两倍的斜率差异。
这个数字意味着什么?
意味着同样投入十倍的计算资源,PLLM 的损失下降幅度会明显超过氨基酸模型。放在实际场景里理解,如果你有一笔固定的算力预算要花在继续训练上,选择用 PLL 这套语言训练的模型,继续砸钱带来的边际收益会比氨基酸模型更划算。这就好比两个工厂用同样多的电力加工同一批原料,一个工厂因为流水线设计更合理,单位电力能多产出近两倍的成品,长期跑下来差距会越拉越大。
SLL 这边单独在结构词元数据上测,拟合出的指数是 0.049,比 PLLM 还要陡峭一些。论文里还提到一个有趣的旁证,这个数字和文本语言模型针对经批次效率调整后的最小训练计算所报告的指数相当接近,虽然两者的语料、分词方式、计算核算口径都不一样,这个对比只能当作一种定性参照,但多少说明结构潜在语言这套设计把蛋白质结构生成拉到了和文本生成更接近的可扩展性轨道上。
接下来是更贴近实际使用场景的生成质量检验。论文设计了一个简单粗暴但很有效的诊断指标,叫残基组成熵,衡量一段生成的蛋白质序列里 20 种氨基酸出现频率的信息熵,熵值越低说明序列越单调重复。设定一个 1.5 比特的经验阈值,低于这个值就判定为出现了低复杂度漂移。
在 12 个采样温度的无条件生成扫描测试里,氨基酸模型有 43.0% 的样本掉进了这个低复杂度陷阱,PLLM 只有 19.9%,相对减少了 54%。
在中等采样温度下,PLLM 生成序列的长度分布和残基组成熵都更贴近 UniRef50 训练数据本身的统计特征,而氨基酸模型即便采样温度拉到 1.0,依然有大量样本长度卡在模型能生成的最大上限附近,说明它的停止机制学得并不好。
这里有个值得琢磨的细节。在经过熵过滤之后的长度受控对比中,氨基酸模型的平均 pLDDT 反而比 PLLM 更高,65.26 对 59.86。论文对此的解读是,氨基酸模型的高 pLDDT 部分是因为它在逃离低复杂度重复状态的过程中偶然碰上了结构上更稳定的序列,而不是整个生成分布本身质量更优。两个模型比较的其实是经过不同程度筛选后的样本群体,直接拿 pLDDT 数字去下结论容易产生误导。
这提醒我们一个更普遍的道理,一个单一指标很容易被钻空子,真正靠谱的评估需要从多个维度交叉验证,熵、长度分布、折叠质量这些指标合起来看才靠谱。
结构生成和序列到结构预测的实战表现
有了 SLLM(基于 SLL 训练的自回归模型),论文接着测试它在两个实战任务上的表现,一个是从零生成全新的蛋白质主链结构,另一个是给定序列预测对应的结构。
在从零生成任务上,论文用业内标准的 ProteinBench 协议评估,核心指标包括自洽 TM-score(衡量生成结构设计出的序列折叠回去后和原结构的相似度)、聚类比例(衡量生成样本的多样性)、以及对已知 PDB 数据库的最大相似度(衡量新颖程度)。
结果显示,专门针对结构生成优化的 La-Proteina 模型在自洽质量上遥遥领先,平均 scTM 达到 0.9677。SLLM 在这项指标上明显落后,只有 0.5390,但它在多样性聚类比例上拿到 0.9175,是所有平均 scTM 超过 0.5 的生成模型里最高的,新颖度指标 Max TM 也是最低的,说明它生成的结构确实更加五花八门,不容易落入和已知结构雷同的套路。
这个结果其实很诚实地反映了自回归结构生成目前的真实处境,质量上还追不上专门打磨多年的扩散模型,但在探索未知结构空间这件事上,自回归的随机采样机制反而给了它天然优势。
序列到结构预测这个任务更贴近实用场景,相当于给模型一段氨基酸序列,让它预测这段序列折叠成什么样的三维形状,这是 AlphaFold 系列模型主攻的方向。
论文把 SLLM 和一个叫 Profluent-E1 的序列编码器拼接起来,E1 负责把输入序列编码成富含结构信息的连续向量,SLLM 则在这个条件下自回归地生成 SLL 结构词元,最后用固定的 SLL 解码器把词元翻译回三维坐标。
E1:由 Profluent 公司开发的检索增强蛋白质编码器模型,在无监督接触图预测等任务上表现优异,擅长捕捉序列背后的结构线索。
这里有个相当实际的工程亮点,SLLM 生成候选结构词元的速度,在长蛋白质上比依赖多序列比对的 AlphaFold2 快了大约一千倍。这个速度差距不是闹着玩的,意味着如果需要对同一条序列采样多个候选结构然后挑出最好的那个,SLLM 这套方案在时间成本上是完全可行的,而传统方法根本负担不起反复采样的开销。
更进一步,论文还尝试了一种置信度驱动的候选筛选机制,思路借鉴自大语言模型推理圈子里最近很火的 DeepConf 方法。
DeepConf:一种利用模型自身预测时的词元级置信度信号来筛选高质量生成结果的技术,核心想法是模型内部的不确定性可以作为质量的代理指标,不需要依赖外部的真值评判。
具体做法是,对同一条输入序列采样多条 SLL 结构词元轨迹,计算每条轨迹生成过程中原始词表熵的局部滑动窗口最大值,熵越低代表模型越自信,取熵值最低的一半候选作为可信集合,再从这个集合里挑出和其他候选最相似的那条作为最终答案,整个过程完全不需要用到真实结构,是一种盲选机制。
效果如何?在 CAMEO-2024 这个留出测试集上,单次采样的平均 TM-score 是 0.725,用这套盲选策略在采样 256 条候选后提升到 0.754,而如果作弊式地用真实结构去挑出候选池里最好的那一条,能达到 0.825。
盲选策略拿到了作弊上限和单次采样之间大约三成的提升空间,这说明模型内部的词元置信度确实和最终结构质量挂钩,是一个真实可用的信号,不是噪声。
这就好比一个没有标准答案的考场里,学生做完卷子后被要求再读一遍自己的答案,凭语感圈出自己觉得最没把握的那道题,然后主动放弃那份卷子换一份重做。虽然没有老师告诉他对错,但这种自我感知的不确定性确实能帮他筛掉更差的答案,只是没法完全替代真正有标准答案时的精确纠错能力。
论文没有回避自己的局限。模型在质量导向的评测指标上还不是最强选手,尤其是从零生成结构这一块。SLLM 应用在跨模态任务里的方式还是单一词元流分别预训练,没有真正做到序列和结构的联合预训练生成,PLL 和 SLL 这两套语言之间的兼容性和协同生成能力目前完全没有测试过。论文也坦承没有把 PLL 这套完整方案和连续目标生成,或者投入相近资源做 ESM-2 微调蒸馏的方案做对比,这意味着目前还不能断言 PLL 相对于其他利用预训练蛋白质表示的路径到底有多大优势。SLL 目前也只针对单链结构设计,扩展到多链复合物需要额外处理链间相对位姿,这部分工作还没有展开。
写在后面
读完这篇论文,一个让我反复琢磨的地方是,它其实没有提出任何新的模型架构,用的还是标准的 GPT-2 式解码器 Transformer,变的只是喂给模型的目标是什么样子。这种做减法而不是做加法的研究思路,在当下这个比拼参数量和架构创新的氛围里反而显得挺少见。
另一个值得单独拎出来说的细节是论文对 pLDDT 这个指标的审慎态度。作者明确提醒读者,氨基酸模型更高的 pLDDT 分数很可能只是它逃离低复杂度重复状态时碰巧带来的副产品,而不是生成质量本身更强的证据。这种对自己实验结果保持警惕、主动拆穿单一指标可能带来的误导的态度,在很多论文里是缺席的,这里却被专门写出来提醒读者。
还有一处细节是关于推理速度的那个一千倍对比。这个数字乍一看很震撼,但仔细想想它揭示的其实是一个更朴素的道理,自回归生成本质上是逐词元串行的,而传统的基于多序列比对的结构预测方法需要先搜索整个数据库找同源序列,这个数据库检索的开销才是真正的瓶颈。SLLM 绕开了这一步,直接用一个预训练好的序列编码器提供上下文,省掉了检索这个环节,速度优势很大程度上来自于架构范式的切换,而不是单纯的算法效率提升。
蛋白质语言模型这条路到底该往哪个方向走,论文给出的答案并不完美,甚至留下了比解决的问题更多的疑问。但它至少证明了一件事,当一个强大的生成范式在某个领域表现不佳时,问题未必出在这个范式本身,很可能是我们喂给它的语言从一开始就选错了。
Q&A
Q1:蛋白质潜在语言PLL和结构潜在语言SLL分别解决什么问题?
A:PLL把氨基酸序列重新编码成4096种带上下文语义的离散符号,解决传统20个氨基酸字母词表太小、语义贫乏的问题;SLL在结构分词器基础上加入序列和置信度监督,让结构编码不仅能还原三维坐标,还携带功能语义信息。
Q2:用PLL和SLL训练的自回归模型比传统氨基酸模型强在哪里?
A:在相同训练数据和算力条件下,PLLM的计算扩展指数达到0.038,是氨基酸模型0.020的近两倍,意味着同样加大算力投入,PLLM性能提升更快;同时PLLM生成序列陷入低复杂度重复漂移的比例比氨基酸模型降低了54%。
Q3:SLLM在蛋白质结构预测任务上实际应用效果如何?
A:SLLM结合E1序列编码器做序列到结构预测,在长蛋白质上生成候选结构词元的速度比依赖多序列比对的AlphaFold2快约一千倍,并且借助模型自身的词元置信度筛选候选结果,能在没有真实结构参考的情况下显著提升预测质量。












