Py学习  »  机器学习算法

Stanford | 基于蛋白-配体复合物的几何深度学习指导基于片段的配体生成

DrugAI • 1 年前 • 120 次点击  

编译 | 刘名权

审稿 | 夏忻焱

本文介绍一篇来自于斯坦福大学计算机科学系Ron O. Dror教授组的分子生成工作——《Fragment-Based Ligand Generation Guided By Geometric Deep Learning On Protein-Ligand Structure》。计算辅助新型分子设计有可能加速药物发现。然而,在药物发展中分子优化是一项耗时的工作,通常需要花费数年对分子的多种性质同时进行优化。将一个能和蛋白质口袋结合的小的、片段状初始分子扩展成更大的分子,使之与已知药物的物理化学性质相匹配,这是生物信息学中一个特定的分子优化问题。针对这一问题,作者使用数据有效的E(3)等变网络和3D原子点云表征进行建模,这种方法能结合蛋白质口袋的3D空间信息同时生成合理的分子,从而加速药物发现过程。通过对多种性质进行评估证明该框架确实能生成可行的分子。

1

介绍

药物发现和设计旨在于找到能治疗人类疾病的新型分子。这些分子能结合并控制人体内靶蛋白和其他生物分子的活性。然而,药物发现过程相当漫长而且昂贵。大量的分子会被重复的探索并筛选出最有可能成为可行疗法的候选分子。


在这个工作中,作者关注于一个特定的分子优化任务:将一个与蛋白质口袋结合的、小的、片段状的初始分子扩展成为一个更大的、更像药物的分子。基于片段的筛选策略(核磁共振﹑X射线晶体学﹑虚拟筛选)和天然分子(激素﹑肽)可以对挑选初始片段进行指导。扩展这些片段状的分子会产生更理想的药物特性,如通过增加与蛋白质结合位点的相互作用来提高对蛋白质目标的亲和力和特异性。然而,由于以下几个原因使得这项任务具有挑战性且成本很高:1)许多特性必须同时优化,其中一些特性的预测本身对化学家和算法来说具有不小的挑战性。这些特性包括与目标蛋白的结合能力(亲和力)、在水和脂肪中的溶解度、分子大小和合成的难易程度;2)化学空间太大,要完全列举出来是不可行的。需要一种搜索策略来产生有用的候选药物清单供药物化学家使用。而AI代理可以利用快速增长的分子数据集学会有效地解决这些问题。


不幸的是,目前用于分子生成的机器学习方法并不适合这项任务。许多生成模型的目的是产生全新的分子,而不是明确地扩展最初的候选配体(配体是可以与蛋白质结合的分子)。基于变分自编码器的方法可以产生与输入分子相关的各种分子,但却难以产生比输入更大的分子。另一个挑战是,许多方法没有在三维蛋白质口袋的环境下生成配体,而且是根据仅有的分子指标进行评估,忽略了与蛋白质的相互作用。


为了解决这些问题﹐作者提出了一个在3D空间下的、考虑蛋白质口袋和配体相互作用的、由行为克隆指导配体扩展的框架,框架的介绍如下。


2

方法

动作空间

框架的核心是基于当前的分子状态选择下一动作。初始状态是种子配体分子和蛋白质口袋的3D原子结构(原子三维坐标,元素,键)。AI代理顺序的向配体中添加片段,通过单键进行连接,直到配体的分子质量达到用户指定的目标(图1)。这些片段选自含有配体中28个常见官能团的数据库。每一个动作被分解为两个步骤(1)选择要附着碎片的位置(2)对于给定位置,选择哪种片段进行添加和确定附着几何体的二面角。作者训练了两个模型分别对每个步骤进行预测。


在定位步骤中,配体氢原子对应于可以附着新片段的可能位置(将被片段替换的氢原子)。因此,模型被训练成一个二分类器输出每一个氢原子的分数,根据分数来判断该氢原子是否是一个附着点。在片段步骤中,给定一个带有候选附着片段的配体,模型对其评估并输出一个标量分数。所有的候选状态(包括片段和二面角)都已经被生成,使用模型分数对它们进行排序。


可以自定义动作选择过程,比如使用贪心策略,对于每个状态都选择出最高分数的动作。或者,可以使用模型分数作为启发采用更随机的搜索策略从而输出一组多样的配体。在该工作中,作者采用的是贪心策略。

图1:几何深度学习指导片段序列添加的配体生成方法.

模型架构

为了从原子结构中预测下一步行动,作者使用了作用于3D点云上的E(3)等变性神经网络。这种3D空间的点表示方法允许我们能更精确的表示原子之间的相对位置,这对于捕捉配体和蛋白质原子之间的相互作用非常重要。此外,网络内在的旋转等变性质允许在相对小的蛋白质-配体复合物数据集上更有效的进行学习。


该架构有两大组成部分:(1)编码单元和(2)聚合单元(图2)。编码单元使用了两层序列化应用,每一层依次包含了自相互作用层、点卷积层、自相互作用层、非线性层和点正则化,旨在于学习输入结构的编码。3D空间中的每一个原子或者点都和一个特征向量进行关联,特征包含了编码原子元素类型的独热编码以及一个布尔标志,该标志指示出该原子属于配体、蛋白质还是属于附着片段。


由编码单元最后一层输出的编码向量作为聚合单元的输入。聚合器单元由两个全连接(FC)层组成,之后是ELU激活函数,但最后的FC层除外。根据要评估的聚合类型,操作会有所不同。对于给定位置评估一个候选片段的分数,需要将所有点的特征向量进行平均得到一个平均向量,然后将它传递到聚合单元,这种情况下聚合单元的输出是一个标量。另一种操作是选择一个位置添加片段,对于这种情况,只选择与配体氢原子相对应的原子,连接相应的特征向量,并将其传递给聚合单元。最终输出是对应于每个配体氢原子的分数向量。

图2:模型架构.


数据集

配体来源于PDBBind 2019精炼数据集,一组高分辨率的蛋白质-配体结构。对数据集进行过滤,去除常见的生物分子(脂质、肽、碳水化合物和核苷酸)和分子量范围以外的化合物,从而将分子限制在与已知药物具有类似理化性质的分子。通过使用自定义图匹配算法顺序的从每一个配体中移出片段构成合成“专家”状态,直到达到最小大小(也就是)。在中间状态中,每一个被移出的片段将会被替换成氢原子以满足价态要求。


随后,作者导出了两个数据集:OPENBOND 数据集FRAGMENT 数据集,分别对两个模型进行评估。将两个数据集安相同的比例进行分割,它们是训练集(70%)、验证集(15%)和测试集(15%)。在训练阶段为了防止数据泄露,在数据集分割时保证没有测试集中样本和任意训练、验证集中的样本有30%以上的序列一致性。


对于OPENBOND 数据集,为中间状态()的每一个配体氢原子计算二分类标志,该标志和该氢原子是否被替换为最终状态()中的一个片段有关。由于有些状态序列比其他长得多,作者为每一个蛋白质-配体结构从状态序列中随机挑出最多6个标记状态加入到数据集中。对于FRAGMENT数据集,作者挑选出六个中间状态并为每一个状态生成一个和状态()非常相似(坐标均方根偏差小)的near-native状态以及6个带有随机采样获得的错误片段和几何的诱饵状态。near-native样本标记为1,诱饵样本标记为0。这样的做法对数据进行了极大地增强,最终的样本数达到了100000以上。


训练和评估

作者将以上所提到的两个模型都当成二分类任务进行训练。在训练过程中,使用实际标签和预测标签之间具有logits损失的二元交叉熵作为损失函数。由于负样本比正样本的数量多得多,为了解决数据集不平衡的问题,在训练期间随机对不频繁出现的类别进行过采样。


3

实验结果

选择动作的性能

和随机基线相比,OPENBOND模型和FRAGMENT模型在验证集上都有很好的表现,具体的,AUPRC分别达到0.94和0.85说明模型能识别出正确(或者说接近原始)的动作和诱饵动作(表2)。

量化生成分子的物理化学性质

作者选择了12种指标来测试生成的分子,这些指标和极性表面积、logP、易合成性、对接分数、未满足氢键供体的数量、扭转能等分子性质相关。首先,作者使用真实配体(PDBBind)中的片段作为起点,为测试集中的85种不同的蛋白质生成配体。此外,作者还使用最先进的基于物理学的评分函数(Glide)生成配体,用它代替模型中选择行动这一步。这些基于物理学的评分函数以前被应用于配体优化任务﹐因此作者选择将其作为性能的基线。


由论文模型生成的分子与已知配体数据集中的配体在许多关键属性上密切匹配(图3,图4)。这包括仅配体拥有的属性,如logP和合成可及性,以及考虑到结合口袋中的三维构象的属性,如未满足的氢键供体数量和计算的扭角能量。但有一个例外,作者的配体具有较低的绝对形式电荷,这可能表明相对于已知的配体﹐配体与蛋白质口袋缺乏离子间相互作用。


相比之下,使用最先进的基于物理学的评分函数生成的分子与数据集中的已知配体有明显的差异,总的来说,它们的电荷更强,极性更大。此外,这些配体含有较多的不满足的氢键供体﹐这是一个能量上不利的特性,在虚拟筛选项目中经常被用来标记没有前景的配体。分子对接的紧密程度取决于它与蛋白质口袋的相互作用强度相对于与水的相互作用强度(溶解)的强弱。然而,由于溶解效应在计算上具有挑战性,许多基于物理学的评分函数并不考虑它。作者的AI 代理则能够隐含地学习这一信息﹐因为它是在一个由已知的结合体组成的数据集上训练的﹐这些分子与蛋白质口袋的相互作用比与水的作用更强。

图3.生成的配体在很多理化性质上和已知配体类似.


那么,对口袋空间的探索如何呢?通过连续添加片段来扩大配体﹐这得益于模型的提前规划能力﹐特别是它避免生成过程陷入死胡同。通过定性观察﹐使用训练过的模型生成的分子倾向于填满结合口袋并有和已知配体相似的形状。而使用基于物理学的评分函数(没有规划能力),由于没有剩余的氢原子可以添加(图4),扩展过程有时会在达到目标分子重量之前终止。

图4.使用不同方式生成的配体比较.

4

总结

作者的方法依赖于几个关键的想法。首先,将生成过程分解为由模型指导的单独动作序列。使之可以灵活地应用于不同的优化任务,无论它们是需要添加一些最终的官能团还是建立新的骨架。第二,将3D点云表示状态,从而捕捉到了蛋白质口袋环境下的配体。第三﹐将模型训练成评分函数而不使用典型的策略。


然而,在结果中有几点需要注意。首先,作者开始使用的测试蛋白质结构都是在结合了"好"配体的情况下确定的(因此带有关于该解决方案的信息);在实际应用中,结合位点可能没有预先组织以适应"好"配体。这可以通过在训练过程中向蛋白质结构引人灵活性和噪音来改善。此外,该框架目前所能产生的支架的多样性在一定程度上受到片段库多样性的限制。

参考资料

Fragment-Based Ligand Generation Guided By Geometric Deep Learning On Protein-Ligand Structure. Alexander S. Powers, Helen H. Yu, Patricia Suriana, Ron O. Dror

doi: https://doi.org/10.1101/2022.03.17.484653

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/134984
 
120 次点击