Nat. Commun.2023 | AI-Bind+:提高蛋白质配体结合预测的通用性

论文标题:Improving the generalizability of protein-ligand binding predictions with AI-Bind

论文地址:Improving the generalizability of protein-ligand binding predictions with AI-Bind | Nature Communications

代码:

Barabasi-Lab/AI-Bind: Improving the generalizability of protein-ligand binding predictions with AI-Bind | Zenodo

一、问题

虽然分子动力学和对接模拟经常用于识别潜在的蛋白质-配体结合,但模拟的计算复杂性(即运行时间)和缺乏3D蛋白质结构极大地限制了大规模测试的覆盖范围和可行性。因此,人们提出了基于机器学习(ML)和人工智能(AI)的模型来规避现有方法的计算限制。

二元分类的成功训练需要正样本,即已知相互结合的蛋白质和配体对,通常从蛋白质-配体结合数据库中提取,如DrugBank, BindingDB, Tox21, ChEMBL或药物靶标共用(Drug Target Commons, DTC)。训练还需要负样本,即不相互作用或仅弱相互作用的成对。然而,与不同蛋白质和配体相关的正负样本分布不均,一些蛋白质和配体的正样本多于负样本。

ML模型从蛋白质-配体相互作用网络中节点的程度来学习结合模式,而忽略了相关的节点元数据,如配体的化学结构或蛋白质的氨基酸序列。当预测新的(即从未见过的)蛋白质靶点和配体之间的结合时,ML模型的性能会下降。

二部网络将结合信息表示为具有两种不同类型节点的图:一种对应于蛋白质(也称为靶标,例如代表人类或病毒蛋白质),另一种对应于配体(代表潜在的药物或天然化合物)。蛋白质-配体注释(protein-ligand annotation),在二部网络中被表示为蛋白质和配体之间的联系。

连接到蛋白质或配体的注释的数量遵循 fat-tailed分布,这表明绝大多数蛋白质和配体只有少量注释。

此外,通过对解离常数Kd等动力学常数施加阈值来确定正负注释。如果与蛋白质配体对相关的动力学常数小于设定的阈值,将该对视为正样品或结合样品;否则,这对将被标记为负的或非绑定的。Kd在记录中不是随机分布的,这种不平衡促使ML模型在进行结合预测时利用程度信息(正负注释),而不是从分子结构中学习结合模式。

为了研究拓扑捷径的出现,对于具有注释数量ki的每个节点i,通过度的量化可用训练信息的平衡:

由于大多数蛋白质和配体缺乏结合或非结合注释(表1),因此得到的{ρi}接近1或0,这些ρ值代表预测问题中的注释不平衡。

由于许多最先进的深度学习模型,如deepurpose,统一采样可用的正注释和负注释,它们将更高的结合概率分配给具有更高ρ的蛋白质和配体:

因此,interaction预测是由蛋白质-配体网络中的拓扑捷径驱动的,这与训练数据中存在的正注释和负注释相关,而不是表征蛋白质和配体的结构特征。

通过仅利用来自网络度序列的拓扑约束来预测结合的可能性。在配置模型(图3a,方法)中,观察到链路的概率仅由其末端节点的度决定。

在BindingDB的5倍交叉验证中,表现最好的DeepPurpose架构Transformer-CNN5达到AUROC of 0.86 (±0.005) and AUPRC of 0.64 (±0.009),仅依赖于Configuration Model的性能与深度学习模型一样好,证实了蛋白质-配体相互作用网络的拓扑结构驱动预测

测试了三种不同的场景:(i)看不见的边缘(转导测试),当测试数据集中的蛋白质和配体都存在于训练数据中;(ii)看不见的目标(半感应测试),当只有来自测试数据集的配体存在于训练数据中时;(iii)看不见的节点(归纳测试),当测试数据集中的蛋白质和配体在训练数据中都不存在时

发现deepurpose和配置模型在场景(i)和(ii)中都表现良好:

对于诱导测试场景(iii),当面对新的蛋白质和配体时,两者的性能都显着下降:

同时,随机洗牌了训练集中的化学SMILES和氨基酸序列,同时保持每个节点相同的正负注释,这一操作不会改变测试性能:

这些测试证实了deepurpose利用网络拓扑作为学习捷径,无法将预测推广到训练数据之外的蛋白质和配体。

二、模型方法(别人提出的基础模型)

1、Data preparation

基于动力学常数Ki、Kd、IC50和EC50,认为来自BindingDB和DTC的样品是结合的或非结合的。分别使用≤103 nM和≥106 nM的阈值来获得阳性和(绝对)阴性注释,

Positive samples.

认为DrugBank的binding信息是阳性样本。为了获得更多的药物阳性样本,使用InChIKeys在BindingDB中进行了搜索。从BindingDB中获得了4330个与DrugBank中的药物相关的结合注释。总体而言,共收集了28188份药物阳性样本。

Network-derived negative samples.

随机选择了间隔7 hops的蛋白质配体对的子集作为阴性样本,以在训练数据中的阳性和阴性样本之间建立总体类别平衡。对≥11跳的远距离配对进行了测试和验证。此外,通过对动力学常数(Ki、Kd、IC50和EC50)取阈值,在测试和验证中包括了从BindingDB导出的绝对非结合对。

2、Novel deep learning architectures

pipeline与各种神经架构兼容,这里提出三种: VecNet, Siamese和VAENet

VecNet.

VAENet.

将配体嵌入潜在空间。Morgan指纹被直接馈送到卷积层,通过最小化信息损失来创建潜在空间嵌入,同时从潜在表示重建分子。对ZINC数据库中的950万种化学物质以及结合数据集中的所有药物和天然化合物进行了可变自动编码器的训练。使用ProtVec进行target嵌入。

Siamese model.

使用一次性学习方法将配体和蛋白质嵌入同一空间。构建了蛋白质靶标、非结合配体、结合配体形式的三元组,并训练模型以找到一个嵌入空间,该嵌入空间最大化非结合对之间的Euclidean距离,同时最小化结合对的Euclidean距离。

三、AI-Bind and statistics across models

1、输入

配体:将同分异构体SMILES作为输入。考虑了一个由DrugBank中可用的所有药物分子和Natural compounds in Food Database (NCFD)中天然存在的化合物组成的搜索空间,并且可以通过利用更大的化学文库(如PubChem)进行扩展。

蛋白质:使用从蛋白质数据库protein Data Bank (PDB)、Universal protein knowledgebase (UniProt)和GeneCards中检索到的氨基酸序列作为输入。

2、模型获益点

(1)依赖于网络衍生的阴性来平衡每种蛋白质和配体的阳性和阴性样品的数量。具体而言,使用最短路径距离≥7的蛋白质-配体对作为负样本,确保神经网络同时观察到每种蛋白质和配体的结合和非结合示例。

(2)在无监督预训练期间,使用在更大的化学和蛋白质结构集合上训练的节点embedding,而不是已知结合注释的集合。允许AI-Bind学习更广泛的结构模式。事实上,像deepurpose这样的模型是在BindingDB中提供的862337个配体和7504种蛋白质上训练的,或者在DrugBank中提供的7307个配体和4762种蛋白质上训练的,而AI-Bind的VecNet中的无监督表示是在ZINC和ChEMBL数据库中的1990万种化合物上训练的,在Swiss-Prot中的546790种蛋白质上训练的。

3、系统性比较

比较AI-Bind与DeepPurpose的性能以及配置模型在5倍交叉验证上的性能:

配置模型在感应测试中表现不佳(AUROC为0.5,AUPRC为0.464±0.017)。由于网络衍生的负值消除了注释不平衡,DeepPurpose对新蛋白质和配体的识别性能有所提高(AUROC为0.646±0.023,AUPRC为0.576±0.009)。AI-Bind的VecNet在未见节点上表现最佳,AUROC为0.75±0.032,AUPRC为0.718±0.029。

数据集推广到天然存在的化合物,与药物相比具有复杂的化学结构和更少的训练注释:

除了deepurure, AI-Bind的VecNet与MolTrans (AUROC 0.612±0.028,AUPRC 0.478±0.034)相比,始终具有更好的性能(AUROC 0.75±0.032,AUPRC 0.718±0.029)

4、Validation of AI-Bind predictions on COVID-19 proteins

将预测与分子对接模拟、蛋白质-配体结合的体外和临床结果进行了比较。SARS-CoV-2病毒蛋白和332种SARS-CoV-2病毒蛋白靶向的人类蛋白作为验证集。这些蛋白质在AI-Bind的训练数据中缺失,因此代表新的靶标,并允许依靠最近了解的COVID-19知识来验证AI-Bind的预测。从UniProt中检索了16个SARS-CoV-2病毒蛋白和330个人蛋白的FASTA格式氨基酸序列,并将其作为AI-Bind的VecNet输入。

目标是预测药物库中的药物或天然存在的化合物,这些化合物可以结合与COVID-19相关的16种SARS-CoV-2或330种人类蛋白质中的任何一种,从而可能破坏病毒感染

在根据AI-Bind的VecNet (pVecNet ij)预测的结合概率对所有蛋白质配体对进行分类后,我们使用AutoDock Vina进行盲对接模拟,测试预测的前100个和后100个结合相互作用,该模拟通过考虑3D蛋白质结构上所有可能的结合位置来估计结合亲和力。

在前100对和后100对预测对中存在的54个蛋白质中,23个在PDB和UniProt中具有3D结构,59个相关配体结构中有51个在PubChem中可用,允许我们执行128个对接模拟(84个涉及顶部预测,44个涉及底部预测)。发现AI-Bind的84个预测中有74个确实是经过验证的绑定对。此外,发现VecNet预测的中位数结合亲和力为- 7.65 kcal mol-1,而底部的预测为- 3.0 kcal mol-1

第二个测试,使用- 1.75 kcal mol−1的结合亲和值和p上对应于归纳测试集上最高F1-Score的最佳阈值,从对接和AI-Bind预测中获得二元标签(结合或非结合)。在推导的混淆矩阵中,观察到sensitivity= 0.76,代表AI-Bind做出的结合预测中真正结合的部分,即true positive /(true positive + False Negatives)的比率,F1-Score = 0.82。这证实,与随机选择相比,AI-Bind预测提供的rank表与binding affinities获得的rank表具有显著的相似性:

进一步通过在5折设置中随机选择20对蛋白质配体对来检验这些性能指标的稳定性,观察F1-Score = 0.90±0.02。此外,发现AI-Bind的VecNet 预测和对接得到的蛋白-配体结合自由能(ΔG)与rspearman呈反相关,ΔG = -0.51。由于较低的绑定亲和值对应于较强的绑定,这些结果证明了AI-Bind预测和对接模拟之间的一致性。在50个平均结合概率最高的配体中,发现了两种fda批准的药物Anidulafungin (NDA#021948)和Cyclosporine (ANDA#065017)

AI-Bind还提供了几种具有潜在治疗意义的新预测。例如,它预测天然存在的化合物Spironolactone, Oleanolic acid, and Echinocystic acid是COVID-19蛋白的潜在配体,这三种配体都与含有三方基元的蛋白(Trim)结合,后者是SARS-CoV-2病毒蛋白开放阅读框3a (Orf3a)和非结构蛋白9 (Nsp9)结合的人类蛋白。AutoDock Vina支持这些预测。

5、Identifying active binding sites

除了预测结合概率,AI-Bind还可以用于识别氨基酸序列上可能的活性结合位点,即使没有三维蛋白质结构。具体来说,可以用来确定氨基酸序列中哪些氨基酸三元组在结合预测中发挥最重要的作用指示潜在的蛋白质-配体结合位置。通过扰动了序列中的每个氨基酸三元组,并观察了AI-Bind预测的变化,获得的结合概率曲线中的Valleys 值代表了氨基酸序列上最能预测结合位置的三元组。为了验证AI-Bind预测的结合位点,重点研究了人类蛋白质Trim59,已经从多次对接模拟中获得了这种蛋白质的结果。使用PyMOL50可视化了Trim59上的结合口袋,并鉴定了与配体分子结合的氨基酸残基:

发现负责结合的氨基酸残基直接映射到AI-Bind识别的结合概率分布中的Valleys。通过查看Pipecuronium、Buprenorphine和Voclosporin这三种与Trim59上三个不同口袋结合的配体的对接结果,在结合概率分布图上标记了与各自结合位点对应的谷。例如,Pipecuronium结合的口袋1对应于AI-Bind预测的5个谷,标记为1A、1B、1C、1D和1E。

附模拟过程:File preparation for docking simulations.

对AI-Bind预测的前100和后100中128种蛋白质-配体相互作用使用AutoDock Vina对接模拟:

(1)从PubChem获取SDF格式的3D配体结构,并使用PyMOL将其保存为.pdb格式。pdb格式的3D蛋白质结构,去除水分子,添加所有氢原子,并将Kollman电荷添加到蛋白质中。(2)创建包含整个蛋白质结构的对接网格。这种网格选择确保了blind对接设置,以便考虑蛋白质上的所有位置来确定结合亲和力。(3)为每个蛋白质创建包含网格细节的配置文件,并启动对接模拟。作者认为蛋白质分子是刚性的(rigid),而配体分子是柔性的,也就是说,允许配体有可旋转的键。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/118578.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2、Spring6 入门

1、环境要求 JDK:Java17(Spring6要求JDK最低版本是Java17) Maven:3.6 Spring:6.0.2 2、构建模块 2.1 构建父模块spring6 点击“Create” 2.2 构建子模块spring-first 点击 Create 完成. 3、程序开发 3.1 引入依…

lnmp架构-mysql1

1.MySQL数据库编译 make完之后是这样的 mysql 初始化 所有这种默认不在系统环境中的路径里 就这样加 这样就可以直接调用 不用输入路径调用 2.初始化 重置密码 3.mysql主从复制 配置master 配置slave 当master 端中还没有插入数据时 在server2 上配slave 此时master 还没进…

Qt +VTK+Cmake 编译和环境配置(第一篇 采坑)

VTK下载地址:https://vtk.org/download/ cmake下载地址:https://cmake.org/download/ 版本对应方面,如果你的项目对版本没有要求,就不用在意。我就是自己随机搭建的,VTK选择最新版本吧,如果后面其他的库不…

LeetCode56.合并区间

这道题我想了一会儿,实在想不到比较好的算法,只能硬着头皮写了,然后不断的debug,经过我不懈的努力,最后还是AC,不过效率确实低。 我就是按照最直接的方法来,先把intervals数组按照第一个数star…

Python小知识 - 一个简单的Python爬虫实例

一个简单的Python爬虫实例 这是一个简单的Python爬虫实例,我们将使用urllib库来下载一个网页并解析它。 首先,我们需要安装urllib库: pip install urllib接下来,我们来看看如何使用urllib库来下载一个网页: import url…

【数据结构Java版】 初识泛型和包装类

目录 1.包装类 1.1基本数据类型以及它们所对应的包装类 1.2装箱和拆箱 1.3自动装箱和自动拆箱 2.什么是泛型 3.引出泛型 4.泛型类的使用 4.1语法 4.2示例 4.3类型推导 5.泛型是如何编译的 5.1擦除机制 5.2正确的写法 6.泛型的上届 6.1语法 6.2示例 …

Spring Cloud 微服务2

Eureka 注册中心,服务的自动注册、发现、状态监控 Ribbon 负载均衡,Eureka中已经集成了负载均衡组件 Hystrix 熔断器,用于隔离访问远程服务、第三方库,防止出现级联失败。 Feign 远程调用,将Rest的请求进行隐藏&a…

《开发实战》13 | 用好Java 8的日期时间类,少踩一些“老三样”的坑

13 | 用好Java 8的日期时间类,少踩一些“老三样”的坑 初始化日期时间 如果要初始化一个 2019 年 12 月 31 日 11 点 12 分 13秒这样的时间,Date date new Date(2019, 12, 31, 11, 12, 13);输出的时间是 3029 年 1 月 31 日 11 点 12 分 13 秒&#xf…

springboot web开发整合Freemarker 模板引擎

目录 Freemarker添加依赖配置文件ymlcontrollerhtml Freemarker 简介: FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具…

Git学习——细节补充

Git学习——细节补充 1. git diff2. git log3. git reset4. git reflog5. 提交撤销5.1 当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时5.2 当提交到了stage区后,想要退回 6. git remote7. git pull origin master --no-rebase8. 分支管理9. g…

Cygwin是什么?是Windows还是Linux?

原文作者:gentle_zhou 原文链接:https://bbs.huaweicloud.com/blogs/408674 最近在和客户交流的时候,一直以为客户的研发环境就是windows 7,直到和对面的研发团队交流的时候,得到的反馈是在windows 7系统上安装了Cygw…

692. 前K个高频单词

题目来源:力扣 题目描述: 给定一个单词列表 words 和一个整数 k ,返回前 k 个出现次数最多的单词。 返回的答案应该按单词出现频率由高到低排序。如果不同的单词有相同出现频率, 按字典顺序 排序。 示例 1: 输入:…

虚拟内存相关笔记

虚拟内存是计算机系统内存管理的一个功能,它允许程序认为它们有比实际物理内存更多的可用内存。它使用硬盘来模拟额外的RAM。当物理内存不足时,操作系统将利用磁盘空间作为虚拟内存来存储数据。这种机制提高了资源的利用率并允许更大、更复杂的应用程序的…

Git企业开发控制理论和实操-从入门到深入(六)|多人协作开发

前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助。 高质量博客汇总 然后就是博主最近最花时间的一个专栏…

PixelSNAIL论文代码学习(2)——门控残差网络的实现

文章目录 引言正文门控残差网络介绍门控残差网络具体实现代码使用pytorch实现 总结 引言 阅读了pixelSNAIL,很简短,就用了几页,介绍了网络结构,介绍了试验效果就没有了,具体论文学习链接 这段时间看他的代码,还是挺痛…

时序预测 | MATLAB实现CNN-GRU卷积门控循环单元时间序列预测(风电功率预测)

时序预测 | MATLAB实现CNN-GRU卷积门控循环单元时间序列预测(风电功率预测) 目录 时序预测 | MATLAB实现CNN-GRU卷积门控循环单元时间序列预测(风电功率预测)预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.时序预测 | MA…

《爵士乐史》乔德.泰亚 笔记

第一章 【美国音乐的非洲化】 【乡村布鲁斯和经典布鲁斯】 布鲁斯:不止包括忧愁、哀痛 十二小节布鲁斯特征: 1.乐型(A:主、B:属、C/D:下属):A→A→B→A→C→D→A→A 2.旋律:大三、小三、降七、降五 盲人…

漏洞修复:在应用程序中发现不必要的 Http 响应头

描述 blablabla描述,一般是在返回的响应表头中出现了Server键值对,那我们要做的就是移除它,解决方案中提供了nginx的解决方案 解决方案 第一种解决方案 当前解决方案会隐藏nginx的版本号,但还是会返回nginx字样,如…

Gateway的服务网关

Gateway服务网关 Gateway网关是我们服务的守门神&#xff0c;所有微服务的统一入口。 网关的核心功能特性&#xff1a; 请求路由 权限控制 限流 架构如下&#xff1a; gateway使用 引入依赖 创建gateway服务&#xff0c;引入依赖 <!--网关--> <dependency>…

Spring Boot中通过maven进行多环境配置

上文 java Spring Boot将不同配置拆分入不同文件管理 中 我们说到了&#xff0c;多环境的多文件区分管理 说到多环境 其实不止我们 Spring Boot有 很多的东西都有 那么 这就有一个问题 如果 spring 和 maven 都配置了环境 而且他们配的不一样 那么 会用谁的呢&#xff1f; 此…