评估生成分子/对接分子的物理合理性工具 PoseBusters 评测

news2024/10/2 22:25:12

最近在一些分子生成或者对接模型中,出现了新的评估方法 PoseBusters,用于评估生成的分子或者对接的分子是否符合化学有效性和物理合理性。以往的分子生成,经常以生成分子的有效性、新颖性、化学空间分布,与口袋的结合力等方面进行评估,但是生成分子的构象合理性问题,一直没有直接简单的工具。PoseBusters 补足了这一点。PoseBusters 最初作者是对深度学习对接方法生成的分子的评估,现在也逐渐被使用到分子生成领域。

下面介绍一下 PoseBusters 的文章,然后进行评测。

一、背景介绍

PoseBusters 是一个基于 RDKit 的 Python 包,通过一系列标准检查配体对接姿势的化学有效性和物理合理性。来源于牛津大学统计学系 Martin Buttenschoen、Garrett M. Morris 和 Charlotte M. Deane 合作的文章:《PoseBusters: AI-based docking methods fail to generate physically valid poses or generalise to novel sequences》。文章链接:https://pubs.rsc.org/en/content/articlelanding/2024/sc/d3sc04185a。

该文章于2023年12月13日发表在《Chemical Science》期刊上,2023年11月出现在 arxiv 上。

深度学习方法预测的对接姿势在 RMSD 上已经取得良好的表现,但会产生一些不合理的分子 pose 。所以本研究选择了 5 种基于深度学习的对接方法 (DeepDock,DiffDock,EquiBind,TankBind 和 Uni-Mol) 和 2 种标准对接方法 (AutoDock Vina 和 Gold) ,评估它们在是否使用力场优化的场景下,通过 PoseBusters 比较了上述5种方法在化学有效性和物理合理性方面的表现。结果表明,深度学习的对接方法在物理合理性方面的表现不如标准对接方法。

总的来说,PoseBusters 是一个分析小分子 (对接) 结构是否符合物理合理性的工具 ,输入对接构象。在没有蛋白结构输入的场景下,输出小分子 (对接) 结构在化学有效性和分子内特性等方面的评估结果 ; 在有蛋白结构输入的场景下,输出会增加 (对接) 结构和蛋白的分子间相互作用评估结果。当然,PoseBusters 也可以对分子生成的分子进行评估。

二、评估介绍

2.1 对接方法&参数设置

在 5 种深度学习的对接方法中,DeepDock 基于配体重原子和结合口袋表面网格点之间的距离可能性学习统计势。DiffDock 在扩散过程中使用等变图神经网络进行全局对接(盲对接)。EquiBind 使用等变图神经网络进行盲对接。TankBind 也是一种盲对接方法,使用三角感知神经网络在口袋预测方法输出的每个口袋中进行对接。Uni-Mol 使用 SE3 等变 transformer 进行对接。

这 5 种深度学习对接方法在开发时的训练数据和测试数据有所差异(注意,不是下文中对比5种深度学习方法的数据集)。DeepDock 使用的是 PDBBind 2019 General Set 作为训练集(剔除了 CASF-2016 数据),共包含16367 个复合物体系。DiffDock 和 EquiBind 训练集使用的是 PDBbind 2020 General Set 中 2019 年前的复合物体系,共包含 17347 个复合物体系。TankBind 使用 PDBbind 2020 General Set 中 2019 年前的复合物体系,剔除在预处理失败的复合物体系,共包含 18755 个复合物体系。Uni-Mol 也使用 PDBbind 2020 General Set ,把其中蛋白质序列和 CASF-2016 相似度超过 40% 且配体指纹相似度超过 80% 的复合物体系剔除,共包含 18404 个复合物体系。

在使用 PoseBusters 对上述 5 种深度学习对接方法和 2 种传统对接方法的评测过程中,作者为每种方法都定义了搜索空间。Gold 的对接范围是以小分子重原子的几何中心,半径为 25 Å 的球。 Vina 的对接范围是以小分子重原子的几何中心,边长为25 Å 的立方体。 DeepDock 和 Uni-Mol 需要定义结合位点,而 DiffDock、EquiBind 和 TankBind 是盲对接方法。DeepDock 的对接范围是任意配体原子 10 Å 以内的蛋白质表面网络节点形成的空间。Uni-mol 的对接范围是任意配体重原子 8 Å 以内的蛋白质残基构成的范围。DiffDock 搜索整个蛋白。EquiBind 搜索任意配体重原子 10 Å 以内的蛋白质链。TankBind 使用 P2Rank 识别对接口袋。所有配置如下表。

2.2 PoseBusters 的测试套件

在评测之前,先介绍 PoseBusters 方法的测试内容。

PoseBusters 是作者在这一篇文章中,提出的,检验对接结果在化学有效性和物理合理性的方法。作者同时,将该方法,包装成了一个 python 的 package,可以通过 pip 快速安装。

PoseBusters 的测试套件分成三组测试:化学有效性和一致性检查( Chemical validity and consistency分子内特性检查( Intramolecular validity分子间相互作用检查( Intermolecular validity

第一组是化学有效性和一致性检查( Chemical validity and consistency) ,从结构是否有效,化学式、手性、化学键是否与真实分子相同进行检查。具体包括:加载分子成RDKit对象(File Loads); 对分子进行RDKit化学清洁检查(Sanitisation); 输入分子与真实分子的化学式是否相同检查(Molecular formula);输入分子与真实分子的化学键是否相同检查(Bonds);输入分子中指定的手性是否与真实分子相同(Tetrahedral chirality);输入分子中指定的双键立体化学是否与真实分子相同(Double bond stereochemistry)。

第二组:分子内特性检查( Intramolecular validity),测试配体几何结构和使用通用力场 (UFF) 计算的配体构象能量,用于评估对接生成的分子构象是否合理,即物理合理性。具体包括:输入分子的键长和键角在是否在设定的下限的0.75倍和上限的1.25倍之间(Bond lengths , Bond angles); 芳香五元环和六元环的所有原子在最接近的共面内距离是否超过 0.25 Å(Planar aromatic rings); 碳-碳双键的两个碳及其四个相邻原子在最接近的共面内距离是否超过0.25 Å(Planar double bonds); 非共价键结合原子对之间的原子间距离是否超过距离几何确定的下限的0.7倍(Internal steric clash); 输入分子的计算能量不超过为其生成的50个构象集合的平均能量的100倍。能量使用 RDKit 中的 UFF 计算,构象使用 ETKDGv3 生成,随后进行 UFF 的力场松弛,最多迭代200次(Energy ratio)。

第三组:分子间相互作用检查(Intermolecular validity),检查蛋白质-配体和配体-辅因子冲突。具体包括:配体和蛋白质原子对之间的距离大于它们范德华半径和的0.75倍(Minimum protein–ligand distance , Minimum distance to organic cofactors); 配体与无机辅因子(o inorganic cofactors)原子之间的距离大于它们共价半径和的0.75倍(Minimum distance to inorganic cofactors); 配体与蛋白质体积、有机辅因子相交的部分少于 7.5% 。这些体积由重原子周围的范德华半径定义,缩放系数为 0.8(Volume overlap with protein , Volume overlap with organic cofactors); 配体与无机辅因子体积相交的部分少于7.5%。这些体积由重原子周围的范德华半径定义,缩放系数为0.5(Volume overlap with inorganic cofactors)。

通过所有测试的分子构象称作 “PB-Valid” 分子。所有具体的测试内容如下表所示:

2.3 对比对接方法使用的测试集

评估过程中作者使用到两个测试集。Astex Diverse Set 是 2007 年发布人工挑选的测试集,共包含 85 对蛋白质-配体复合物,和深度学习方法的训练集数据有部分重合。PoseBusters Benchmark Set 是一个新的测试集,包含 2021 年以来发布的 308 个蛋白质-配体复合物,和训练集数据没有重合。

三、评估结果

作者分别从不使用力场优化和使用力场优化的两种场景,对上述5种深度学习对接方法和2种传统对接方法,使用他们自己开发的 PoseBusters 工具,从 RMSD 和物理合理性、方法的泛化表现等角度进行了性能比较分析。

3.1 不使用力场优化构象的结果

在 Astex Diverse Set 上,从 RMSD 来看,DiffDock(72%)的表现是最好的,但考虑到 PB-Valid,表现最好的三种方法是 Gold(64%),AutoDock Vina(56%)和 DiffDock(47%)。在 PoseBusters Benchmark set 上,无论是否考虑 PB-validity,Gold 和AutoDock Vina 在七种方法中都是表现最佳的,如下图所示。因为 PoseBusters Benchmark set 数据集是 2021 年以来发布的 308 个蛋白质-配体复合物,完全不包含 DiffDock 等模型的训练集,这种表现与他们文章中的报道的数据有很大的差距,这说明 DiffDock 等模型有较大的过拟合情况。

总的来说,当考虑物理合理性时,深度学习的对接方法的表现是不如传统对接方法的。但具体来看,每种方法有各自的优点和局限性。比如下图是 TankBind 在 Astex Diverse set 上每项测试的通过情况,可以看出 RMSD 较大、四面体手性改变和蛋白质-配体原子的最小距离过近(发生碰撞)是整体表现较差的三个主要原因(如下图)。这些局限性也为后续改进提供了参考。

为进一步探究这些方法的泛化表现,作者把 PoseBusters 测试集按照和训练集的最大序列相似度划分为三类,序列相似度分别为0~30%,30~95%,95~100% 。如下图所示,传统方法在三个蛋白相似度区间上通过 RMSD 和 PB-Valid 检测的占比都在 60% 左右,表现相当,说明传统的对接方法具有较好的统一性,不依赖训练数据(当然,他们是物理模型方法)。而深度学习的方法在序列相似度较低的蛋白(例如:序列相似度为 0~30%)上通过的比例都在 2% 以下,表现较差,这表明深度学习方法存在过拟合现象。

作者还按照复合物中是否包含辅因子分层,发现当辅因子存在时,传统方法表现仍好于深度学习方法。

3.2 使用力场优化构象的结果

为使产生的对接结果更加合理,进行额外的能量最小化。能量最小化虽然能改善深度学习方法的 RMSD 和 物理合理性(PB-Valid)表现,但仍不如传统(Gold 和 Vina)方法。例如,下图中,RMSD小于2Å的比例,Gold 和 Vina 都能接近或者超过50%, 但深度学习方法普遍小于30%。处理前后的情况如下图所示:

四、代码测评

4.1 环境安装

 

复制项目代码:

git clone https://github.com/maabuu/posebusters.git

创建环境,安装 posebusters 环境。

posebusters 的安装方法非常简单,直接 pip 安装即可。

conda create -n PoseBusters python=3.10
conda activate Posebusters 
安装 posebusters
pip install Posebusters

4.2 posebusters 使用方法

在该项目GitHub中,作者提供了一些小分子、蛋白及其对接的小分子结构的测试案例,保存在 ./posebusters/tests/conftest :

cd ./posebusters/tests/conftest

4.2.1 对小分子结构进行检查

只有小分子(对接)结构作为输入,检查分子的化学有效性和分子内特性

bust ./1OF6_DTY/1OF6_DTY_vina.sdf --outfmt long

其中,./1OF6_DTY/1OF6_DTY_vina.sdf 包含了14 个3D 的分子,来源于 Vina 对接的结果。--outfmt long 让模型输出每一个分子的每一项检测的结果。

运行输出:

Long summary for 1OF6_DTY/1OF6_DTY_vina.sdf mol_at_pos_0
MOL_PRED loaded         .   
Sanitization            .   
All atoms connected     .   
Bond lengths            .   
Bond angles             .   
Internal steric clash   .   
Aromatic ring flatness  .   
Double bond flatness    .   
Internal energy         .   
Long summary for 1OF6_DTY/1OF6_DTY_vina.sdf mol_at_pos_1
MOL_PRED loaded         .   
Sanitization            .   
All atoms connected     .   
Bond lengths            .   
Bond angles             .   
Internal steric clash   .   
Aromatic ring flatness  .   
Double bond flatness    .   
Internal energy         .   
···

可以看到,PoseBusters 对上述14个分子逐个进行检查。例如:1OF6_DTY_vina.sdf 中的第一个对接构象 pose_0,所有的测试项目均为 . ,意味着测试通过。

如果对应的测试项没有通过检查,会用 Fail 标注出来,输出例如下:

MOL_PRED loaded         .   
Sanitization            .   
All atoms connected     .   
Bond lengths            Fail
Bond angles             Fail
Internal steric clash   .   
Aromatic ring flatness  .   
Double bond flatness    .   
Internal energy         Fail

如果要将测试结果写入csv格式。可以添加 --outfmt csv --out results ,分别指定格式和文件名,将测试结果输入到 name.csv文件中。完整命令如下:

bust ./1OF6_DTY/1OF6_DTY_vina.sdf \
  --outfmt csv \
  --out results

输出表格截图如下:

4.2.2 对口袋-小分子进行检查

蛋白质口袋和小分子 (对接) 结构作为输入,检查小分子的化学有效性,分子内特性以及分子间相互作用,命令如下:

bust ./7ZTL_BCN/7ZTL_BCN_ligands.sdf -p ./7ZTL_BCN/7ZTL_BCN_protein.pdb --outfmt long

返回结果中,各项测试全部通过,返回结果如下:

Long summary for 7ZTL_BCN/7ZTL_BCN_ligands.sdf 7ZTL_BCN_A_506
MOL_PRED loaded                          .   
MOL_COND loaded                          .   
Sanitization                             .   
All atoms connected                      .   
Bond lengths                             .   
Bond angles                              .   
Internal steric clash                    .   
Aromatic ring flatness                   .   
Double bond flatness                     .   
Internal energy                          .   
Protein-ligand maximum distance          .   
Minimum distance to protein              .   
Minimum distance to organic cofactors    .   
Minimum distance to inorganic cofactors  .   
Minimum distance to waters               .   
Volume overlap with protein              .   
Volume overlap with organic cofactors    .   
Volume overlap with inorganic cofactors  .   
Volume overlap with waters               .  

更多 PoseBusters 的使用教程,可以参考:https://posebusters.readthedocs.io/en/latest/

五、总结

1. 作者提出了 PoseBusters 测试套件提出了一个新的“PB-valid”来评价对接方法,不仅考虑 RMSD,也考虑物理合理性

2. 使用 PoseBusters 评测现有的对接方法,发现没有基于深度学习的方法能同时在 RMSD 和物理合理性方面胜过标准对接方法

3. PoseBusters 可以提供每项测试的通过情况,找出当前的局限性,为深度学习对接模型开发者提供了改进的参考

4. 下一代的基于深度学习的对接方法应该在 RMSD 和物理合理性方面都超过标准对接方法

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

.NET反混淆神器de4dot使用介绍

最近在逛看雪时,发现一个帖子,[原创]常见语言基础逆向方法合集-软件逆向-看雪-安全社区|安全招聘|kanxue.com。里面介绍 了常见语言基础逆向方法合集。关于.net程序逆向这块,介绍了三个工具。 .NET Reflector .NET Decompiler: Decompile A…

C++中string类常用函数的用法介绍

在C中,string是一个功能强大的类,用于处理和操作文本数据。它属于C标准库中的字符串库部分,专门用于处理字符串。与传统的C风格字符串相比,它提供了动态内存管理、类型安全和丰富的操作方法。 目录 一、构造和初始化 二、获取字…

算法训练,项目

一.木材加工 题解: 二分答案,左边0,右边可以为最长的木头,但我直接赋值了一个很大的值,进行二分,随后写个check;内部遍历木头截取为mid木块的个数,要是>k,满足要求,还…

【时时三省】(C语言基础)一维数组

山不在高,有仙则名。水不在深,有龙则灵。 ——csdn时时三省 数组 数组就是一组数 数组的官方定义是一组相同类型元素的集合 一堆数组的创建和初始化 求组的创建 数组是一组相同类型元素的集合。数组的创建当时是: type_t arr&#x…

【JavaEE】定时器

目录 前言 什么是定时器 如何使用java中的定时器 实现计时器 实现MyTimeTask类 Time类中存储任务的数据结构 实现Timer中的schedule方法 实现MyTimer中的构造方法 处理构造方法中出现的线程安全问题 完整代码 考虑在限时等待wait中能否用sleep替换 能否用PriorityBlo…

Linux网络——深入理解 epoll

目录 一、epoll 模型 1.1 前导知识 1.1.1 宏 offsetof 1.1.2 手动计算 1.2 epoll 模型 二、 epoll 工作模式 2.1 水平触发 特点: 2.2 边缘触发 特点: 边缘触发模式中的循环读取 结合非阻塞模式的优势 一、epoll 模型 经过了之前的学习&#…

什么是容器查询?分享 1 段优质 CSS 代码片段!

本内容首发于工粽号:程序员大澈,每日分享一段优质代码片段,欢迎关注和投稿! 大家好,我是大澈! 本文约 700 字,整篇阅读约需 1 分钟。 今天分享一段优质 CSS 代码片段,使用容器查询…

【算法设计题】实现以字符串形式输入的简单表达式求值,第2题(C/C++)

目录 第2题 实现以字符串形式输入的简单表达式求值 得分点(必背) 题解 1. 初始化和变量定义 2. 获取第一个数字并存入队列 3. 遍历表达式字符串,处理运算符和数字 4. 初始化 count 并处理加减法运算 代码详解 🌈 嗨&#xf…

你还在为PDF文件烦恼吗?试试这四款合并工具吧!

每天应对工作都是一个头两个大的,其中pdf的文件问题就是恼人的工作量之一了,这几年的工作经历下来也找了各种可以帮助解决PDF文件问题的工具,好在使用了一些助力我高效工作的软件,今天针对其中遇到的解决pdf合并问题的四款宝藏工具…

当Vercel的域名验证规则碰上JPDirect这种不配合的同学把我的脑袋擦出了火星子

文章目录 前言问题简单说明Vercel主要功能和特点 JPDirectNameServers解决方案 总结 前言 处理域名转移这件事已经过去好几天,终于抽出点时间来总结一下,解决这件事大概花了2周多时间,因为时差的原因导致沟通缓慢,今天准备长话短…

【leetcode】平衡二叉树、对称二叉树、二叉树的层序遍历(广度优先遍历)(详解)

Hi~!这里是奋斗的明志,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~ 🌱🌱个人主页:奋斗的明志 🌱🌱所属专栏:数据结构、LeetCode专栏 📚本系…

Zookeeper未授权访问漏洞

Zookeeper是分布式协同管理工具,常用来管理系统配置信息,提供分布式协同服务。Zookeeper的默认开放端口是2181。Zookeeper安装部署之后默认情况下不需要任何身份验证,造成攻击者可以远程利用Zookeeper,通过服务器收集敏感信息或者…

通信原理实验——PCM编译码

PCM编译码 实验目的 理解PCM编译码原理及PCM编译码性能熟悉PCM编译码专用集成芯片的功能和使用方法及各种时钟关系熟悉语音数字化技术的主要指标及测量方法 主要仪器设备及软件 硬件:多功能实验箱、示波器、导线 软件:无 实验原理 1. 抽样信号的量…

锅总浅析SRE

SRE简介 SRE(Site Reliability Engineering,站点可靠性工程)是由Google开发的一种运维理念和实践方法,其核心思想是用软件工程的方式来管理和运维系统,以提高系统的可靠性、效率和可扩展性。 SRE的核心理念 自动化&…

【Slf4j】项目中使用 slf4j 的好处

前言 背景 项目依赖了三方包,三方包有日志打印的代码。需要将三方包的日志打出来。问题 是怎么做到项目的日志格式和依赖中的日志格式保持一致的?结论 查阅资料后,发现是 slf4j 帮忙做了桥接。这里做下记录。 实验 starter 依赖 log4j主项…

【全网最全】2024年第五届“华数杯”全国大学生数学建模竞赛完整思路解析+代码+论文

我是Tina表姐,毕业于中国人民大学,对数学建模的热爱让我在这一领域深耕多年。我的建模思路已经帮助了百余位学习者和参赛者在数学建模的道路上取得了显著的进步和成就。现在,我将这份宝贵的经验和知识凝练成一份全面的解题思路与代码论文集合…

常见的MySQL数据库面试题

前言 作者:小蜗牛向前冲 名言:我可以接受失败,但我不能接受放弃 如果觉的博主的文章还不错的话,还请点赞,收藏,关注👀支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 总结一下mysql中常…

【最新】精选8家优秀大学生AI论文写作网站

在当前的学术环境中,AI论文写作平台为大学生提供了极大的便利和高效性。以下是8家优秀的AI论文写作网站推荐: 一、千笔-AIPassPaPer 千笔-AIPassPaPer是一款AI原创论文写作平台,能够在10分钟内产出3万字的内容,并提供真实网络数据…

广州城市信息模型(CIM)白皮书学习

CIM平台定义 以建筑信息模型(BIM)、地理信息系统(GIS)、物联网(IoT)等技术为基础,整合城市地上地下、室内室外、历史现状未来多维多尺度信息模型数据和城市感知数据,构建起三维数字空间的城市信息有机综合体。 广州CIM平台建设历程 2019 年 6 月住房和…

关于手机中的红外遥控

在手机电路中,有这么不起眼的一部分,虽看似简单,但是却给我们的生活在一定程度上带来了极大的便捷-红外遥控部分。 其置于手机顶部,并在壳体处挖开一个小孔,用于红外信号对外界的传递。如果你感兴趣的话,不…