Communications chemisty|德睿智药工作-用于分子性质预测的药物约束异构图Transformer模型

news2024/11/17 23:54:50

德睿智药的分子性质预测任务

题目: Pharmacophoric-constrained heterogeneous graph transformer model for molecular property prediction

文献来源:COMMUNICATIONS CHEMISTRY | (2023) 6:60 |

代码:https://github.com/stardj/PharmHGT/

内容:分子的信息表征是人工智能驱动的药物设计和发现的关键前提。包括了官能团和化学反应的药效团信息可以表明分子性质,而这尚未被先前的基于原子的分子图表示充分利用。为了获得更丰富的分子表示,以更好地预测分子性质,作者提出了药物约束异质图Transformer(Pharmacophoric-constrained Heterogeneous Graph Transformer,PharmHGT)。作者设计了一个药效学约束的多视图分子表示图,使PharmHGT能够从功能子结构和化学反应中提取重要的化学信息。通过精心设计的药物约束多视图分子表示图,PharmHGT可以从分子功能亚结构和化学反应信息中学习更多的化学信息。大量的下游实验证明,PharmHGT的性能显著优于最先进的模型,模型的ROC-AUC中高达1.55%,在RMSE中比最佳基线模型高出0.272。消融研究和案例研究表明,本文提出的分子图表示方法和异构图Transformer模型可以更好地捕获药效学结构和化学信息特征。进一步的可视化研究也表明,模型具有更好的表征能力。

1.背景介绍

药物发现的目标是找到具有理想性质的新分子,而准确地预测分子的性质一直是关键问题之一。分子性质预测的关键步骤是如何表示将分子信息映射到特征向量的分子。近几十年来,深度学习方法已经显示出了与传统方法相当、甚至超越传统方法的强大潜力。图神经网络(GNNs)由于其对图结构数据的建模能力而越来越受欢迎。在生物网络数据的关联预测任务中,异构图神经网络算法取得了显著的效果。分子可以自然地表示为图结构,因此gnn方法可以有效地捕获分子结构信息,包括节点(原子)和边(键)。

虽然将片段信息纳入图形结构有利于一些分子性质估计任务,GNN在这个领域的使用仍存在两个问题: (1)这些模型没有提供一个全局化学视角方法来更好地整合原子和片段碎片信息,都忽略了碎片之间的反应信息;(2)缺乏原子、碎片和键的不同类型和特征维度的泛化能力。为了解决这两个问题,需要嵌入来自不同层次的更全面的信息,因此需要开发一个异构GNN模型进行分子性质预测的任务。

在本研究中,作者提出了一种药物约束异质图Transformer模型(PharmHGT)来全面学习异构分子图特征的不同角度从而提高分子性质预测能力。首先,作者利用BRICS的反应信息将分子划分为包含官能团的片段,并保留这些片段之间的反应信息,构建了包含两种节点和三种边的异构分子图(图1)。然后,为了全面考虑分子的多视图和多尺度图表示以及连接片段的反应信息,作者提出了一种新的基于消息传递的异构图Transformer模型。具体来说,他们使用两种不同的Transformer分别学习异构图中的边和节点的特征,并通过消息传递对这些边和节点的特征进行聚合和更新,以获得异构分子图的表示。

图1 是分子分割过程的概述和异构分子图的构建。在底部的异构分子图中,绿色节点表示带有药效团信息的片段,蓝色节点表示分子的原子。绿色的边是碎片之间的反应信息,红色的虚线边是连接碎片的原子的相关信息,原子之间的边是键合的。

2. 结果及讨论

2.1 数据以及baseline模型

为了更好地比较和证明PharmHGT的有效性,作者选择了9个基准分子数据集进行实验,包括血脑屏障通透性(BBBP)、BACE、ClinTox、Tox21、内幕和HIV进行分类任务,以及ESOL、Freesolv和亲脂性进行回归任务。

作者将其模型与3种不同类型的8个基准模型进行比较:

基于片段的方法:AttentiveFP是一种图的神经网络架构,它使用图的注意机制从相关的药物发现数据集中学习。FraGAT利用面向片段的多尺度图注意网络进行分子性质预测;MGSSL通过引入一种新的自监督主题生成框架,设计了基于主题的图自监督学习(MGSSL)。

MPNN类方法:MPNN将现有的几个最有前景的神经模型之间的共性抽象到一个单一的公共框架中,并专注于通过消息传递模块和消息更新模块获得有效的顶点(原子)嵌入;DMPNN:使用与定向键相关的消息,而不是与顶点相关的消息;CMPNN引入了一个新的消息增强模块来丰富消息生成过程。

图Transformer方法:CoMPT采用Transformer架构,通过加强节点和边缘之间的信息交互,学习了更专注的分子表示; GROVER模型通过精心设计的节点级、边缘级和图形级的自我监督任务,从大量的未标记分子数据中学习分子的丰富的结构和语义信息。此外,Graphormer模型也基于Transformer,但Graphormer是一个三维模型,它需要每个小分子的三维构象。

2.2 结果

表1 在分子性能预测分类任务上与最新方法的性能比较。

在分类任务:模型的工作特征曲线(ROC-AUC)的面积。Clintox、Tox21、ToxCast和SIDER都是多任务学习任务,其中包括总共658个分类任务。与传统的基线和几种基于gnn的模型相比,PharmHGT在所有数据集中都实现了ROC-AUC的大幅增加.PharmHGT的设计目的是为了更关注药效团的作用,这使得该模型更易于解释。值得注意的是,PharmHGT的计算成本优于训练前的方法。

表2 在分子性能预测回归任务上与最新方法的性能比较。

在回归任务:溶解度和亲脂性是基本的物理化学性质,这对于解释分子如何与溶剂和细胞膜相互作用至关重要。表2将PharmHGT结果与其他最先进的模型结果进行了比较。PharmHGT模型对ESOL、FreeSolv和亲脂性的最佳情况RMSE为0.680 ± 0.137、1.266 ± 0.239和0.583 ± 0.063,支架分裂为0.839 ± 0.049、1.689 ± 0.516和0.638 ± 0.040。这些结果表明,更好地表示包含更多信息的分子图可以显著提高模型对下游任务的性能。

2.3 消融实验

作者对PharmHGT进行了消融研究,以探讨原子水平视图、药物水平视图和结水平视图的影响。在相同的实验设置下,我们在两个基准上实现了PharmHGT的7个简化变体:

(1) PharmHGT_α:只保留原子级图。

(2) PharmHGT_β:只保留带有反应信息的水平图。

(3) PharmHGT_γ:只保留连接级图。

(4) PharmHGT_βα:通过将药物级图的特征与反应信息聚合到原子级图中。

(5) PharmHGT_γα:通过将连接级图的特征聚合到原子级图中。

(6) PharmHGT_βγ:通过将药物水平的特征与反应信息聚合到连接级图中。

(7) PharmHGT_γαβ:通过将结级图的特征与原子级图进行聚合,然后聚合到分支级图中。

如图3所示,考虑到来自所有视图的异构特征信息的PharmHGT在所有架构中显示出最好的性能。排除原子级、ἧ级或连接级视图都会导致性能下降,而当仅保留具有反应信息的ἧ级图时,PharmHGT_β表现最差。这表明,缺乏来自原子的信息并不能有效地代表分子的特征。当结合两种特征信息时,PharmHGT_γα将结级图聚合成一个原子级图,在具有一个或两个视图的模型中性能最好。这证明了整合来自分子片段的特征信息可以提高预测性能。PharmHGT的研究结果表明,进一步整合反应信息可以获得最有效的分子表征。

图3 在BBBP和ESOL数据集上的消融结果。“X”代表PharmHGT,“X_”代表聚合原子级、连接级和物理级特征的不同PharmHGT变体。

2.4 可视化

为了研究PharmHGT的分子表示学习能力,作者使用具有默认超参数的t-分布随机邻域嵌入(t-SNE)来可视化图4中Tox21数据集的分子表示。对于这个结果,我们将所有标记为0的分子定义为无毒化合物,将任何标记为1的分子定义为有毒化合物,并且具有相似毒性的分子往往具有更多相似的特征空间。因此,我们通过t-SNE可视化它们的嵌入,并评估模型是否可以通过有毒和无毒分子是否有明确的边界来学习有效的分子表示。DMPNN在Tox21任务中能力排名第二,并在有毒和无毒分子之间实现了合理的区分(图4a),但PharmHGT对有毒和无毒化合物的分类有更明显的边界(图4c)。此外,单视图(图4b)的性能远远低于多视图PharmHGT(图4c),这也证明了考虑分子多视图信息的必要性。

图4 分子特征可视化图。用t-SNE从DMPNN、b PharmHGT_α和c PharmHGT中可视化Tox21的分子特征。所有标记为0为无毒化合物的分子,以及任何标记为1为有毒化合物的分子,其中毒性化合物为红色,无毒化合物为蓝色。

3.总结

本文主要的贡献在于:

1.从化合物反应中获得了药效团信息,并保留了片段之间的反应信息。在此基础上,构造了一种异构分子图表示方法。

2.开发了一个异构图Transformer框架,它能够通过融合异构分子图的多视点信息,有效地捕获不同节点类型和边缘类型的信息,包括片段之间的反应信息。

3.在9个公共数据集上评估了PharmHGT,并证明了其优于最先进的优越性。

注意:本文展现内容并非原文所有内容,具体实验细节可见原文。

-------------------------------------------

欢迎点赞收藏转发!

下次见!

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

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

相关文章

springboot+dubbo+zookeeper 项目实战

现在有一段代码再前台,后台系统中都存在,都需要这段代码,存在这种情况,我们可以选择将这段代码提取出来作为一个服务,让前台和后台系统作为消费者远程调用这段代码,提高了代码的复用性。 springboot集成dub…

Unity Audio -- (2)创建动态音效

评估场景需求 本节的目标是添加脚步声到角色身上,当角色走路时,触发动画事件并播放声音。 脚步声是我们在真实世界中常常被我们所忽视的声音,但脚步声能够传达出许多环境信息。你现在可以花一小段时间绕着你周围的环境走一走并仔细听听脚步声…

CLIP : Learning Transferable Visual Models From Natural Language Supervision

CLIP : Learning Transferable Visual Models From Natural Language Supervision IntroductionApproach Introduction 在raw的数据上自监督的训练模型,已经在NLP领域取得了革命性进展,这种模型需要收到硬件、数据的限制,但是能得到很好的迁…

算法 DAY55 动态规划11 392.判断子序列 115.不同的子序列

392.判断子序列 本题可以直接用双指针解法。但是本题是编辑距离的入门题目,故采用动态规划解法为后序“编辑距离”类题目打基础。 本题与最大子序列非常相似,但不同的是s必须连续,t可以不连续。 五部曲 1、dp[i][j] 表示以下标i-1为结尾的字…

Seata介绍

介绍: Seata的设计目标是对这个业务无侵入,因此从业务无侵入的2PC方案开始的,在传统的2PC的基础上演进的。它把一个分布式事务拆分理解成一个包含了若干分支事务的全局事务。全局事务的职责是协调其下管辖的分支事务达成一致性,要…

25.自定义注解

自定义注解 一、什么是注解 Annontation是Java1.5开始引入的新特征,中文名称叫注解。 它提供了一种安全的类似注释的机制,用来将信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。为程序…

大数据技术之SparkSQL——数据的读取和保存

一、通用的加载和保存方式 SparkSQL提供了通用的保存数据和数据加载的方式。根据不同的参数读取,并保存不同格式的数据。SparkSQL默认读取和保存的文件格式为Parquet。 1.1 加载数据 spark.read.load 是加载数据的通用方式。 如果读取不同格式的数据,可…

如何编译DPDK静态库

阅读前面文章https://blog.csdn.net/qq_36314864/article/details/130243348,知道了哪些dpdk文件可以在windows下生成。 打开vs,新建一个生成静态库工程,在生成的lib文件中找到D:\dpdk-21.07\build\lib D:\dpdk-21.07\build\drivers找到对应的文件,并按照路径,新建筛选项…

【Vue学习笔记7】Vue3中如何开发组件

重点学习:vue3.0之组件通信机制defineProps(组件接收外部传来的参数)、defineEmits(向组件外部传递参数)。 1. 评级组件第一版 简单的评级需求,只需要一行代码就可以实现: "★★★★★☆…

SLAM面试笔记(5) — ROS面试

目录 1 ROS概述 2 ROS通信机制 问题:服务通信概念 问题:服务通信理论模型 3 常见面试题 问题:roslaunch和rosrun区别? 问题:什么是ROS? 问题:ROS中的节点是什么? 问题&…

挠性航天器姿态机动动力学模型及PD鲁棒控制

挠性航天器姿态机动动力学模型及PD鲁棒控制 1挠性航天器姿态机动动力学模型2挠性航天器姿态机动PD鲁棒控制2.1 动力学模型及PD控制律2.2仿真模型2.3 控制程序2.4 被控对象程序2.5 绘图程序2.6 结果 1挠性航天器姿态机动动力学模型 2挠性航天器姿态机动PD鲁棒控制 2.1 动力学模…

【NLP开发】Python实现聊天机器人(ChatterBot,集成web服务)

🍺NLP开发系列相关文章编写如下🍺: 🎈【NLP开发】Python实现词云图🎈🎈【NLP开发】Python实现图片文字识别🎈🎈【NLP开发】Python实现中文、英文分词🎈🎈【N…

澳大利亚兔灾和——栈?

一.背景 1859年,当一位叫托马斯奥斯汀的农民收到英国老家送来的24只野兔并将它们放归农场的时候,他绝对意想不到,这些看似人畜无害的小兔子,竟为古老的澳洲大陆带来一场巨大的生态破坏。到20世纪初,澳大利亚的兔子数量…

操作系统内存管理(上)——内存管理基础

一、内存的基本知识 1.什么是内存?有什么作用? 内存可存放数据。程序执行前先放到内存才能被CPU处理——缓和CPU和硬盘之间的速度矛盾。 给内存的存储单元编址。如果计算机按字节编址,则每个存储单元大小为1字节。即1B8b(8个二进…

智能医院导航导诊系统,门诊地图导航怎么做?

现在很多医院都是综合化大型医院,有很多的科室,院区面积也逐渐扩大,一方面给病患提供了更为全面的医疗资源,另一方面,医院复杂的环境也给病患寻医问诊带来了一定的困扰。电子地图作为大家最喜闻乐见的高效应用形式&…

Python的socket模块及示例

13.2 socket模块 socket由一些对象组成,这些对象提供网络应用程序的跨平台标准。 13.2.1 认识socket模块 socket又称“套接字”,应用程序通常通过“套接字”向网络发出请求或应答网络请求,使主机间或一台计算机上的进程间可以通信。sock…

Android 路由框架ARouter源码解析

作者:小马快跑 我们知道在使用ARouter时,需要在build.config里配置: annotationProcessor com.alibaba:arouter-compiler:1.2.2并且知道annotationProcessor用来声明注解解析器,arouter-compiler用来解析ARouter中的各个注解并自…

代码管理记录(一): 码云Gitee代码提交和维护

文章目录 Gitee介绍登录地址代码提交 Gitee介绍 Gitee 是一个类似于GitHub的代码托管平台,是中国的开源社区和开发者社区。它为开发者提供了基于Git的代码托管、协作、部署、代码质量检测、漏洞扫描、容器镜像等服务,同时也提供了一系列的个人资料和社交…

gitlab使用docker简单快速部署

文章目录 前言一、下载gitlab镜像二、安装步骤1.创建docker-compose文件2. 启动及登陆 三、配置页面总结 前言 GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。本文主要用来记录如何使用docker快速搭…

c#笔记-类成员

声明类 类可以使用帮助你管理一组相互依赖的数据,来完成某些职责。 类使用class关键字定义,并且必须在所有顶级语句之下。 类的成员只能有声明语句,不能有执行语句。 class Player1 {int Hp;int MaxHp;int Atk;int Def;int Overflow(){if (…