Bioinformatics2021 | FraGAT+:基于分子原始片段的多尺度图注意力机制的分子性质预测模型

news2025/8/11 16:37:20

原文标题:FraGAT: a fragment-oriented multi-scale graph attention model for molecular property prediction

论文地址:FraGAT: a fragment-oriented multi-scale graph attention model for molecular property prediction | Bioinformatics | Oxford Academic

code地址:GitHub - ZiqiaoZhang/FraGAT: FraGAT: a fragment-oriented multi-scale graph attention model for molecular property prediction

提出了可能是或包含与分子性质相关的官能团的分子图片段的定义,然后开发了面向片段的分子性质预测多尺度图注意网络FraGAT

一、问题提出

现有的大多数模型都将分子视为平面结构。这些模型首先计算分子中每个原子的节点embedding,然后利用readout得到分子的graph embedding。显然,分子的层次结构被忽略了。

几个原子可以形成小原子团,小原子团又可以进一步形成更大的原子团,再由这些更大的原子团组成分子。一个分子可能由许多原子团组成,而某些特定的原子团将决定其一定的分子性质。分子及其任何目标分子本质上是分子的某些特定原子团和目标蛋白质之间的相互作用。这些原子团叫做官能团。官能团是分子性质预测的重要特征。然而,从分子中提取官能团的计算成本很高

基于片段的工作:

FraGVAE:用于小数据集分子性质预测。该模型使用变分自编码器对分子进行编码。每个分子被分成半径为1的圆形组,所有这些小组组成一个碎片袋。然后分别对片段袋和原始分子图进行编码

【N-gram graph: simple unsupervised representation for graphs, with applications to molecules】:引入用于分子性质预测的N-Gram graph。n-gram graph模型将分子图分解为一组n-gram walk,即分子图中长度为n的walk,这些游走被视为片段。然后使用一个词嵌入模型将每个顶点embedding到节点embedding中。最后,在节点embedding的基础上,采用无学习参数的简单GNN进行graph embedding

虽然上述方法将分子分裂成片段,但不能保证它们是化学和药学意义上的真实(或有效)原子团。特别是,这些碎片可能会将芳香环分解成无效的基团 

二、模型方法

1、Molecular fragments

最大问题:如何定义片段和如何从分子中提取这样的片段?

Fragment definition

将原子团分为两类:(一)不含无环单键(无氢)的小原子团,称为碱性原子团,如-OH、-NH2、-X等;(二)碱性原子团通过无环单键组合而成的大原子团,如羧基、托利基等。我们称之为组合原子团。

这两种类型的原子团可能都与分子的性质有关。例如,-X可以影响药物的代谢特性和毒性。而由两个甲基和一个苯环组成的甲苯对分子毒性的影响要比由一个甲基和一个苯组成的甲苯强得多。然而,一甲基和二甲基之间的结构差异不足以解释毒性差异。这表明基本原子团和组合原子团都应该被用来表示分子的片段。

考虑到分子中大多数原子团通过无环单键与其他部分连接,可将无环单键视为原子团的边界。

定义:给定一个hydrogen-depleted分子图,片段包括通过破坏所有非环单键而生成的小子图,以及由原始分子图中连接的小子图组合而成的大子图。称小的子图为基本片段,大的子图为分子图的组合片段。

Fragment extraction

根据上面的定义,可以列举出一个分子中的所有片段。但是,考虑到有机化学品的结构比较复杂,通常由长骨架和多分支组成,一个分子中非环单键的数量可能非常多,如补充表S1所示。可能的片段数随着非环单键的数量呈指数增长。所以,计算成本很高。

因此:给定一个分子,所有的非环单键都表示为易碎键。在训练阶段,每次将分子输入模型时,随机选择一个可折断的键进行断裂。因此,生成了两个子图。显然,这两个子图符合片段的定义。所以,我们每次得到分子的两个片段,或一对片段。这样可以大大降低模型训练的计算成本和内存消耗。

在评估阶段,如果仍然对每个测试分子使用随机打破策略,预测会太随机。因此采用一种数据增强的方法进行测试。通过打破不同的易碎键,每个分子被扩增为一批“smaple”。所有这些样本都被输入到模型中,结果是一批预测。这些预测结果的平均值作为该分子的最终预测。

2、模型

三个分支(提取多尺度结构特征)

  • 将原始分子图输入特征提取器,特征提取器将原始分子图编码为一个嵌入向量,该向量携带该分子的整个结构信息。
  • 原始分子图被分解成片段对,这些片段对被输入到提取器中,得到这两个片段的嵌入向量。
  • 每个片段对被抽象为两个超级节点(每个节点对应一个片段),由断裂的键连接。这样,就生成了一个连接树(片段上的树形结构支架)。在第二个分支中提取的两个片段的嵌入向量作为两个超级节点的初始特征。通过特征提取器对连接树进行编码,获取片段的连通性信息。然后将通过树枝得到的embedding向量串联起来,作为所处理分子的表示向量。

Attentive FP and attentive layers

给定一个分子,可以建模为:

其中V为原子集合、E键集合、Xatom原子性质、Xbond键性质。

性质由RDKit可以测出。

 the Attentive FP network:
 

第一部分:将原始Graph输入到Attentive layers得到node embedding

第二部分:将原分子图G缩小为一个超级节点s,因此新的表示为:

超级结点(可视为是bert里面的cls向量)定义为:

利用T个Attentive layers提取超节点s的node embedding,记为hs,认为是该分子的graph embedding。

Attentive layers结构:

attention层由两个步骤组成: aggregation 和update。在aggregation 中,目标节点t聚合从其1-hop邻居传播的信息。一个注意机制被用来给消息分配权重,这样模型就会关注重要的消息。第1注意层具有注意机制的聚合步骤可形式化为:

即ht和hi的节点嵌入初始化:

然后,在update中,使用GRU:

三、Experiments and results

1、benchmark(MoleculeNet)

2、Ablation study

对比M1, M12和FraGAT模型,随着模型中考虑更多的信息,预测能力提高了,这表明所提出的多尺度特征提取网络的有效性。M2的结果表明,即使只使用片段对来表示分子,该模型在大多数数据集上仍能取得较好的预测性能,这说明了片段与分子性质之间存在相关性。

3、Case studies

在评估阶段,通过打破不同的易碎键,每个分子被扩增成一批样品。对于不同的样本,模型可能得到不同的预测结果。在预测一个给定分子的性质时,比较所有增强样本的预测,并检验样本的两个片段的最佳结果。

SHP2数据集中3个分子(用a、b和c表示),y^i是由模型得到的最终预测的均值,yi是由模型得到的最终预测。E为最终预测的绝对误差,M为Ei最小的样品的易碎键标签号,ym为该样品的预测,Em为真实的绝对误差:

图5中可以看出,当5号键断裂时,这个氨基是一个片段,得到的样品预测效果最好,如表4所示。

创新性很强!!!

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

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

相关文章

Windows OpenGL ES 图像阴影

目录 一.OpenGL ES 图像阴影 1.原始图片2.效果演示 二.OpenGL ES 图像阴影源码下载三.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 特效 零基础 OpenGL E…

SuperMap 云原生动态伸缩不可用该如何解决

最近碰到个别用户在ARM环境国产化操作系统中使用SuperMap iManager for K8S的时候出现服务节点伸缩不生效的问题。今天咱们就以此例来给大家讲解下如何解决该问题。 问题现象:在云套件服务节点管理中,设置伸缩为动态伸缩,设置阈值条件后&…

web前端-javascript-自增++和自减--(a++和++a,都在自身基础上+1,a--和--a都在自增基础上-1,自增和自减的练习)

文章目录自增和自减--1. 自增 1.1 通过自增可以使变量在自身的基础上增加1.2 对一个变量自增以后,原变量的值会立即自增 11.3 自增分为两种,:后(a) 和 前(a)2. 自减 --2.1 通过自减可以使变量在自身的基础上减 12.2 自减分成两种,…

(热门)智慧社区助力实现社区数字化转型

社区是人们生活的重要场所,传统社区的运营及管理方式已经无法满足人们日益增长的物质和文化生活需要。社区的通讯、安全和社区居民信息的收集、处理及共享等问题都成为阻碍社区服务进一步发展的瓶颈。 智慧社区是利用物联网、云计算、移动互联网、信息智能终端等新…

前后端分离项目,vue+uni-app+php+mysql订座预约系统设计与实现(H5移动项目)

功能介绍 【后台功能】 广告管理:设置小程序首页轮播图广告和链接 留言列表:所有用户留言信息列表,支持删除 会员列表:查看所有注册会员信息,支持删除 录入资讯:录入资讯标题、内容等信息 管理资讯&#x…

电力电子元器件行业研究:市场规模持续增长

电力电子元器件制造是指用于电能变换和控制(从而实现运动控制)的电子产品的制造。 电力电子器件具有以下特征 1)其处理电功率的能力较强;(2)其主要工作在开关状态;(3)电…

前后端分离项目,vue+uni-app+php+mysql电影院售票系统设计与实现(H5移动项目)

功能介绍 【后台功能】 会员列表:查看所有注册会员信息,支持删除 录入资讯:录入资讯标题、内容等信息 管理资讯:查看已录入资讯列表,支持删除和修改 广告设置:上传图片和设置小程序首页轮播图广告地址 留言…

Java项目:JSP网上在线酒类商城系统网站

作者主页:源码空间站2022 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 本项目为前后台项目,分为普通用户与管理员两种角色,普通用户登录前台,管理员登录后台; 管理员角…

[附源码]java毕业设计医院疫情疾控管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

Android入门第34天-Android的Menu组件使用大全

简介 Android有不同的菜单: 系统菜单弹出菜单(可自定义样式)Context Menu;子菜单; 菜单的使用和我们前面说的AlertDialog很像。它可以支持自定义样式、也可以对菜单的点击事件进行绑定。 Android里有几个MainActivit…

《嵌入式 - 深入剖析STM32》STM32 启动流程详解(GCC)

开发环境: 处理器:STM32F103 GCC:10.3.1 对于我们常用的桌面操作系统而言,我们在开发应用时,并不关心系统的初始化,绝大多数应用程序是在操作系统运行后才开始运行的,操作系统已经提供了一个合…

vxe-table 表格尾部小计列项再合计展示

公式:店员奖金item1item3item5item7 this.dyjj全局变量 this.tableDat 全局数组 1.求出尾部小计这一行的数据 columns.map((column, columnIndex) > { var aa XEUtils.sum(data, column.property) this.tableDat.push(aa) if (columnIndex 0) { return ‘小计…

USB TO I2C/SPI(上海同旺电子)调试器调试ADT7420--step3

所需设备: 1、USB TO I2C/SPI(上海同旺电子)专业版 或 升级版 2、ADT7420 0.25C精度、16位数字I2C温度传感器; USB TO I2C/SPI(上海同旺电子)专业版 或 升级版,既支持I2C的标准指令,又支持I2C的复合指令,市面上大部分I2C调试器…

【JSP】Page指令和九大内置对象

JSPJSP中的Page指令关于Page指令常用的属性1. <%page session"true|false" %>2. <%page contentType"text/json" pageEncoding"UTF-8" %>3. <%page import"java.util.Collection,java.sql.Connection"%>4. <%pag…

ImmunoChemistry艾美捷绿色活/死染色解决方案

ImmunoChemistry艾美捷绿色活/死染色是一种活细胞不渗透、绿色荧光发射DNA染料&#xff0c;用于生存能力、细胞凋亡和坏死研究以及固定细胞核染色。本产品与坏死或渗透化细胞的dsDNA/细胞核结合&#xff0c;可与活细胞染料结合使用&#xff0c;用于活/死鉴别。使用流式细胞仪或…

Redis基础命令(String类型)Value为JSON

目录 String类型&#xff08;存储的值为JSON形式&#xff09; 问题&#xff1a; 解决办法&#xff1a; 示例&#xff1a; 实际操作&#xff1a; 总结&#xff1a; String类型&#xff08;存储的值为JSON形式&#xff09; 问题&#xff1a; Redis没有类似MySql中的表的概…

iText7高级教程之html2pdf——5.自定义标签和CSS应用

在本章中&#xff0c;我们将更改pdfHTML插件的两个最重要的内部机制。 我们将覆盖将HTML标签与iText对象匹配的默认功能&#xff0c;更具体地说是DefaultTagWorkerFactory机制&#xff0c;以及我们将覆盖将CSS样式与iText样式相匹配的默认功能&#xff0c;更具体地说是Default…

【Python百日进阶-WEB开发-冲進Flask】Day183 - Flask数据库ORM基础、增加

文章目录一、day03项目环境和结构搭建1.1 flask-script1.1.1 flask-script是干什么的&#xff1f;1.1.2 flask-script安装1.1.3 flask-script的使用1.1.3.1 创建Manager实例1.1.3.2 初始化实例出错与解决1.1.4 终端启动1.1.4.1 查看runserver参数1.1.5 自定义添加manager命令1.…

ARM-A架构入门基础(二)异常处理

14天学习训练营导师课程&#xff1a;周贺贺《ARMv8/ARMv9架构-快速入门》 1. 异常处理种类 1.1 中断 在ARM中&#xff0c;FIQ的优先级要高于IRQ&#xff0c;在SOC内部会有一个中断控制器负责中断优先级调度&#xff0c;然后发送中断信号给处理器。中断属于异步模式的异常。 …

Python定时打开世界杯直播,还有小姐姐语音提醒哦~不错过每一场世界杯比赛

前言 卡塔尔世界杯今晚0点就要开幕了&#xff0c;为了防止大家沉迷工作&#xff0c;忘记看球&#xff0c;小编用50行Python代码写了一个定时提醒你看球的小程序&#xff0c;还有小姐姐语音提醒哟~&#x1f387; &#xff08;文末送读者福利&#xff09; 1、代码说明 获取上…