《理解未来》科学讲座AI for Science系列03期,我们特别邀请到加拿大魁北克省人工智能研究中心(Mila)副教授、加拿大高等研究院(CIFAR)人工智能讲席教授唐建以《生命科学中的生成式人工智能:如何搭建生命科学的“ChatGPT”》 为题介绍了生成式人工智能在生命科学的应用。人工智能和生物技术的研究正处于黄金时期。语言生成模型如 ChatGPT 在对话系统领域取得了很大的突破,因此,研究者们正在探索是否能在生物制药领域搭建类似的人工智能模型。在人工智能与生物医药的交叉领域已有了许多的探索,例如:GeoDiff 应用在小分子的三维构象预测;E3Bind 应用在蛋白质-配体复合物结构预测;ProtSeed 同时生成新的蛋白质结构和序列。
唐建:非常感谢晓亮老师的邀请和介绍,今天非常荣幸能够有这个机会在未来论坛分享我对人工智能未来在生命科学发展的一些看法,和我们团队做的一些工作。
我今天重点介绍的是生成式人工智能,因为大家知道,生成式人工智能最近有比较快速的发展,特别是去年年底发布的ChatGPT引起了广泛的关注。
我们今天探讨的问题是:我们有没有可能在生命科学领域搭建一个类似ChatGPT的模型呢?
我先介绍大的背景。我们现在正处在做研究最好的时代,因为我们其实正在经历着人工智能与生物技术这两种技术的双重技术革命。一方面在人工智能领域,人工智能最近十年快速发展,从2012年的ImageNet的技术突破到现在为止差不多有十年多的时间,在这期间有很多新的的技术革命,比如说以AlphaGo为代表的强化学习技术,我们知道在2016年的时候,DeepMind开发的AlphaGo系统已经能够打败人类最好的围棋选手。最近两年,生成式模型,比如说GPT3、ChatGPT这种语言生成模型能够生成比较逼真的文字。除此之外,图机器学习、几何深度学习这几年也快速发展,其中最为经典的就是AlphaFold2这个蛋白质结构预测结构模型。AlphaFold2本质上是一个几何深度学习模型,它最核心的思想是对氨基酸跟氨基酸在空间上的几何联系进行建模,有了这个氨基酸跟氨基酸空间上的几何联系之后,我们就能够比较准确地预测它们在空间上的三维结构,这个是在人工智能方面的技术革命。
另一方面生物技术近十年的发展也特别迅速,特别是以基因测序、基因合成、基因编辑这些技术为代表,现在我们可以高通量低成本地进行基因合成、基因测序以及基因编辑,从而获得大量的实验数据。
另外一方面随着以冷冻电镜为代表的结构解析技术的快速发展,我们可以很快地去解析蛋白质的结构跟功能。
在人工智能技术这块,我重点想介绍一下生成式人工智能。生成式人工智能(AIGC)最近两三年的AIGC快速发展。生成式人工智能它最核心的思想是什么?它本质上是基于大量互联网上的数据,比如大量的文本数据、大量的图像数据、大量的代码数据进行训练之后,我们可以让模型生成全新的非常逼真的文本、图像以及代码。
举个例子,文本生成模型GPT-3,它在基于大量的文本数据进行训练之后就可以生成全新的文本,比如说在这个例子里面,我们可以输入一句话,GPT-3就可以补充接下来的段落,这是文本生成膜型。类似的还有图像生成模型,比如我们可以基于一个文本的描述去生成符合这个文本语意的图像,比如在这个例子里面一个冲浪的熊猫,我们输入一句话,AI模型可以生成符合这个语意的图像。另外一个生成模型是现在讨论比较多的ChatGPT,ChatGPT是一个大规模的语言模型,对它进行优化之后,它能够用于对话系统,用户可以输入一句话,我们的AI模型会返回相应的答案,当然这个答案是AI全新生成的文本,不是说从别的地方搬过来的,用户可以再进一步跟它对话,然后机器人可以进一步提供反馈,所以它本质是一个聊天机器人。
当然,ChatGPT它的过程是什么样的呢?首先,它是大规模的预训练语言模型,针对互联网上大量的文本以及代码数据进行预训练,对模型进行预训练相当于让模型理解了这些互联网上的数据(文本以及代码)。当然只是进行这个预训练之后,这个模型还是不能用来应用在对话系统的,所以我们之后会进一步对它进行优化,让它去能够用于做对话的任务。
我们怎么优化呢?我们首先会去收集一些带标签的数据,比如我们会提供一些用户的场景,然后人去回答,给出相应的答案,我们可以收集很多这样的数据,有了这样的聊天问答数据之后,我们能够进一步去优化语言模型,这样的话我们就能够进行问答了,所以这个是第二步,就是通过标签数据进一步去优化这个模型。有了这个优化好的模型之后,第三步是让这个模型进一步跟人去进行交互,比如这个人就可以提供一些答案,这个人可以提供一些反馈,这实质上是一个强化学习的过程,通过强化学习我们可以进一步去优化这个模型,最后就得到了一个专门用于聊天对话的机器学习模型,这是生成式AI最近几年非常具突破性的一个进展。
刚才说了生物领域也经历了技术革命,特别是基因测序、基因合成为代表的技术。这些技术的进展使我们拥有大量的蛋白质序列数据和抗体序列数据(如UniProt),我们还可以去测CDR得到很多的抗体序列数据。同时,我们也有高通量的湿实验平台,通过高通量地测试AI设计的抗体或者蛋白质序列获得很多带标签的实验数据。
刚才也说了以冷冻电镜为代表的结构解析技术,现在可以很快地解析蛋白质的结构。这是PDB中结构数据数量不断增加的原因之一,也是AlphaFold2成功非常新的的原因,因为PDP里面现在有几十万的结构数据。
基于这两点,我们现在看到生成式人工智能在药物发现领域一个非常大的机会,特别是在蛋白质设计方面。为什么呢?因为对于药物发现而言,或者对于蛋白质设计而言,它的核心目标是什么?它的目标是去设计全新的蛋白质分子。所以我们希望开发一个机器学习模型,它能够生成全新的蛋白质分子。其实生成模型就是用来做这个事情,我们可以利用生成式模型去生成全新的蛋白质,生成全新的分子,这样的话,可以帮助我们找到更好的药物分子。
当然,生成式人工智能依赖于大量的数据,比如对于ChatGPT,它是基于大量互联网上的文本、代码上的预计进行预训练。在生物医药领域,由于现在基因测序、基因编辑、基因合成以及冷冻电镜等技术的发展,我们有大量的数据,比如大量的蛋白质序列数据,大量的抗体序列数据,以及结构数据,基于这些数据的话,我们也可以去预训练一个生成模型,然后基于这个生成模型,我们可以去生成全新的蛋白质。
当然我们可以看到,ChatGPT这样的语言模型在经过预训练后,它需要进一步通过与人的交互来优化这个模型。类似的,我们在药物发现里面有了这样一个预训练模型能够生成新的蛋白质分子之后,我们也希望进一步对它进行优化。当然,现在在这个情形下,我们就不是说与人交互获得反馈,在生物医药领域里,其实我们可以把AI模型跟湿实验平台交互得到反馈,比如说通过生成模型可以设计新的蛋白质序列,设计新的抗体序列。这些序列可以在湿实验平台进行合成,进行表达、提纯、测试,得到活性数据,得到功能数据,这些数据作为反馈,进一步回馈到生成模型,所以我们可以基于这些反馈数据进一步优化模型。
所以说我们可以看到,在生物医药这个领域里面,其实我们看到了一个同样的机会,我们也可以开发类似于ChatGPT这样的模型。因为在这个领域里面,我们现在有很多数据,我们也可以通过跟高通量湿实验的平台得到很多的反馈,进一步优化这个模型。
举个例子,比如我们做抗体序列的设计,在ChatGPT里面,可能用户有一个问题,在这里的话,我们的问题可能就是一个抗原的序列,或者说抗原的结构,我们的AI模型也会提供一个答案,它的答案就是由AI生成的抗体序列,这不再是与人交互得到反馈,而是进一步跟湿实验平台对这些序列做测试得到反馈,最后反馈数据进一步回到AI模型。最后通过几轮AI的模型跟湿实验的平台进行交互之后,我们就有可能找到我们想要的分子,这是一个大的思路。
接下来我就介绍我们团队生成式人工智能在生物医药做的工作,我们在小分子和大分子上都做了一些工作。早期的时候做的工作更多是关于小分子的一些建模,第一个工作是关于小分子的三维结构预测,我们知道三维结构预测是一个非常基础的问题,AlphaFold2针对的就是蛋白质大分子的三维结构预测。我们当时做的这个问题实际上是跟蛋白质结构预测非常相似,我们这里没有做大分子蛋白质的结构预测,我们做的是小分子的结构预测。对小分子的结构预测,它的输入就不是氨基酸序列,而是小分子的化学式,或者小分子的图结构,基于这个图结构,我们想去预测它的三维构象。
我们团队对这个问题研究已经有一段时间,在AlphaFold2出现之前就一直在研究,我们最新的工作是利用现在比较热门的扩散生成模型去做分子的三维构象的预测,这也是学术界第一个将扩散生成模型用于对分子的三维结构进行建模的工作。扩散生成模型本质上是做什么事情呢?它实际上是要建立两个分布之间的对应,在右边是数据分布,比如说是分子的三维构象,左边就是一个噪声分布,在扩散模型里面首先有一个前向的过程,从数据分布到噪声分布,我们通过加一些噪音,做一些随机扰动,在每一步把原子的坐标进行随机扰动,进行多次扰动之后,分子的构象就退化成一个完全随机的噪声了,这是扩散模型的前向扩散过程。
在实际情形中,我们关心的是另外一个过程,就是反向的生成过程,也就是我如何从一个随机的结构出发生成一个稳定的结构,在这个生成过程在每一步需要做的就是去噪,我们从一个完全随机的分子三维构象,通过不断地去噪,不断得到更好的分子三维构象。所以说这个模型里面最新的的组成部分就是去噪网络。那么如果跟物理原理联系起来,怎么理解我们神经网络的每一步呢?在每一步可以理解为我们模型在学习作用在每个原子上的力。我们是利用神经网络、用数据驱动的方法去学习力场。当学习到作用在每个原子上的力之后,我们可以根据力场调整原子的位置,然后慢慢地收敛到一个稳定的结构。另外因为原子上的力,它实际上是符合旋转、平移等变身,也就是说如果我旋转我输入的结构,我作用在原子上的力也是要做对应的旋转,所以我们的神经网络实际上也需要符合这样一个性质。
这里我展示一下例子,这是我们输入不同的分子图,最后模型其实能够做到多个不同的稳定的结构,右边的示意图是扩散模型如何去找到分子比较稳定的结构。刚开始的时候每个原子的位置都是随机初始化的,在每一步的去噪过程,每一步我们会去模拟作用在每个原子上的力,通过这个力来调整每个原子坐标,通过多步这样的去噪之后,最后整个分子就收敛到一个比较稳定的结构。所以它其实有点像是在用数据驱动的方法学习力场,这就是单个分子的结构预测。
后来我们对这个工作进一步进行了拓展,我们想能不能去预测复合物的结构呢?比如我们预测蛋白质和配体的复合物结构,对于这个问题输入还是有一个小分子的图结构或者它的化学式,除了小分子的图结构,在这个情况下我们的输入还有蛋白质的三维结构。基于这两个输入的话,我们想去预测最后蛋白质和小分子两者结合的情况,也就是它们的复合物结构。对于这个问题,我们提出了一个编码跟解码器这样一个框架,所以其实它本质上也是基于扩散生成模型的。我们这个模型首先有一个编码器,它最主要的目的是对分子图、蛋白质的结构以及它们之间的相互作用进行建模。在利用编码器对它们之间相互作用的建模过程中会考虑到它们的几何约束。在编码器后,我们进一步会有一个解码器,会进一步推断这个复合物的结构,这个解码器本质上就是一个生成模型,或者是一个去噪网络。所以刚开始的时候,蛋白质跟配体的结构也是随机初始化的,每一步也会做去噪,或者优化复合物结构,经过多轮优化之后,最后能够收敛到一个比较稳定的结构。
这个图展示了模型如何去推断复合物结构的过程,绿色是蛋白质的结构,右边灰色是真实的配体结构,粉红色是模型预测的配体结构。我们可以看到,刚开始的时候粉色的结构是随机初始化的,模型在每一步会去优化、调整配体的结构,经过多轮优化之后,我们可以看到这个模型的预测就能够收敛到真实的配体位置,所以上我们在每一步也可以看作是在去噪,通过学习一个力场去调整原子的位置。这边是一些量化的指标,与传统的方法做了对比,我们已经有比较大的提高,当然未来还有比较大的提升空间。
前面是关于小分子这块做的工作,我们最近基于扩散生成模型开始做很多大分子蛋白质设计方面的工作,蛋白质设计里一个非常新的的问题是从头设计(De novo design)——有没有可能通过AI的方法去生成或者设计全新的蛋白质结构和序列。在从头设计这一领域,最近两三年已经有了比较大的突破,比如国外华盛顿大学David Baker在前两年开发了RoseTTAFold,后面他们又进一步将模型拓展到蛋白质设计领域,他们去年发布了RFdiffusion这个算法,它本质上也是一个扩散模型,是用于蛋白质设计的,它的核心思想是基于整个PDB的结构数据做训练,然后生成全新的蛋白质结构和序列。
我举个例子,比如说现在有一个靶点,我们想去设计一个配体,RFdiffusion可以通过两阶段去设计它。首先基于这个靶点,模型会生成一个结构,这个结构可能会跟这个靶点结合。当然第一步只是得到了结构,并没有得到序列,所以在第二步的时候会利用一个序列设计模型(如ProteinMPNN),基于这个结构进一步设计蛋白质序列。这是他们现在一个比较好的算法,他们基于这个算法对很多靶点都进行了序列设计,在实验当中现在的成功率还是非常不错,特别是与两三年前他们开发的物理算法已经有了比较大的提高。这个RFdiffusion算法和RoseTTAFold,他们之前开发的蛋白质结构预测算法实际上是非常相似的,它们本质上都是在每一步不断优化结构。当然与RoseTTAFold不一样的是,RoseTTAFold的序列是给定的,而在RFdiffusion扩散生成模型里面,这个序列没有给定。
我们在这个方向也做了一些工作。这是我们去年做的一个工作,我们的工作与他们的算法有些不同。他们的算法是两阶段的,首先去设计结构,再去对结构进行设计。我们提出了一个新的算法,同时设计蛋白质结构和序列。这个算法基于扩散生成模型,刚才说了扩散生成模型最核心的思想就是每一步进行去噪,去优化结构,以及同时优化序列。所以在这个方法里面,我们其实也是有这样一个去噪网络,我们的输入是一个蛋白质序列,蛋白质结构,以及靶点的相关信息,而我们的模型会重新去针对这个靶点去优化蛋白质序列和结构,这是一步,我可以通过多步这样的过程不断优化,直到最后找到一个比较理想的蛋白质结构和序列,这是我们模型的核心思想,它本质上也是基于扩散生成模型。
基于这个模型,我们做了一些蛋白质设计,一个是做抗体的CDR loop的设计。我们现在有一个抗原跟抗体的复合物,我们设计的时候把抗体的六个CDR loop遮盖掉,利用我们的模型重新生成新的CDR loop,我们发现我们模型找到的结构和序列与自然界当中真实存在的抗体的差距比较小,也就是说我们现在模型能够很好地还原出那些自然界已经存在的抗体序列,这是一个例子。
另外,我们也做了一些其他的例子,比如说在这个例子里面,对一个自然界当中的蛋白质,比如说这块有一个loop,我们希望它能生成更长的loop,这个例子里我们实际上是设计了不同大小的β-桶状蛋白,而对于这个例子,我们实际上是去设计了具有指定个数的α-螺旋跨膜蛋白。
最后这个例子,我想简单介绍一下我们最近基于生成模型或者ChatGPT这类模型在抗体设计、优化上的最新的工作。对于抗体优化,首先我们有一个抗体跟抗原的复合物结构。在这种情况下,很多时候我们在实验当中得到了抗体,它的亲和力是不够好的,我们可能会对这个抗体进行一些突变,去优化它的亲和力。我们其实最近的工作也是搭建了一个类似于ChatGPT的模型,这个模型其实也是包含三部分,第一部分是有预训练生成模型;第二部分是基于监督学习对生成模型进行优化,然后我们再把这个模型跟湿实验进行闭环,进行相互反馈优化。我们首先是基于大量的蛋白序列以及蛋白质复合物结构进行了预训练,经过预训练后,得到的AI模型能够比较好的理解蛋白质跟蛋白质是怎么去结合的。此外我们还有一个带标签的实验数据集,SKEMPI数据——给定一个蛋白质的复合物,然后大家对一些它的interface上的氨基酸进行突变,突变完了之后能量的变化,我们就得到了实验数据。基于这个数据集,我们对AI模型进行了优化,最后我们就可以得到一个蛋白质优化或者抗体优化模型。然后我们再去基于这个AI模型设计一些新的抗体序列,在湿实验里面做测试,去测亲和力,得到这些活性或者亲和力数据之后,我们再反馈给AI模型,做重新一轮的AI的序列设计,经过多轮之后,我们就可以找到比较理想的抗体序列或者分子。
展示一下我们做的实际的湿实验的结果,这是跟复旦大学做的合作,对CR3022这样一个新冠抗体进行了优化,CR3022是从病人身上得到的一个抗体,我们是基于AI模型去做了序列设计,进行了湿实验测试,现在迭代了两轮之后,我们发现了比较理想的抗体分子,它实际上是原来的抗体分子经过三个突变产生的新抗体分子,与原先的抗体分子对它的亲和力强了很多,比如说对于德尔塔这个变种,亲和力提高了3倍,对于奥密克戎这个最新的变种,我们发现我们找到的最新抗体的序列跟原来的序列,亲和力提高了接近9倍。
最后稍微提一下,特别同意刚才鄂维南院士说的,我们需要建立一个社区,一个平台,来推动AI for Science,所以我们团队也是在积极建立开源社区,TorchProtein是我们跟几个公司建立的一个专门针对蛋白质表征学习和设计的开源机器学习平台。
总结:现在我们处在最好的时代,因为我们正在经历着人工智能和生物技术的双重技术革命。在人工智能领域,生成式模型快速发展,我们现在可以基于大量的数据,文本数据、图像数据、代码数据训练生成模型,从而生成全新的文本、图像或者是代码。另外一方面,在生命科学领域,由于基因测序、基因编辑、基因合成、冷冻电镜这些技术的快速发展,生命科学领域的数据快速增长,而且增长速度已经高于摩尔定律。有了这些数据之后,我们可以对我们的生成模型进行训练,之后我们可以生成全新的药物分子。AI设计得到的药物分子可以进一步跟湿实验平台进行交互,进行闭环优化。生成式模型未来不仅仅是在生物医药,在其他的领域,包括农业、食品、材料、能源、环境等多个领域都会产生新的的影响。
我今天的分享就到这里,谢谢大家。
版权说明:
未经主办方及/或嘉宾授权,任何机构和个人不得以任何方式传播视频中及文中的PPT内容;
未经授权严禁任何形式的媒体转载和摘编,并且严禁转载至微信以外的平台!