二十一世纪给人类带来了前所未有的环境和医学挑战。为特定目的设计新蛋白质的能力,可能会改变我们及时应对这些环境、医学问题的能力。人工智能领域的最新进展正在为实现这一目标奠定基础。蛋白质序列本质上类似于自然语言:氨基酸以多种组合排列形成具有功能的结构,就像字母构成单词和句子具有含义一样。因此,在自然语言处理(NLP)的整个历史中,它的许多技术已应用于蛋白质研究问题也就不足为奇了。在过去的几年里,人们见证了 NLP 领域的革命性突破。Transformer 预训练模型的实施使文本生成具有类人能力,包括具有特定属性(如样式或主题)的文本。受其在 NLP 任务中取得巨大成功的推动,预计专用 Transformers 将在不久的将来主导定制蛋白质序列的生成。对蛋白质家族的预训练模型进行微调,将使他们能够使用可能高度不同,但仍具有潜在功能的新序列来扩展它们的库。细胞区室或功能等控制标签的组合将进一步实现新蛋白质功能的可控设计。此外,最近的模型可解释性方法将使我们能够打开「黑匣子」,从而增强对折叠原理的理解。早期的举措显示了生成语言模型在设计功能序列方面的巨大潜力。可以相信,使用生成文本模型来创建新的蛋白质,是一个很有前途且很大程度上尚未探索的领域。拜罗伊特大学(University of Bayreuth)的研究人员 Noelia Ferruz 和 Birte Höcker 以「Controllable protein design with language models」为题发表了综述,该文章于 2022 年 6 月 22 日发布在《Nature Machine Intelligence》。以下为综述正文全译,阅读全文可能需要 14-18 分钟的时间。蛋白质是生命的通用组成部分,基本上在每个细胞过程中都起着至关重要的作用。以快速且具有成本效益的方式定制特定、高效和定制的蛋白质将有可能解决人类今天面临和未来面临的许多挑战。例如,我们将能够设计代谢塑料废物或水解污染毒素的酶,或者在大流行时及时制造新疫苗。然而,尽管取得了巨大进步,但当代研究仍远未设计出像自然产生的蛋白质那样「熟练」的蛋白质。蛋白质设计旨在创建执行所需功能的定制结构。这个巨大的挑战通常被称为逆蛋白质折叠问题:目标不是找到序列折叠成的结构,而是获得采用某种折叠的最佳序列。在数学上,这个问题是通过搜索由能量函数定义的序列结构景观的全局最小值的优化算法来解决的。尽管最广泛使用的能量函数相对简单,但每个位置的旋转异构体和可能组合的数量促进了组合爆炸,并且可以理解的是,大多数蛋白质设计包都依赖于启发式算法。由于这种复杂性——尽管最近取得了显着进展——从头设计蛋白质通常需要相当多的时间和精力,绝大多数功能性蛋白质已经通过预先选择天然存在的支架,并随后在迭代中优化它们的功能来实现 ,而不是同时设计序列和结构以执行特定功能。尽管蛋白质设计问题已通过针对其结构的物理化学功能来解决,但蛋白质最非凡的特性之一是它们完全编码其氨基酸序列中的结构和功能,并且它们以极高的效率这样做。在没有生物物理限制的情况下,仅序列就可以捕获蛋白质的特性这一事实,为利用自然语言处理(NLP)方法进行的蛋白质研究打开了一扇尚未探索的大门。以下部分总结了自然语言和蛋白质序列之间的异同,并展示了 NLP 研究如何影响蛋白质科学。我们将强调该领域最显着的发展,即 Transformers 架构。后续部分将介绍 Transformer 独特的生成能力如何重塑蛋白质设计领域。最后,将提供一个观点,说明它们如何也可能主导非天然酶促反应和定制的新功能等极具挑战性的案例。蛋白质的语言几个特征证明了人类语言和蛋白质序列之间的相似性,其中最明显的可能是它们的层次结构。类似于人类语言,蛋白质由字符串的串联表示:20 种标准氨基酸。然后字母组合形成单词,氨基酸组合形成二级结构元件或保守的蛋白质片段。然后,随着单词组合形成带有含义的句子,片段可以组装成带有功能的不同蛋白质结构。
图示:蛋白质和语言之间的相似性。(来源:论文)
语言和蛋白质的起源和进化也显示出相似之处。语言不断发展并不断适应,出现的词更好地反映了我们不断发展的社会。今天,有 8,000 多种语言分为 140 多个语系,所有这些语言都起源于 50,000 至 70,000 年前在非洲中部使用的一种共同的祖先语言(当然只是论文作者的观点)。同样,生活在地球上的所有生物都有一个(最后一个普遍的)共同祖先——LUCA——一种生活在 40 亿年前的微生物,它已经包含了大多数现代蛋白质结构域,这些蛋白质结构域是通过进化发展起来的。在人类语言中,单词与相邻单词具有关系并相互作用,就像氨基酸依赖于它们的连续环境一样。然而,人类语言也存在长距离依赖,即非严格线性相邻的单词或词素之间的依赖,例如长文本中跨句子的主题。这个概念让人想起蛋白质结构,其中序列中相距很远的氨基酸可能在 3D 结构中相互作用,有时跨越域边界。这些关联还涵盖了在蛋白质中观察到的其他行为。在句子含义中添加或更改一个字母的不利影响相当于单个突变导致的功能丧失。在保留含义的同时改组单词的可能性与序列排列相当。最后,一个语法正确但无意义的句子的表述类似于设计的蛋白质结构,没有明显的功能,甚至没有危险的功能,例如淀粉样纤维蛋白原。然而,重要的是要注意蛋白质和人类语言也存在将 NLP 应用于蛋白质研究的差异。列举几个例子。首先,许多人类语言为书面文本中的单词提供了清晰可辨的定义(一个突出的例外是中文),但「单词边界」在蛋白质中不太明显。一种可能性是使用二级结构元件或保守片段的定义。在任何一种情况下,标记化过程都将依赖于三级结构的可用性和比单词标记化更密集的计算。第二个有影响的区别是目前缺乏对蛋白质语言的理解,类似于我们目前缺乏对许多已灭绝语言的了解。尽管我们拥有训练蛋白质语言的语料库——与大多数灭绝语言不同——正确解释生成的序列仍然是一个挑战,需要大量的实验测试来破译它们的功能。第三,蛋白质的进化也明显不同于语言的进化,受制于随机性和环境压力,其语法不可避免地会包含许多不规则性。尽管语言中存在语音限制(可能的声音序列的连续性),但这一方面在蛋白质中更为明显,其序列必须与折叠成 3D 结构兼容,从而使蛋白质语言模型必须学习的模式产生偏差。最后,尽管具有大量语料库的人类语言的数量仅限于十几种语言,但目前地球上有数百万种物种,而且,我们最感兴趣的不是研究特定物种的蛋白质,而是蛋白质的一般特性 。这一事实质疑了传统的自然语言建模方法,该方法一次只输入一个句子。事实上,当引入多序列比对(MSA)来预测物理接触时,蛋白质结构预测方法的性能显着提高。同样,在大型神经模型中引入 MSA 输入导致大型神经模型(例如 MSA Transformer 或 AlphaFold)取得了显著成功。虽然让人想起同义词的研究,但 MSA 的概念在 NLP 方法中并没有直接的类比。总体而言,人类语言和蛋白质序列之间的差异,对将 NLP 应用于蛋白质设计提出了相当大的挑战。尽管如此,尽管存在这些挑战,但这两个领域之间的明显联系为蛋白质研究领域提供了新的视角。考虑到 21 世纪人类面临的特殊环境和医学挑战,我们将需要超越学科边界的创新方法来应对这些挑战。几十年来,NLP 对蛋白质研究产生了影响我们目前正在见证 NLP 的革命性时期。个人助理(例如 Apple Siri、Amazon Alexa 和 Google Assistant)、聊天机器人和翻译机(例如 Google Translate)等软件应用程序正在重塑我们与机器交互和日常生活的方式。NLP 研究已经从分析单个句子可能需要几分钟时间发展到今天的搜索引擎可以在几毫秒内找到数百万个网站。虽然不是很明显,但 NLP 领域一直通过将作为 NLP 问题解决方案出现的技术转移到蛋白质序列来影响蛋白质研究。下图总结了这两个领域之间的相似之处。几十年来,NLP 问题一直通过浅层机器学习方法来解决,例如支持向量机(SVM)或隐马尔可夫模型(HMM),用于解决文本分类和标记问题。HMMs 和 SVMs 也被广泛应用于蛋白质的分类和标记问题,如折叠识别、序列分类和细胞定位,仍然是序列同源性检测的最新方法。图示:NLP问题最常用的方法概述。(来源:论文)然而,自 2010 年以来,神经网络开始在各种 NLP 任务中产生出色的结果。尽管统计 NLP 是现在最流行的语言任务建模方法,但在开始时它遭受了维度的诅咒,这导致了在较低维度空间中学习单词和句子表示的动机。该领域的许多进展都基于 Tomáš Mikolov 的工作,他开发了 word2vec 和 doc2vec 模型。这些技术产生一个单词或文本的分布式向量表示,并已广泛用于 NLP 同义词分析和大型神经模型的输入。很快,这些概念扩展到产生蛋白质序列嵌入。随着词嵌入的普及,需要更复杂的函数来从输入词向量中提取更高级别的特征。CNN 在计算机视觉研究人员中的流行,使它们成为完成这项任务的理想人选,很快 CNN 在名称实体识别(NER)、词性(POS)标记和语义角色标记方面取得了成功。因此,CNN 的适用性很快扩展到蛋白质研究,以预测蛋白质紊乱、DNA 结合位点和折叠分类。然而,CNN 未能对远程信息进行建模,而这对于全局文本理解至关重要,或者在蛋白质的情况下,无法模拟远程接触。出于这个原因,NLP 研究人员转而使用循环神经网络(RNN),尤其是长短期记忆(LSTM)。RNN 在学习长期依赖方面表现出卓越的能力,并很快被用于创建语言模型。受他们成功的启发,Alley 团队为蛋白质语言模型 UniRep 使用了乘法 LSMT 架构,该模型以比以前的方法更高的准确度预测序列稳定性。传统的 LSTM 很快被注意力机制所取代,影响了近期蛋白质研究的突破,例如 AlphaFold。基于注意力模型,谷歌发布了 Transformers,以更低的计算成本改善了大多数 NLP 任务的结果。第一个 transformers 开启了 NLP 的新时代,从那时起,已经实施了无数的改编。值得一提的是生成式预训练Transformers(GPT)及其继任者 GPT-2 和 GPT-3。这些预先训练的模型在大多数 NLP 任务中都表现出卓越的性能,并且第一次能够生成类似人类的、长而连贯的文章。NLP 领域的这些最新发展具有很大的潜力来适应蛋白质研究。以下部分将深入了解预训练的语言模型如何在未来几年改变和主导蛋白质设计。注意力机制和 TransformersTransformer 是当前 NLP 的一场革命。它们的成功源于一系列相互叠加的概念的演变,其中注意力机制可能是这些进步中最引人注目的。注意力机制起源于传统序列到序列(seq2seq)模型的解决方案,该模型广泛用于处理从一个域到另一个域的序列的任务,例如机器翻译或文本摘要。在 seq2seq 模型中,输入在称为编码器的模块中逐步处理,以产生传递给解码器的上下文向量,解码器负责生成输出。传统上,编码器和解码器架构通常是 RNN 或 LSTM,上下文向量对应于最后一个编码器步骤(单词)的最终输出。由于这种固有的顺序性,RNN 的主要缺点是性能下降和训练时间随序列长度增加。注意机制的引入通过允许解码器分析整个输入并专注于输入的特定部分,为这个问题提供了解决方案,这一概念类似于人类大脑中的注意力。英法翻译中的一个简化示例是在输出单词「maison」时关注输入单词「home」。图示:最常用Transformers的示意图。(来源:论文)尽管注意机制在许多类型的神经网络中得到了广泛应用,但 2017 年,当谷歌的研究人员发表了他们的开创性著作《Attention is all you need》时,注意机制变得尤为突出,该著作引入了一种不仅在模块之间应用注意,而且在整个模块中应用注意的架构。这种新设计允许编码器专注于输入序列的特定部分,从而在许多任务中产生更好的性能。该模型被称为 Transformer,并为随后几年遵循的所有类似架构命名。Transformer 的编码器和解码器模块包含六个子模块或层(N)的堆栈,它们以并行方式处理来自前一层的输入,从而实现更快的训练时间。编码器子模块包含两层:一个自注意力层,它将注意力机制应用于输入序列本身,以及一个前馈层,它分别且相同地处理来自前一层的输入,从而允许并行化。解码器还包括六个子模块,它们具有相同的两层,但中间有另一个编码器-解码器注意层,专注于输入的相关部分。原始 Transformers 的点积注意力机制的内部工作总结如下:由于句子是字符串,因此需要将输入转换为与模型内部数学运算兼容的浮点向量。此步骤称为「嵌入」。Transformers 进一步将嵌入 e 添加到位置编码向量中,该向量提供有关每个单词位置的信息。最终向量被传递到第一个编码器子模块,该子模块通过将它们与训练期间获得的矩阵相乘,将它们转换为查询、键和值向量。查询向量 q 与每个词的关键向量 k(q1 · k1, q1 · k2)的点积产生一组分数(s1, 1),这些分数随后被缩放到 0-1 范围。分数乘以相应的值向量(v1),当分数为 1 时保持它们的大小,反之则最小化它们。这些向量被汇总成最终的输出向量(z1),它表示句子中所有其他单词对每个单词的贡献。在最初的实现中,这个过程在八个注意力头(H)中并行重复,通过创建独立的查询/键/值向量来扩展模型关注不同输入部分的能力。该模型的超参数摘要如下图所示。图示:Transformers 型号总结。(来源:论文)在 Transformers 架构的推动下,OpenAI 发布了 GPT(生成式预训练 Transformers),这是一系列高性能预训练模型中的第一个。GPT 背后的主要思想包括创建一个通用的、与任务无关的语言模型,方法是在各种未标记文本的语料库上对其进行训练,然后对标记数据集进行微调以执行特定任务,从而从第一步开始传递知识。尽管 GPT 具有一般性质,但在所研究的 12 项任务中有 9 项与最先进的方法相比,GPT 表现出显着提高的性能,另外一个优势是它只需要训练一次。GPT 在经典的语言建模任务上进行了预训练,即根据之前的项目预测序列的下一个项目——这一任务使其在语言生成方面特别强大。在这个目标上训练的模型被称为自回归模型,在 Transformers 的情况下,它们的架构通常对应于解码器模块中的层堆栈。然而,直到 GPT-2 的实施,GPT 的生成能力才变得明显,这是一个具有十倍以上参数和训练数据的模型。GPT-2 在生成连贯文本方面表现出如此令人难以置信的性能,以至于由于存在误用的风险,作者决定保留该模型,这一决定引起了争议。最近,OpenAI公布了其第三代 GPT 模型 GPT-3,该模型包含的参数是 GPT-2 的100倍(如上图),即使在从未接受过训练的任务(如代码编写)上,也能以零拍方式表现良好。NLP 领域的另一个突出发展来自 Google AI 语言团队,他们预训练了 BERT(来自 Transformers 的双向编码器表示)以创建语言模型。BERT 也受到 Transformers 架构的启发,但是,鉴于在这种情况下,兴趣在于创建文本输入的表示,它只使用编码器模块。像 BERT 这样的模型被称为去噪自动编码器,它们通过以某种方式破坏输入标记并尝试重建原始句子来进行预训练。尽管它们也可用于文本生成,但它们最常用于生成可用于分类等下游任务的向量表示。除了 Transformers 的编码器和仅解码器架构的这两个代表性示例之外,在过去三年中已经发布了数千个 Transformers。蛋白质序列是 Transformers 的理想候选者生成的数字数据量呈指数增长。仅在 2020 年,我们就积累了超过 40 泽字节(Zettabyte,ZB)的数据,目前估计到 2025 年该水平将超过 80 ZB。事实上,上一代 Transformer 取得巨大成功的部分原因在于训练它们的语料库不断增长,这反过来又允许创建更大、更强大的模型。图示:模型大小和数据库随时间的增长。(来源:论文)然而,这种数据爆炸并不特定于 Web 数据。生物数据库的规模也在显着增长,蛋白质序列的这一趋势最为明显。上图说明了过去 20 年序列和结构数据库的数据采集趋势,表明蛋白质序列的表征比其对应结构的增长速度要快得多。UniParc 数据库是一个全面且非冗余的数据集,包含大多数公开可用的蛋白质序列,包含 4.857 亿个条目(2022_01 版)。UniRef50 是一个以 50% 同一性级别过滤的集群代表数据库,包含超过 5100 万个序列,并且在过去四年中其条目数量增加了一倍以上。尽管最近开发的高性能结构预测方法(例如 AlphaFold)使科学家能够将结构的生长等同于序列,但它并没有解决功能注释的耗时问题。因此,我们正在处理一个领域,其中未标记数据与已标记数据的比率正在广泛增加(这种现象称为序列-结构差距),让人想起互联网上未标记语料库的指数积累。鉴于半监督方法的成功,例如 Transformers 利用废弃的网络数据创建语言模型,我们可以推测 Transformers 可以类似地利用广阔的蛋白质空间并在蛋白质研究领域引发类似的革命。用于蛋白质设计的 TransformersNLP 最近的革命性发展已经影响了一些开创性的蛋白质研究。受前 Transformers 时代进步的启发,一些研究已将语言模型的概念应用于蛋白质序列。Yu 团队应用 n-gram 建模来生成概率蛋白质语言模型。与 Radford 团队的工作相似,作者应用乘法 LSTM(mLSTM)来学习语言模型,Alley 团队训练了一个 mLSTM 来实现 UniRep,该模型能够输出蛋白质序列的向量表示。Radford 团队发现了一个直接影响情感分析的单个神经元,同样,Alley 团队发现了一个对输入的二级结构敏感的单个单元,尽管 UniRep 只接受了序列数据的训练。与 BERT 类似,UniRep 的向量表示被用于下游任务,在这种情况下,它可以预测蛋白质序列的稳定性或功能等,具有最先进的准确性。第一个基于 Transformers 的蛋白质语言模型 ESM 和 TAPE51 可追溯到 2019 年。由 Facebook 人工智能牵头的ESM-1b 是一个在 2.5 亿蛋白质序列上训练的编码器 Transformers,其架构和训练目标与 BERT 相同,但在这种情况下,在 UniParc 数据库上预训练了 33 个编码器层,以生成编码蛋白质序列的向量表示。ESM-1b 的表示,类似于捕捉语言语法的 BERT 句子表示,编码蛋白质的内部组织,从氨基酸的生化特性水平到蛋白质之间的进化关系。与下游深度学习模型相结合,可以对突变效应进行最新预测,并改进对远程接触的预测。另一方面,TAPE(评估蛋白质嵌入的任务)是一组半监督模型和数据集,是评估蛋白质嵌入在不同生物任务中的性能的首次尝试。五种架构,包括一个 3800 万参数的 Transformers,在从结构预测到蛋白质工程的五项任务上进行了基准测试。作者观察到,自我监督预训练几乎在所有情况下都能提高性能,但每种架构的性能因任务而异。最近,来自慕尼黑、英伟达和谷歌 AI 的科学家合作开发了 ProtTrans,这是对先前发布的六种基于 Transformers 的架构(Transformer-XL、BERT、Albert、XLnet、T5 和 Electra)的令人印象深刻的改编。这项研究使用了迄今为止最大的训练数据集,包含来自 UniParc 和 Big Fantastic Database 的超过 3900 亿个氨基酸。他们的工作表明,蛋白质嵌入——Transformers 输出的向量表示——能够准确地预测每个残基的二级结构和亚细胞定位。ProtTrans:https://github.com/agemagician/ProtTrans这些早期研究证明了学习蛋白质表示在下游应用中的潜力,包括分类或回归任务。最近,发表了几篇使用预训练模型生成蛋白质序列的论文。虽然没有明确使用语言模型,但我们提到了两个从传统的蛋白质设计范式(基于搜索能量函数最小值)转向神经网络方法。首先,受 Google 的能够生成迷幻图像的 CNN DeepDream 的生成能力的启发,Anishchenko 团队逐步应用 trRosetta 以高通量方式生成理想化的蛋白质结构。其次,Huang 团队最近生成了 SCUBA,这是一种新颖的自适应内核邻居计数神经网络(NC-NN)方法,可以产生具有新颖拓扑结构的从头结构。关于语言模型的特殊情况,最近的几项工作正在利用 Transformers 进行蛋白质设计。Castro 团队实施了 ReLSO,这是一种经过训练的自动编码器,可以在给定输入标记数据集的情况下联合生成序列并预测适应度。Moffat 团队实现了能够设计新型结构的 1.1 亿解码器专用transformers DARK,Ferruz 团队发布了基于 GPT-2 架构的 7.38 亿transformers模型 ProtGPT2,该模型在蛋白质空间的未探索区域生成从头序列。尽管这些最后的模型一直专注于零样本从头序列设计,但它们也具有执行其他任务的潜力。一方面,因为它们最后一层的激活是有效的输入表示,DARK 或 ProtGPT2 架构也可以与其他模型耦合以预测功能损失或突变效应。另一方面,生成模型可以通过对特定类型的数据进行微调来控制文本的方向,因此蛋白质语言模型也有可能在对用户定义的序列集进行微调后设计特定的家族或折叠。这些进展显示了自回归 Transformers 在蛋白质设计中的广阔前景,同时为蛋白质工程任务打开了一扇新的大门。图示:使用 Transformers 模型概述蛋白质工程领域的可能性。(来源:论文)