DDI中的自适应子结构

SA-DDI提出了一种子结构感知图神经网络,一种配备了子结构注意力机制和用于DDI预测的子结构-子结构交互模块(SSIM)的消息传递神经网络。具体而言,基于分子中官能团的尺寸和形状通常是不规则的化学直觉,子结构注意力被设计为捕获尺寸和形状自适应的子结构。DDI与化学子结构相互作用相关(一般是两个子结构间接相关,通过中间的蛋白产生关联)。

来自:Learning size-adaptive molecular substructures for explainable drug–drug interaction prediction by substructure-aware graph neural network

目录

  • 背景概述
  • 方法
    • 子结构提取
    • 子结构注意力
    • 子结构相互作用模块
    • 药物相互作用预测

背景概述

目前已经开发了许多用于DDI预测的计算模型,并且这些方法在各种数据集上显示出有希望的性能。然而,对于DDI预测中的基于结构的方法,至少有三个问题没有得到很好的解决:

  • 首先,大多数工作将分子的子结构视为固定大小,因此使用具有预定层数的GNN只能捕获固定的半径(跳数)。然而,化学子结构的大小和形状通常是不规则的,如图1a所示。
  • 其次,GNN最常见的read out函数(即全局均值或求和pooling)不适合DDI预测。例如,通过直接计算子结构表示的总和或者平均值,基本子结构(如乙酸)可能会被次要子结构(例如丙基)淹没,如图1b所示。
  • 第三,大多数工作仅在暖启动场景下进行实验(即训练和测试集共享药物分子)。然而,实际应用通常需要DDI预测冷启动场景,以推断新药和已知药物之间的相互作用或新药之间的相互作用。

fig1

  • 图1:SA-DDI的动机。a:达卡巴嗪中两个突出显示的官能团具有不同的大小和形状。b:棕榈酸的半径为1的子结构(也称为1跳子结构)及其频率。丙基具有最大的频率,但它是DDI的不太重要的子结构。

因此提出SA-DDI如图2所示。SA-DDI通过以下贡献缓解了上述限制:

  • 有向消息传递神经网络(D-MPNN)用来提取大小灵活且形状不规则的子结构。在SA-DDI中,由子结构注意力机制确定的不同分数被分配给具有不同半径的子结构。以具有不同半径的原子为中心的子结构的加权和产生尺寸自适应的子结构,如图2所示。
  • 引入了子结构-子结构相互作用模块(SSIM)来模拟药物对的功能子结构之间的化学反应。SSIM克服了全局pooling的局限性,因为全局pooling将每个子结构视为同等重要。

fig2

  • 图2:SA-DDI以一对药物作为输入,然后将它们送到前馈层,然后是配备了子结构注意力的D-MPNN,以提取尺寸和形状自适应的子结构。有向消息传递网络用 T T T次迭代来更新节点特征,其中在该示例中 T T T是6。然后将提取的子结构输入SSIM,以学习子结构-子结构的相互作用。最后,该模型基于子结构-子结构相互作用的结果预测DDI。

方法

一般来说,DDI的预测任务是开发一个输入两种药物的计算模型(输入药物 d x d_x dx d y d_y dy,输出为相互作用类别 r r r)。

子结构提取

分子的原子充当图的节点,而边是由化学键形成的。药物 d d d G = ( V , E ) G=(V,E) G=(V,E)表示, v i ∈ V v_{i}\in V viV为第 i i i个原子, e i j ∈ E e_{ij}\in E eijE为原子 i , j i,j i,j之间的键。每个节点 v i v_{i} vi有一个特征 x i ∈ R d x_{i}\in R^{d} xiRd,边 e i j e_{ij} eij有一个特征 x i j ∈ R d ′ x_{ij}\in R^{d'} xijRd

经典的GNN如图3a所示。一般来说,GNN由三个阶段组成:

  • 通过聚合来自其邻居节点的消息来更新节点级特征(即消息传递),如图3b所示;
  • 通过使用read out函数聚合来自分子图的所有节点级特征来生成图级特征向量,如图3c所示;
  • 基于图级特征向量预测图的标签,如图3a所示。

fig3

  • 图3:GNN的图示。

SA-DDI使用D-MPNN,作为通用消息传递神经网络(MPNN)架构的变体,用于分子子结构提取。到目前为止,对于标准的GNN,DDI预测有两个缺点。首先,GNN提取固定大小的子结构 h i ( T ) h_{i}^{(T)} hi(T)。其次,read out太过直接( h G = 1 n ∑ i = 1 n h i ( T ) h_{G}=\frac{1}{n}\sum_{i=1}^{n}h_{i}^{(T)} hG=n1i=1nhi(T)或者 h G = ∑ i = 1 n h i ( T ) h_{G}=\sum_{i=1}^{n}h_{i}^{(T)} hG=i=1nhi(T))。因此,SA-DDI引入子结构注意力和子结构相互作用模块来解决。

子结构注意力

子结构注意力被设计用于提取具有任意大小和形状的子结构。在第 k k k次迭代期间,D-MPNN提取半径为 k k k的子结构。使用具有不同半径的原子为中心的子结构的加权和可以获得尺寸自适应的分子子结构,如图2所示。子结构注意力的思想是为具有不同半径的子结构分配不同的分数。具体来说,对于第 t t t层的边级别特征 h i j ( t ) h_{ij}^{(t)} hij(t),首先通过拓扑感知的bond pooling获得图级别特征 g ( t ) ∈ R h g^{(t)}\in R^{h} g(t)Rh g ( t ) = ∑ i = 1 n ∑ v j ∈ N ( v i ) β j i h j i ( t ) g^{(t)}=\sum_{i=1}^{n}\sum_{v_{j}\in N(v_{i})}\beta_{ji}h_{ji}^{(t)} g(t)=i=1nvjN(vi)βjihji(t)其中, b e t a i j beta_{ij} betaij通过SAGPooling获得: β j i = s o f t m a x ( G N N ( A e , X e ) ) \beta_{ji}=softmax(GNN(A_{e},X_{e})) βji=softmax(GNN(Ae,Xe))其中, X e X_{e} Xe是边的特征矩阵, A e A_e Ae是邻接矩阵,其中非零位置指示两个键共享一个公共节点。然后,为每个图级表示 g ( t ) g^{(t)} g(t)分配注意力得分,如下所示: e ( t ) = a ( t ) ⊙ σ ( W g ( t ) + b ) e^{(t)}=a^{(t)}\odot\sigma(Wg^{(t)}+b) e(t)=a(t)σ(Wg(t)+b)其中, ⊙ \odot 表示点积, a ( t ) ∈ R h a^{(t)}\in R^{h} a(t)Rh为第 t t t层的权重向量,然后对所有层的 e ( t ) e^{(t)} e(t)归一化: α ( t ) = e x p ( e ( t ) ) ∑ k = 1 T e x p ( e ( k ) ) \alpha^{(t)}=\frac{exp(e^{(t)})}{\sum_{k=1}^{T}exp(e^{(k)})} α(t)=k=1Texp(e(k))exp(e(t))其中 α ( t ) ∈ R 1 \alpha^{(t)}\in R^{1} α(t)R1即为每一层的注意力,最终边 e i j e_{ij} eij的表示为: h i j = ∑ t = 1 T α ( t ) h i j ( t ) h_{ij}=\sum_{t=1}^{T}\alpha^{(t)}h_{ij}^{(t)} hij=t=1Tα(t)hij(t)最后,通过聚合传入的边级特征返回到节点级特征,如下所示: m i = ∑ v j ∈ N ( v i ) h j i m_{i}=\sum_{v_{j}\in N(v_{i})}h_{ji} mi=vjN(vi)hji h i = f ( x i + m i ) h_{i}=f(x_{i}+m_{i}) hi=f(xi+mi)其中, h i h_{i} hi包含了来自不同感受野的子结构信息。

子结构相互作用模块

为了克服GNN最常见的read out函数的限制。提出了SSIM来识别DDI的关键子结构。通过使用子结构注意力,SA-DDI提取了几个大小自适应的子结构,每个子结构以一个原子为中心,如图2所示。SSIM用于为药物的每个子结构分配一个分数,其中分数由其与另一种药物的相互作用概率决定,如图4所示。
fig4

  • 图4:相互作用概率计算。

给定药物对 ( d x , d y ) (d_x,d_y) (dx,dy),我们假设 d x d_x dx的子结构信息可以用来检测 d y d_y dy的潜在子结构。特别的,我们用拓扑感知全局pooling来获得 d x d_x dx的图表示: g x = ∑ i = 1 n β i h i ( x ) g_x=\sum_{i=1}^{n}\beta_{i}h_{i}^{(x)} gx=i=1nβihi(x) β i = s o f t m a x ( G N N ( A v , X v ) ) \beta_{i}=softmax(GNN(A_{v},X_{v})) βi=softmax(GNN(Av,Xv))其中 X v X_v Xv是节点级特征矩阵, A v A_v Av是邻接矩阵,其中非零位置指示两个节点有连接。然后,我们计算药物 d x d_x dx与药物 d y d_y dy中的第 i i i个子结构的相互作用概率 s i ( y ) s_{i}^{(y)} si(y) s i ( y ) = s o f t m a x ( ( W x g x ) ⊙ ( W y h i ( y ) ) ) s_{i}^{(y)}=softmax((W_{x}g_{x})\odot(W_{y}h_{i}^{(y)})) si(y)=softmax((Wxgx)(Wyhi(y)))其中, W x ∈ R h ′ × h W_{x}\in R^{h'\times h} WxRh×h W y ∈ R h ′ × h W_{y}\in R^{h'\times h} WyRh×h是两个权重矩阵, s i ( y ) s_{i}^{(y)} si(y)可以被视为以 d y d_y dy的第 i i i个原子为中心的子结构的重要性。因此, d y d_y dy的图级表示为: h G y = ∑ i = 1 n s i ( y ) ⋅ h i ( y ) ⋅ g x h_{G_{y}}=\sum_{i=1}^{n}s_{i}^{(y)}\cdot h_{i}^{(y)}\cdot g_{x} hGy=i=1nsi(y)hi(y)gxSSIM利用 d x d_x dx的结构信息通过向 d y d_y dy中的重要子结构分配更高的分数来增强 d y d_y dy的表示,反之亦然。

药物相互作用预测

给定DDI三元组 ( d x , d y , r ) (d_x,d_y,r) (dx,dy,r),DDI预测可以表示为下面的联合概率: P ( d x , d y , r ) = σ ( ( W x y ( h G x ∣ ∣ h G y ) ) ⊙ u r ) P(d_x,d_y,r)=\sigma((W_{xy}(h_{G_{x}}||h_{G_{y}}))\odot u_r) P(dx,dy,r)=σ((Wxy(hGx∣∣hGy))ur)其中, W x y ∈ R b × h , u r ∈ R b W_{xy}\in R^{b\times h},u_r\in R^{b} WxyRb×h,urRb是类型 r r r的可学习参数, ∣ ∣ || ∣∣表示concat,模型的学习过程可以通过最小化交叉熵损失函数来实现: L = − 1 ∣ D ∣ ∑ ( d x , d y , r ) i ∈ D y i l o g ( p i ) + ( 1 − y i ) l o g ( 1 − p i ) L=-\frac{1}{|D|}\sum_{(d_x,d_y,r)_i\in D}y_{i}log(p_{i})+(1-y_{i})log(1-p_{i}) L=D1(dx,dy,r)iDyilog(pi)+(1yi)log(1pi)其中, y i = 1 y_i=1 yi=1表示 d x d_x dx d y d_y dy之间存在相互作用,反之亦然, p i p_i pi是DDI预测的概率。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

大模型时代下做科研的四个思路【论文精读·52】

大家好,上个礼拜FacebookMetaAI刚刚开源了他们自己的一个语言的大模型,叫做LLAMA,这个LLAMA的模型有65billing的参数,效果自然是不错的。他们的目的也是想让这个大模型更加的亲民,能够让更多人拿到这个模型的参数&…

ClickHouse快速上手

简介 ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS) 官网(https://clickhouse.com/docs/zh)给出的定义,其实没看懂 特性 ClickHouse支持一种基于SQL的声明式查询语言,它在许多情况下与ANSI SQL标准相同。使用时和MySQL有点相似&#…

加固平板电脑在无人机的应用|亿道三防onerugged

无人机技术的快速发展已经在许多领域展现出巨大潜力,而加固平板电脑的应用在无人机领域中扮演着重要角色。 首先,加固平板电脑在无人机探测设备中发挥着关键作用。无人机探测设备通常需要实时传输高清图像和数据,以支持各种监测、勘测和检测…

JAVA高并发——无锁与死锁

文章目录 1、与众不同的并发策略:比较交换2、无锁的线程安全整数:AtomicInteger3、Java中的指针:Unsafe类4、无锁的对象引用:AtomicReference5、带有时间戳的对象引用:AtomicStampedReference6、数组也能无锁&#xff…

Unity2023.1.19_ShaderGraph节点说明以及使用技巧

Unity2023.1.19_ShaderGraph节点说明以及使用技巧 目录 Unity2023.1.19_ShaderGraph节点说明以及使用技巧 1. 快捷键CtrlG完成和UE蓝图使用快捷键C一样的蓝图分组注释效果: 2. Tiling And Offset: 3. 以下是两组URP材质渲染的效果对比: 4…

JWT 重点讲解

JWT 重点讲解 文章目录 JWT 重点讲解1. JWT 是什么2. JWT 的组成2.1 第一部分 HEADER2.2 第二部分 PAYLOAD2.3 第三部分 SIGNATURE 3. JWT 在线生成与解析4. JWT 的特点4.1 无状态4.2 可自定义4.3 扩展性强4.4 调试性好4.5 安全性取决于密钥管理4.6 无法撤销4.7 需要缓存到客户…

Android基础Adapter适配器详解

一、概念 Adapter是后端数据和前端显示UI的适配器接口。常见的View如ListView、GridView等需要用到Adapter. BaseAdapter:抽象类,实际开发中继承这个类并且重写相关方法,用得最多的一个Adapter! ArrayAdapter:支持泛型…

第五篇【传奇开心果系列】Python文本和语音相互转换库技术点案例示例:详细解读pyttsx3的`preprocess_text`函数文本预处理。

传奇开心果短博文系列 系列短博文目录Python文本和语音相互转换库技术点案例示例系列 短博文目录前言一、pyttsx3的preprocess_text函数文本预处理基本用法示例代码二、实现更复杂的文本预处理逻辑示例代码三、去除停用词、词干提取示例代码四、词形还原、拼写纠正示例代码五、…

19-k8s的附加组件-coreDNS组件

一、概念 coreDNS组件:就是将svc资源的名称解析成ClusterIP; kubeadm部署的k8s集群自带coreDNS组件,二进制部署需要自己手动部署; [rootk8s231 ~]# kubectl get pods -o wide -A k8s系统中安装了coreDNS组件后,会有一个…

Linux(五)__系统管理

介绍 通常, Windows 中使用"任务管理器"主要有 3 个目的: 利用"应用程序"和"进程"标签来査看系统中到底运行了哪些程序和进程;利用"性能"和"用户"标签来判断服务器的健康状态&#xff1…

国际章真厉害,离婚后仍带汪峰继女小苹果赴日滑雪。

♥ 为方便您进行讨论和分享,同时也为能带给您不一样的参与感。请您在阅读本文之前,点击一下“关注”,非常感谢您的支持! 文 |猴哥聊娱乐 编 辑|徐 婷 校 对|侯欢庭 在如今这个纷繁复杂的社会中,家庭关系和亲子关系的…

K8S | 全面解读CKA认证的重要性!

K8S认证工程师(CKA)备考与学习指南https://blog.csdn.net/XMWS_IT/article/details/133697915?ops_request_misc%257B%2522request%255Fid%2522%253A%2522170849020616800182129977%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2…

在VS里使用C#制作窗口应用

新建项目 创建项目的时候搜索net,选择这个。 打开应该是这样 第一个控件 选择公共控件 - PictureBox - 拖入Form 在Image处选择上传本地资源,建议上传一个小一点的图片。 修改一下尺寸。 ctrls 保存 从“属性”切换到“事件” 双击Click事件…

学习并理解SQL注入问题

一、什么是sql注入 public class TestSql {public static void main(String[] args) {Scanner inScanner new Scanner(System.in);System.out.println("请输入用户名");String username inScanner.nextLine();System.out.println("请输入密码");String …

【RN】为项目使用React Navigation中的navigator

简言 移动应用基本不会只由一个页面组成。管理多个页面的呈现、跳转的组件就是我们通常所说的导航器(navigator)。 React Navigation 提供了简单易用的跨平台导航方案,在 iOS 和 Android 上都可以进行翻页式、tab 选项卡式和抽屉式的导航布局…

防御第六次作业-防火墙综合实验(av、url过滤、dns过滤)

目录 拓扑图: 要求: 8 9 10 11 拓扑图 要求 前7个要求在上一篇博客; 8.分公司内部的客户端可以通过域名访问到内部的服务器 9.假设内网用户需要通过外网的web服务器和pop3邮件服务器下载文件和邮件,内网的FTP服务器也需要…

安装unget包 sqlsugar时报错,完整的报错解决

前置 .net6的开发环境 问题 ? 打开unget官网,搜索报错的依赖Oracle.ManagedDataAccess.Core unget官网 通过unget搜索Oracle.ManagedDataAccess.Core查看该依赖的依赖 发现应该是需要的依赖Oracle.ManagedDataAccess.Core(>3.21.100)不支持.net6的环境 解…

加载arcgis切片服务网络请求有大量404错误

需求: 前端访问arcgis切片服务时,在网络请求中出现大量404(Not Found)错误,切片时设置了感兴趣区域,在感兴趣范围内请求切片时能够正常返回切片。 问题分析: 设置感兴趣区域切片的目的是减少站…

基于Mapbox展示GDAL处理的3D行政区划展示实践

目录 前言 一、Gdal数据处理 1、数据展示 2、Java数据转换 二、Mapbox可视化 1、定义Mapbox地图 2、地图初始化 3、创建地图 三、界面优化 1、区域颜色设置 2、高度自适应和边界区分 3、中文标注 总结 前言 最近有遇到一个需求,用户想在地图上把行政区划…

IP地理位置查询定位:技术原理与实际应用

在互联网时代,IP地址是连接世界的桥梁,而了解IP地址的地理位置对于网络管理、个性化服务以及安全监控都至关重要。IP数据云将深入探讨IP地理位置查询定位的技术原理、实际应用场景以及相关的隐私保护问题,旨在为读者提供全面了解和应用该技术…