作为细胞生存的基础,蛋白质存在于包括人体在内的所有生物体中,是构成组织器官的支架和主要物质,在生命必不可少的化学反应中发挥着核心作用。
面对蛋白质结构的复杂多变,传统实验方法在解析蛋白质结构时既耗时又费力,蛋白质大语言模型 (PLMs) 应运而生——这些专业模型以氨基酸序列作为输入,能预测蛋白质功能,甚至设计全新的蛋白质。然而,PLMs 虽然在理解氨基酸序列方面表现出色,但无法理解人类语言。
同样地,当要求 ChatGPT 和 Claude-2 这类擅长处理自然语言的大语言模型 (LLMs),去描述蛋白质序列的功能或生成具有特定性质的蛋白质时,它们也力不从心。究其原因,目前的蛋白质-文本对数据集存在两大缺陷:一是缺少明确的指令信号;二是数据注释不平衡。总之,当前 LLMs 的研究中存在一个尚未解决的空白,即无法在人类语言和蛋白质语言之间快速转换。
为了解决这类问题,浙江大学陈华钧、张强团队提出 InstructProtein 模型,利用知识指令对齐蛋白质语言与人类语言, 探索了在蛋白质语言和人类语言间的双向生成能力,有效弥补了两种语言之间的差距,展示了将生物序列整合到大型语言模型的能力。
该研究以「InstructProtein: Aligning Human and Protein Language via Knowledge Instruction」为题,被 ACL 2024 主会录用。
研究亮点:
-
InstructProtein 是一项通过知识指令对齐人类语言和蛋白质语言的研究
-
探索了在蛋白质语言和人类语言间的双向生成能力,有效弥补了这两种语言之间的差距
-
大量双向蛋白质-文本生成任务的实验表明,InstructProtein 在性能上优于现有的最先进 LLMs
论文地址:
https://arxiv.org/abs/2310.03269
开源项目「awesome-ai4s」汇集了百余篇 AI4S 论文解读,并提供海量数据集与工具:
https://github.com/hyperai/awesome-ai4s
数据集:全面科学的数据集
模型预训练阶段的语料库包含来自 UniRef100 的蛋白质序列和来自 PubMed 摘要的句子——研究人员基于这些数据生成了一个包含 280 万条数据的指令数据集。
在模型的微调阶段,蛋白质知识图谱是利用 UniProt/Swiss-Prot 提供的注释构建的,其中包括蛋白质的超家族、家族、结构域、保守位点、活性位点、结合位点、位置、功能和涉及的生物过程;知识因果建模的数据则来源于 InterPro 和 Gene Ontology 数据库。
在模型评估阶段,研究人员选择了 Gene Ontology (GO) 数据集来评估模型在蛋白质功能注释方面的能力,然后选择 Hu 等人的数据集来评估模型在金属离子结合 (MIB) 预测方面的能力。
模型架构:通过建立蛋白质知识指令数据集对预训练模型进行微调
为了赋予 LLM 理解蛋白质语言的能力,InstructProtein 采用了两步训练方法:首先在蛋白质和自然语言语料库上进行预训练,然后通过建立的蛋白质知识指令数据集进行微调。
预训练阶段
在多语言预训练阶段,本研究利用生物相关的大型文本数据库,来增强模型在生物领域的语言理解和知识背景。多语言指的是处理自然语言 (如英文摘要) 和生物序列语言 (如蛋白质序列) 的能力。
模型微调阶段
在模型微调阶段,本研究提出了一种名为「知识指令」的数据集构建方法, 利用知识图谱 (KGs) 和大语言模型的协同工作,以构建一个平衡且多样化的指令数据集。该方法不依赖于大语言模型对蛋白质语言的理解能力,从而避免了因模型偏误或幻觉而引入的虚假信息。具体的构建过程分为 3 个主要阶段,如下图所示:
图:指令生成方法概述
a.给定一组种子任务 (seed task),促使 LLM 生成新的指令数据
b.利用 LLM 生成与原始文档 (raw document) 内容对应的指令数据
c.基于知识图谱 (KG) 的指令生成框架
知识图谱的构建: 研究人员使用 UniProtKB 作为数据来源,构建蛋白质知识图谱。借鉴链式思维的理念,研究人员认识到蛋白质注释中也存在逻辑链。例如,蛋白质可以参与的生物过程与其分子功能和亚细胞定位紧密相关,而分子功能本身受蛋白质结构域的影响。
为了表示这种蛋白质知识的因果链,研究人员引入了一个名为知识因果建模 (Knowledge Causal Modeling, KCM) 的新概念。 具体而言,知识因果模型由多个相互连接的三元组组成,这些三元组组织在一个有向无环图中,其中边的方向表示因果关系。该图将三元组组织起来,从微观层面 (涵盖蛋白质序列的特征,如结构) 延伸到宏观层面 (涵盖生物功能)。下图展示了给定一个包含 KCM 的三元组,利用结合了知识图谱完成任务的大语言模型生成事实性、逻辑性和多样化指令的过程。
图:将知识图谱三元组转换为指令的示例
知识图谱三元组采样: 考虑到知识图谱中的注释不平衡问题,研究人员提出了一种去偏采样策略来替代均匀采样,作为统一采样的替代策略。具体来说,其首先根据蛋白质的序列和属性相似性进行分组,然后在每个群组中统一抽取三元组。
指令数据的生成: 研究人员模拟知识图谱完成任务,并使用通用 LLM (如 ChatGPT) 将带有 KCM 的知识图谱三元组转换为指令数据。
通过这种方法,可以在不依赖预设模型理解蛋白质语言的前提下,有效地创建出一个既丰富又平衡的蛋白质函数和位置的指令数据集, 为后续的蛋白质功能研究和应用提供更可靠的数据支持。
通过预训练和微调的组合,得到的模型称为 InstructProtein,该模型能够更好地执行涉及蛋白质序列的各种预测和注释任务, 比如准确预测蛋白质的功能或者定位到特定的亚细胞位置——这对蛋白质工程、药物发现以及更广泛的生物医学研究具有重要意义。
研究结果:InstructProtein 在性能上优于现有的最先进 LLMs
该研究通过全面评估了 InstructProtein 在蛋白质序列理解和设计方面的能力:
蛋白质序列理解
研究人员评估了 InstructProtein 模型在以下 3 个分类任务上的性能: 蛋白质位置预测、蛋白质功能预测 、蛋白质金属离子结合能力预测。这些任务被设计成类似于自然语言中的阅读理解问题,其中每条数据包含一条蛋白质序列及一个问题,模型需回答是/否类型的问题,所有评估都在 zero-shot 设置下进行。
评估结果如下表所示:与所有基线模型相比,InstructProtein 在所有任务上都达到了新的最先进性能。
表:蛋白质序列理解任务下的 zero-shot 性能
此外,有两个关键发现值得注意。首先,InstructProtein 明显优于源自自然语言训练语料库的 LLMs (即 OPT、LLaMA、Alpaca)。这表明,使用蛋白质和自然语言共存的语料库进行训练对 LLMs 有益,提高了它们在蛋白质语言理解方面的能力。
其次,尽管 Galactica 和 BioMedGPT 都利用 UniProtKB 作为自然语言与蛋白质对齐的语料库,但 InstructProtein 的表现始终优于它们。结果验证了,研究中高质量的指令数据可以提升 zero-shot 设置下的性能。
另外,在蛋白质亚细胞定位 (bin) 任务中,LLMs (OPT、LLaMA、Alpaca 和 Galactica) 存在严重偏差,导致所有蛋白质被分类为同一组,结果准确率为 57.52%。
蛋白质序列设计
在蛋白质设计方面,研究人员设计了一个「指令蛋白配对」任务:给定一个蛋白质及其描述,模型需要从其对应描述及 9 个不对应的描述中选择最合适的一项。
如下表所示:在指令-蛋白质配对任务中,InstructProtein 显著超越了所有基线模型。
表:指令与蛋白质配对的准确性
其中,BioMedGPT 专注于将蛋白质转换为文本,缺乏蛋白质设计能力;Galactica 在将指令与蛋白质对齐方面的 zero-shot 设置下表现有限,因为它是基于叙述性蛋白质语料库进行训练的——这些结果确认了 InstructProtein 模型在蛋白质生成中的指令跟随能力的优越性。
为了进一步验证 InstructProtein 按照功能相关指令进行蛋白质设计的能力,研究人员使用 InstructProtein 设计了能够与特定化合物结合的 heme 结合蛋白,并可视化了三个生成蛋白质的 3D 结构。下图展示了对接结果、结合亲和力预测 (binding affinity,越低越好)、pLDDT 分数 (绝对值越高越好)。可以观察到生成的蛋白质展示了显著的结合亲和力,确认了 InstructProtein 在 heme 结合蛋白设计中的有效性。
图:基于功能指令的蛋白质序列从头设计可视化
蛋白质大模型的探究之路刚刚开始
近年来,大型语言模型已经在自然语言处理领域带来了革命性的变革。这些模型被广泛应用于日常生活中的多个方面,例如语言翻译、信息获取以及代码生成。然而,尽管这些语言模型在处理自然语言和代码语言方面表现出色,它们在生物序列(如蛋白质序列)的处理上却显得力不从心——在此背景下,蛋白质大语言模型的出现恰逢其时。
蛋白质大语言模型专门针对蛋白质相关数据进行训练,包括氨基酸序列、蛋白质折叠模式以及蛋白质相关的其他生物数据。因此,它们具有准确预测蛋白质结构、功能和相互作用的能力。蛋白质语言模型代表了 AI 技术在生物学中的前沿应用,其通过学习蛋白质序列的模式和结构,能够预测蛋白质的功能和形态,对于新药开发、疾病治疗和基础生物学研究具有重大意义。
2023 年 4 月,发表于 Science 的一项研究显示,来自 meta AI 团队的研究者采用能够涌现出演化信息的大语言模型,开发了一个从序列到结构的预测器 ESMFold,对单序列蛋白的预测精度超过了 AlphaFold2,对有同源序列的蛋白的预测精度接近 AlphaFold2,且速度提升了一个数量级,该模型预测了 6 亿多条宏基因组的蛋白质,展示了天然蛋白质的广阔性和多样性。
2023 年 7 月,百图生科与清华大学联合提出了一种名为 xTrimo Protein General Language Model (xTrimoPGLM) 的模型,参数量高达千亿 (100B)。在理解任务上,xTrimoPGLM 在多种蛋白质理解任务中显著优于其他先进基线模型;在生成任务上,xTrimoPGLM 能够生成与自然蛋白质结构类似的新蛋白质序列。
论文链接:
https://www.biorxiv.org/content/10.1101/2023.07.05.547496v3
2024 年 7 月,清华大学智能产业研究院副研究员周浩联合北京大学、南京大学和水木分子团队,提出了一种多尺度的蛋白质语言模型 ESM-AA (ESM All Atom),通过设计残基展开、多尺度位置编码等训练机制,拓展出了处理原子尺度信息的能力。ESM-AA 在靶点-配体结合等任务的性能显著提升,超越目前 SOTA 蛋白语言模型,如 ESM-2,也超越了目前的 SOTA 分子表示学习模型 Uni-Mol 等。相关研究已经以「ESM All-Atom: Multi-scale Protein Language Model for Unified Molecular Modeling」为题,发表于机器学习顶级会议 ICML 上。
论文地址:
https://icml.cc/virtual/2024/poster/35119
值得强调的是,尽管蛋白质大语言模型相关研究已经取得了重大进展,但我们仍处于充分掌握蛋白质序列空间复杂性的早期阶段。比如,前文提及的 InstructProtein 模型存在处理数值任务的挑战,这在需要定量分析的蛋白质建模领域尤为重要,包括 3D 结构的确立、稳定性评估和功能评价。未来,相关研究将拓展至包括定量描述在内的更广泛指令范围, 增强模型提供定量输出的能力,从而推进蛋白质语言和人类语言的整合,并拓展其在不同应用场景下的实用性。
参考资料:
1.https://arxiv.org/abs/2310.03269
2.https://mp.weixin.qq.com/s/UPsf9y9dcq_brLDYhIvz-w
3.https://hic.zju.edu.cn/ibct/2024/0228/c58187a2881806/page.htm