OmegaFold、EquBind、RELATION、BIMODAL…你都掌握了吗?一文总结生物制药必备经典模型(二)
机器之心专栏
本文将分 3 期进行连载,共介绍 19 个在生物制药任务上曾取得 SOTA 的经典模型。
第 1 期:RaptorX、AlphaFold、AlphaFold2、RoseTTAFold、DeepAccNet、ESMFold
第 2 期:OmegaFold、EquBind、RELATION、BIMODAL、GF-VAE、MCMG
第 3 期:MGM、MolGPT、Iterative Refinement LSTM、PAR、Uni-Mol、K-Bert、MolCLR
您正在阅读的是其中的第 2 期。前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及 API 等资源。
第 1 期回顾:RaptorX、AlphaFold、DeepAccNet、ESMFold…你都掌握了吗?一文总结生物制药必备经典模型(一)
模型 | SOTA!模型资源站收录情况 | 模型来源论文 |
---|---|---|
OmegaFold | https://sota.jiqizhixin.com/project/omegafold | High-resolution de novo structure prediction from primary sequence |
EquBind | https://sota.jiqizhixin.com/project/equbind | EquiBind: Geometric Deep Learning for Drug Binding Structure Prediction |
RELATION | https://sota.jiqizhixin.com/project/relation | RELATION: A Deep Generative Model for Structure-based De Novo Drug Design |
BIMODAL | https://sota.jiqizhixin.com/project/bimodal | Bidirectional Molecule Generation with Recurrent Neural Networks |
GF-VAE | https://sota.jiqizhixin.com/project/gf-vae | GF-VAE:A Flow-based Variational Autoencoder for Molecule Generation |
MCMG | https://sota.jiqizhixin.com/project/mcmg | Multi-constraint molecular generation based conditional transformer, knowledge distillation and reinforcement learning |
1990年代后期,计算生物学开始成为生物学中非常重要的一部分。在大热的AlphaFold掀起浪潮之前,就有科学家断言:所有生物学都是计算生物学。AI或者深度学习的出现,给计算生物学带来了新的巨大的发展空间。
对于生物学本身,传统的实验和分析手段已难以充分开发海量生物数据,确实需要计算生物学这种跨学科同时兼顾多个细分领域的综合性工具来解决问题。在具体实验方法上,当前绝大多数采用的都是基于已有数据库和资源、利用成熟工具来解决特定问题或自行设计统计分析、数值计算的方法,而计算生物学的出现让干湿实验结合的新方法开始走向主流(在生物上讲,干实验就是通过计算机模拟以及生物信息学方法来进行研究。湿实验就是通过在实验室里采用分子、细胞、生理学试验方法进行研究)。引入AI,实现了对在传统的湿实验环境中的假设的验证,干湿实验共同迭代加速,AI和传统科研结合带来的巨大潜能,有望带来一场全新的科学革命。
在计算生物学中,AI的应用主要有三类:一是,计算推演生物性质及原理,包括:蛋白质结构预测、致病机理研究、蛋白质相互作用预测(PPI)、抗体和抗原的表位预测、基于基因组学寻找疾病成因或寻找新型的生物标志物等。(生物标志物是指可以标记系统、器官、组织、细胞及亚细胞结构或功能的改变或可能发生的改变的生化指标,可用于疾病诊断、判断疾病分期或者用来评价新药或新疗法在目标人群中的安全性及有效性。)这些研究的成果后续可用于得到新的药物靶点等,为疾病治疗提供基本思路。二是搭建预测及判断模型,包括:AI制药中基于靶点的化合物性质预测(主要涉及小分子药物开发),疾病诊断/监控/治疗建模,涵盖细胞/器官/人体的生物模拟器等。其中,生物模拟器的本质功能是用于验证特定疗法有效性的生物模拟器,可以简单理解为生物医药领域的数字孪生。三是对生物体进行控制改造,包括:新疗法/药物开发、精准医疗和生物制造(以合成生物学为代表)。其中新疗法/药物开发是目前落地最成熟的场景。再往细来说,对癌症的个性化治疗和基因组学也将成为精准医疗中最先落地的场景。AI应用于新药开发,可以实现药物靶点发现、药物筛选和结构优化、合成路线等。
本文聚焦于生物制药中必备的TOP模型,具体来说就是第三类AI应用中的主要模型,可以运用到整个药物从研发、中试到生产的所有关键技术环节。上面提及的第二类AI应用主要是生物医药领域的数字孪生,不包含在本文的讨论范围内。
本文回顾的必备TOP模型主要包括蛋白质结构预测和蛋白设计、分子生成、分子表征和性质预测这三类应用,而化学合成/逆合成及其它大数据分析应用等,暂不包含在本文讨论的模型范围中。AI的各种模型和算法应用在生物制药领域,需要与对应的生物学、医学知识高度结合,因此,本报告中对必备TOP模型的介绍主要是从AI建模的角度对模型总体架构和整体设计思路进行介绍,各个模型设计的技术细节、模型调参等思路和技术创新点,需结合原文和所应用的医学场景深入理解。
一、蛋白质结构预测和蛋白设计
1、 OmegaFold
AI预测蛋白质3D结构,仅通过单条蛋白序列就能搞定。也就是说,AI预测蛋白质结构,可以不需要蛋白质进化过程中的同源信息。一些人工设计的蛋白质药物和工业合成用酶,也可以通过AI预测3D结构,确定其对人体的功能,实现这一功能的模型就是OmegaFold。OmegaFold的整体模型在概念上受到自然语言处理的语言模型以及AlphaFold2中使用的深度神经网络的最新进展的启发。
图1 OmegaFold的模型结构。主要的蛋白质序列首先被送入一个预训练的蛋白质语言模型(Omega protein language model,OmegaPLM),以获得残基级节点嵌入和残基-残基配对嵌入。然后,一堆Geoformer层迭代更新这些嵌入,以提高其几何一致性。最后,一个结构模块从最终的嵌入中预测出三维蛋白质结构。预测的结构和嵌入可以通过循环程序再次输入到另一个循环中,以预测更精细的结构
这项工作专注于设计一个内存高效的自注意力架构,通过改进以前的PLM的不同组件,如位置编码功能、非线性转换和归一化功能,使PLM更加深入。OmegaPLM的整体架构是一个自注意力模型,其中,每个token是一个氨基酸。OmegaFold模型用一堆GAU层来处理一个蛋白质序列,而不是用自注意力层和多层感知器。该模型包含66个层,大约有6.7亿个参数,没有共享参数。令n_i∈R^d作为位置i的token的d维向量表示,Algorithm 1中给出了OmegaPLM的详细过程。
Pre-LayerNorm。如算法1所示,引入pre-LayerNorm操作,将层归一化放在残差块之间。正如最近的研究表明,预层规范化能够产生更稳定的梯度,特别是在初始化时。目前在不同的深度学习包中普遍存在的归一化层的实现,通常包含element-wise的仿射变换,其参数可学习,紧随其后的是许多 pre-layernorm Transformers的线性操作。然而,这种配置在数学上并没有意义,只会在训练期间选择优化器造成的微小差异。因此,删除了pre-LayerNorm中的所有element-wise仿射变换。
Gated Attention Unit。没有使用多头自注意力(multi-headed self-attention,MHSA),而是采用了门控注意单元(GAU)(算法1中的第8行),它作为多头自注意力的替代品,具有较小的内存消耗和较快的收敛率,显示出巨大的前景。在注意力聚集后应用门控操作,用relu2(-)取代传统的softmax(-)函数来聚集成对的对数。特别是,使用一个额外的门控向量gi∈R^dv,其中dv是价值向量的维度,后来以元素方式与价值vj的加权和相乘(第8行)。
Relative Positional Encoding (RoPE)。注意力机制本质上是变异的,所以它在应用于序列数据时需要位置信息。这里我们应用旋转位置嵌入(rotary positional embedding,RoPE)(算法1中的第5行和第6行)来编码一对氨基酸的位置信息,其定义见算法2。利用复数的特性解决了这个问题,并将这种机制应用到查询和密钥中。为了进一步强调相对位置信息的影响,引入一个偏置项b_i-j,它是针对位置i和j的。注意b_i-j和b_j-i的值是不同的。没有随着绝对相对位置的增加而减少嵌入值,而是对相对位置进行剪辑以允许extrapolation。
项目 | SOTA!平台项目详情页 |
---|---|
OmegaFold | 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/omegafold |
2、 EquBind
EquBind的工作发表在ICML 2022中。之前典型的‘配体-蛋白质’方法,就像试图让模型将钥匙插入一个有许多锁孔的锁中,需要花大量时间对钥匙和每个锁孔的配合度打分,然后选择最合适的那个。而EquBind可以跳过最耗时的步骤,遇到新分子时可提前预测最合适的‘锁眼’,这就是所谓的‘盲对接’。其内置的几何推理算法,可帮助模型学习分子的基本结构。该算法允许EquBind在遇到新分子时直接预测最合适的位置,而不是花费大量时间尝试不同的位置并对其进行评分。即,EquBind依靠SE(3)等价图神经网络来预测结合的蛋白质配体构象,只需一次就能完成。EquBind将配体分子图与随机关联的非结合三维构象体以及受体结合结构作为输入,详细结构如图2所示。
图2 EquBind结构
K-NN图的表示。将两个输入分子表示为空间k-近邻(k-NN)图。配体图G = (V, E)使用原子作为节点,其各自的三维坐标来自未结合的构象体,表示为X∈R^3×n,以及初始特征F∈R^d×n(例如原子类型)。边缘包括距离在4˚A以内的所有原子对。受体图 G‘ = (V’, E‘) 将残基作为节点,其三维坐标X0∈R……3×m由α-碳的位置给出。每个节点在图中都与最近的10个其他节点相连,距离小于30˚A。
Independent E(3)-equivariant transformations。使用独立E(3)-变量图匹配网络(IEGMN),它结合了图匹配网络和E(3)-变量图神经网络。这种架构共同转换特征和三维坐标,以进行神经图内部的信息传递。
IEGMN(X, F, X’ , F’ ) = Z ∈ R ^3×n, H ∈ R^ d×n, Z’ ∈ R^ 3×m, H’ ∈ R^ d×m。IEGMNs的核心属性是,堆叠任何数量的此类层都能保证原始输入结构的任何独立旋转和平移都将准确地反映在输出中。在实践中,图11所示的Z、H、Z'、H'输出是通过堆叠几个IEGMN层得到的。我们对单个第l层的选择是:
Z的作用。表示为Z和Z'的坐标E(3)等价变换的输出将被用于不同的作用:识别刚体变换和结合点,以及通过训练Z来表示变形的原子点云来模拟配体的灵活性。
项目 | SOTA!平台项目详情页 |
---|---|
EquBind | 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/equbind |
3、RELATION
基于深度学习的从头分子设计最近获得了相当大的关注。许多基于深度学习的生成模型已被成功开发出来并应用于设计新的分子,但其中大多数是以配体为中心的,target binding pockets的三维几何形状在分子生成中的作用还没有得到很好的利用。为此,提出了一个新的基于三维的生成模型,称为RELATION。在RELATION模型中,BiTL算法被专门设计用来提取蛋白质-配体复合物的所需几何特征并将其迁移到一个潜在的空间进行生成,在引入双向迁移学习后,隐藏层的采样能够同时兼顾生成分子的骨架片段的新颖性以及对靶标蛋白的亲和性。应用药效团约束生成( pharmacophore conditioning)和贝叶斯优化(BO)采样,能够有效地浏览巨大的化学空间,可供用户定制化生成药效团匹配度更高以及对靶标的对接打分表现更好的分子。
RELATION框架由两个部分组成:(1)3D编码器,使用了3D-CNN的结构,包括私有编码器和共享编码器。附带SMILES标签的训练源域数据以及目标域数据转换成4D张量后,分别作为私有编码器和共享编码器的输入。所有的编码器具有相同的架构,均具有8层,第一层包含64个过滤器,然后在奇数层上加倍,最后一层学习512个过滤器。每一个偶数层后面都有一个额外的池化层,核数、步长和填充为2,用于执行下采样。利用ReLU激活函数对3D-CNN模型进行训练,并使用两个输出为512维的全连接层得到μ和σ,对其重参数化后,生成一个的1024维嵌入向量;(2)解码器,解码器的结构是caption-LSTM,可以将隐藏层内的高维向量转化为SMILE分子式,caption-LSTM由三层组成,其词汇量输入大小为39,隐藏大小为1024。
图3 RELATION架构
为了实现双向迁移,定义损失函数如下:
在迁移学习中引入L_sim和βL_diff,使得隐藏层在生成过程中不仅考虑了源域数据集和目标域数据集的相似性,也保留了源域数据集(结构多样性)和目标域数据集(蛋白-配体亲和力)各自的特征。L_sim项能够保证共享隐藏层中小分子与复合物的相似性。L_latent表示编码器由均值和单位方差均为零的多元高斯分布先验进行正则化,表示为:
最后,L_caption用来测量原始输入和通过字幕网络产生的输出之间的重建损失。
项目 | SOTA!平台项目详情页 |
---|---|
RELATION | 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/relation |
二、分子生成
1、 BIMODAL
循环神经网络(RNN)能够使用简化的分子输入线输入系统(SMILES)字符串表示的化学结构来生成新的分子设计。基于RNN的结构生成通常是单向进行的,通过从左到右增长SMILES字符串。然而,小分子没有自然的起点或终点,SMILES字符串本质上是分子图的非单点表示。这些特性促使了双向结构的生成。这篇文章介绍了用于基于SMILES的分子设计的双向生成性RNNs,实现了两种既定的双向方法,并引入了一种用于SMILES字符串生成和数据增强的新方法:双向分子设计交替学习法(BIMODAL)。作者将这三种双向策略与用于SMILES字符串生成的单向正向RNN方法进行了比较,内容包括(i)计算机生成的分子的新颖性,(ii)支架的多样性,(iii)化学-生物学相关性。
图4 (a) SMILES字符串,从分子图表示中获得,每个原子用其元素符号表示,而分支和连接性用符号或小写字母表示(例如,"( )"、"="和 "c "分别表示分支、双键和芳香族碳)。图中给出代表药物布洛芬的三个SMILES字符串的示例;用于SMILES字符串生成的起始原子用灰色数字表示。(b) 带有一个递归神经元层的前向RNN的简化方案。RNNs是一个动态系统的模型,其中任何一个时间点t的网络状态都取决于当前的观察(x_t)和之前的状态(t - 1),并被用来预测输出(y_t)
以SMILES字符序列("token")作为输入,RNN模型根据序列的前一部分和概率估计,每次学习预测一个token(图4b)。可以从学到的概率分布抽样新的SMILES字符串。RNNs通常被训练成以 "向前 "的方式读取和生成SMILES字符串,即从左到右。然而,SMILES表示可以从任何非氢原子开始,按任何方向进行生成(图4a)。与自然语言不同,小分子没有唯一定义的起点和终点。非单向性和非方向性提供了探索双向序列生成的机会,即在前向和后向都能读取和生成SMILES字符串的方法。然而,纯粹的从头开始("端到端")的双向SMILES生成至今还没有被探索过。BIMODAL就是一种双向生成性RNNs。
给定一个输入序列,生成式RNNs被训练成通过预测下一个序列标记来扩展这个序列,定义为y_t = x_t+1。使用带有LSTM单元的RNNs以解决由长序列和大型网络结构引起的梯度消失和梯度爆炸问题。在任何给定的第t个时间步长,这样的网络由以下一组方程描述:
最常见的用于序列生成的RNNs版本从左到右进行(前向),即从t=1到t=L,其中,L是SMILES序列的长度。在训练过程中,输入的第一个位置被填入一个序列开始的token,而输入的最后一个位置被填入一个序列结束的token。一旦RNN模型被训练好,新的序列就会通过(i)输入起始token("G"),(ii)允许模型逐步选择下一个token,给定各自的前一个token序列,直到生成结束token("E")(图5a)。在每一个时间步长t,每一个第k个符号跟随生成的字符串的前一部分的概率是用一个softmax函数计算的
图5 基于RNN的SMILES字符串生成方法。SMILES生成从起始token "G "开始,按预定方向进行。(a) 前向RNN。从起始token "G "开始,从左到右添加新的token。(b) BIMODAL方法:在每个时间步长(t)交替生成token。该模型使用整个序列(前向和后向)来生成下一个token。(c) 前向-后向模型。从 "G "token开始,每个时间步长预测两个token,两边各一个。(d) NADE方法:缺失的 "假 "token("M")被替换为有效的SMILES字符,可以向字符串的中心或以随机方式替换
在任何第t个时间步长,BIMODAL沿前向(x_m→x_t)和后向(x_t←x_m)方向读取x={x_m, x_m+1, ..., x_t},在两个方向上生成SMILES序列。然而,通过同时使用从左到右(向前)和从右到左(向后)的信息,每一步只有一个token被交替预测。BIMODAL由两个RNN组成,每个方向(前向和后向)都有一个读取序列,然后结合起来提供一个联合预测(y_t):
在SMILES的生成设置中,BIMODAL在每个时间步长t的前向和后向都会读取序列(图5b)。然后,它在前向或后向生成一个新token:
项目 | SOTA!平台项目详情页 |
---|---|
BIMODAL | 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/bimodal |
2、 GF-VAE
GF-VAE是一种用于分子图生成的基于流的变分自动编码器(VAE)模型。该模型在原来VAE的基础上增加了Flow模型解码器。其中,编码器主要是加速解码的训练,而解码器则依次优化编码器的性能。由于流模型的可逆性,生成过程很容易通过反转解码器来完成。因此,GF-VAE继承了VAE和基于流的方法的优点。给定𝑅键的类型和𝑀原子的类型,分子图可以用𝐺=(𝐴,𝑋)表示,其中,𝐴∈{0, 1}^𝑁×𝑁×𝑅是𝑁原子的邻接张量,𝑋∈{0,1}^𝑁×𝑀为一个显示𝑁原子节点类型的特征矩阵。我们的主要目标是从给定的图集G中学习生成模型𝑝G(𝐺),使从分布𝑝G中抽取的样本是一个有效的分子图。GF-VAE的架构如图6所示。
图6 GF-VAE的结构(训练)
Flow-generator由两个部分组成:atom flow用于近似原子的分布,bond flow用于捕捉键的分布。通过向𝐴和𝑋添加一个均匀的随机噪声𝑈[0,1]来对𝐺进行去量化处理:
将得到的𝐺′=(𝐴′,𝑋′)送到流生成器(Flow-generator),学习从原空间到潜在空间的偏射,使潜在空间中映射的图向量遵循高斯分布。由于我们已经获得了高斯分布中的VAE编码向量z,原子流和键流只需要将𝑋′和𝐴′贴近z,而不是进行像完全边际归一化流模型那样多的工作来映射到标准高斯分布。
对于bond flow,以Glow模型为基础。它为z𝐴𝑁(𝐴′)学习了一个可逆映射,它将𝐴′∈R^𝑅×𝑁×𝑁映射到z𝐴∈R^𝑅×𝑁。使用图16中bond flow中从下到上的所有过程,如squeeze+actnorm、可逆1∗1卷积,以及掩码卷积。对于bond coupling layer,类似于图像处理中使用的,通过3×3𝑐𝑜𝑛𝑣2𝑑→𝑐ℎ𝑁𝑜𝑟𝑚→𝑅𝑒𝐿𝑢层并堆叠𝐾𝐵次建立。此外,整个模块被堆叠𝐿𝐵次以提高映射性能。
对于atom flow,通过𝑜𝑚𝜔(𝑋′,𝐴)学习一个可逆的映射函数来得到z𝑋∈R^𝑁×𝑀。如图16的atom flow所示,atom affine coupling layer由𝐾𝐴次叠加𝑐ℎ𝑁𝑜𝑟𝑚→𝑅𝑒𝐿𝑢→𝑅𝑒𝐿𝑢层与多层感知器(MLP)输出层组成。这里𝑔𝑟𝑎𝑝ℎ𝑐𝑜𝑛𝑣也由Relational-GCN实现。由于二维原子矩阵中没有通道,需要对每一行而不是每一个通道进行归一化处理,这与屏蔽卷积过程类似。此外,整个模块被堆叠了𝐿𝐴次,以达到更好的映射性能。由于𝑓𝑎𝑡𝑜𝑚𝜔和𝑓𝑏𝑜 都是可倒置的,给定潜在向量z𝑋和z𝐴来自已知先验分布,给定图形的概率𝐺=(𝐴,𝑋)可以计算为:
图7 GF-VAE中的原子流和键合流
生成过程如图17所示,首先从标准高斯分布中提取随机样本z,并将其分成zA和zX。由于Flow模型的生成器(𝑓𝑎𝑡𝑜𝑚𝜔和𝑜𝑚𝜔)是可逆的,只需将zA放入𝑓𝑎𝑡𝑜𝑚𝜔,zX放入𝑜𝑚𝜔,但顺序相反。值得注意的是,原子流和键流可以在训练中同时进行,因为它们的更新是相互独立的。然而,原子流在生成过程中需要有效的键张量作为输入。因此,需要首先在zA上应用键合流的反向步骤以得到键合张量𝐴。然后,把它和zX一起送入原子流的反向步骤,得到原子张量𝑋。最后,把原子张量和键张量放入有效性修正模块,得到最终生成的分子。
图8 GF-VAE的生成过程
项目 | SOTA!平台项目详情页 |
---|---|
GF-VAE | 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/gf-vae |
3、 MCMG
MCMG是一种基于知识蒸馏的多约束分子生成方法,该方法将Conditional Transformer和强化学习算法相结合,满足多个约束条件。利用条件Transformer训练分子生成模型,有效地学习并将结构性质关系纳入有偏生成过程中。然后利用知识蒸馏模型降低模型的复杂度,通过强化学习对模型进行有效的微调,增强生成分子的结构多样性。
MCMG由三个部分组成 :先验模型、基于RNN的蒸馏模型、使用RL微调的专家模型。蒸馏模型可以帮助学习到更加specific的信息,从而平滑不必要的噪音。MCMG模型的工作流程如图 18 所示。首先训练一个c-Transformer,然后将该c-Transformer蒸馏为RNN,以便后续与RL的应用。蒸馏后的RNN不仅可以减轻RL的训练负担,还可以提升生成分子的结构多样性。
图9 MCMG结构
Prior model的架构如图 18B 所示。该模型学习生成具有由一组条件标记编码的特定的分子。Prior model在训练过程中学习了约束和SMILES的联合嵌入;除了约束代码的处理外,其余的训练过程类似于标准的seq2seq训练。由于Transformer模型庞大,直接通过 RL 算法进行微调较为困难,并且这种c-Transformer的重构化学空间过于集中,将产生易于陷入局部最优的潜在问题。为了应对这一挑战,作者采用并比较了两种知识蒸馏方法。第一种是构建具有三层门控循环单元(GRU)的RNN,以学习从prior model中采样的分子子集;第二种是直接使用c-Transformer模型生成100万个所需分子的数据集(给定一组适当的条件token),然后使用该数据集训练具有上述相同结构的RNN。作者将蒸馏模型和以这种方式训练的最终模型分别命名为蒸馏分子模型(DM)和MCMG分子模型(MCMGM);此外,作者还提出了两种不同的模型,semi-DM和semi-MCMGM,试图只引入方便计算且可靠的标签,例如QED和SA,避免标记具有预测生物活性的分子。最后,作者采用了REINVENT模型中用到的RL 算法来微调蒸馏模型,并为药物设计中分子生成通常需要的多个目标构建定制的奖励函数。
项目 | SOTA!平台项目详情页 |
---|---|
MCMG | 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/mcmg |
前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及API等资源。
网页端访问:在浏览器地址栏输入新版站点地址 sota.jiqizhixin.com ,即可前往「SOTA!模型」平台,查看关注的模型是否有新资源收录。
移动端访问:在微信移动端中搜索服务号名称「机器之心SOTA模型」或 ID 「sotaai」,关注 SOTA!模型服务号,即可通过服务号底部菜单栏使用平台功能,更有最新AI技术、开发资源及社区动态定期推送。
微信扫码关注该文公众号作者