DSN-DDI:双视图表征学习实现药物间相互作用预测性能突破

简介: DSN-DDI:双视图表征学习实现药物间相互作用预测性能突破

作者:于洲

对于需要服用多种药物的病人来说,如何确保这些药物在实现功能的同时不会相互作用对人体造成伤害是个值得思考的问题。



药物 - 药物相互作用 (drug-drug interaction, DDI) 预测用于识别药物组合之间的相互作用,其中由于理化不相容性而引起的不良反应已引起广泛关注。以往的研究通常从整个药物分子的单双视角对药物信息进行建模,而忽略了原子间详细的相互作用,导致信息不完整和有噪声,限制了 DDI 预测的准确性。在这项工作中,微软研究院科学智能中心的研究员和湖南大学 DrugAI 团队首次提出了一种新的用于 DDI 预测的双视图药物表示学习网络 (“DSN-DDI”),该网络迭代地使用局部和全局表示学习模块,同时从单个药物 (“intra-view”) 和药物对 (“inter-view”) 中学习药物子结构。DSN-DDI 显著提高了现有药物的 DDI 预测性能,显示出在现实世界中 DDI 应用的有用性,在协同药物组合预测方面表现出良好的可转移性,可作为药物发现领域的通用框架。


代码链接:microsoft/Drug-Interaction-Research at DSN-DDI-for-DDI-Prediction (github.com)


本文创新和贡献:


  • DSN-DDI 采用了局部和全局的迭代表示学习模块,充分利用药物表征和药物对表征来进行子结构提取和药物相互作用 (DDI) 预测。
  • DSN-DDI 在转导设置和感应设置方面均达到了最先进的性能,并显示出对真实世界 DDI 应用的有用性。
  • DSN-DDI 具有良好的可转移性,可以作为药物发现领域的通用框架。


1. 方法介绍


在本研究中,为了充分利用来自不同 GNN 块的药物隐藏表示和利用原子层面的双视图信息,本文设计了 DSN-DDI,它采用了迭代的局部和全局表示学习模块,同时从 “intra-view” 和 “inter-view” 学习药物子结构,并使用所有分层的全局表示进行 DDI 预测,而不依赖额外的领域知识。这使得该模型同样适用于只有药物化学结构可及的诱导环境。DSN-DDI 可分为子结构学习模块和 DSN 解码器模块,前者用于从双视角学习药物对的子结构,后者用于子结构集成和最终的 DDI 预测。本文将药物相互作用预测问题形式化为二分类问题,并提出了一种新的药物 - 药物图。


DSN-DDI 是一个从双视角迭代学习药物子结构的图神经网络 (GNN),通过两种药物所有子结构之间的相互作用预测 DDI。在每个 GNN 块中,通过聚合相邻节点的信息来更新节点,然后进行子结构提取过程。一系列的 GNN 块具有不同尺度的感受野,导致不同的提取子结构。


对于相邻的节点,在 “intra-view” 中,它被定义为与药物分子的中心节点有化学键的节点。作为对比,在 “inter-view” 中,本文通过将一种药物中的一个节点与另一种药物中的所有节点连接起来来定义边界,从而形成二分图。然后通过聚合另一种药物的所有节点信息来更新一种药物的节点。



DSN-DDI 由子结构学习模块和 DSN 解码器组成。以两个用于 “intra-view” 学习的单药物图和一个用于 “inter-view” 学习的二分图作为输入,子结构学习模块具有局部 (原子级) 和全局 (药物级) 表示学习过程。


DSN 编码器用于学习局部表示,由两种药物具有共享权重的表示提取层、每种药物各自的 “intra-view” 层和两种药物之间的 “inter-view” 层组成,并同时对药物内部 (intra-view) 和药物对 (inter-view) 原子之间的相互作用进行编码,然后聚合 “intra-view” 和 “inter-view” 的信息以更新下一个 DSN 编码器的节点表示。在 DSN 编码块之后,本文设计了一个自我注意图 (SAG) 池化层来学习药物对的全局表示。由于一系列编码器捕获相邻信息的顺序不同,因此从不同的角度提取子结构。


基线


本文使用以下最先进的基线评估了本文的算法 DSN-DDI,包括基于子结构的算法和双视图学习的算法。


  • MR-GNN:利用图卷积网络 (GCN) 嵌入节点级特征,然后捕获每种药物的不同子结构的表示。这些表示都输入到一个循环神经网络 (RNN) 用于 DDI 预测。
  • MHCADDI:在个体药物的表征学习过程中,利用一种共同注意机制,基于药物对的结构信息整合内部和外部消息。
  • SSI-DDI:将每个节点的隐藏表示作为子结构,然后计算这些子结构之间的相互作用来预测 DDI。
  • GAT-DDI:利用图注意网络 (GAT) 进行药物表示学习和 DDI 预测。
  • GMPNN-CS:学习不同的化学子结构,然后为最终的 DDI 预测建模这些子结构之间的相互作用。
  • SA-DDI:采用子结构感知的图神经网络,设计了一种新颖的子结构注意机制来学习用于 DDI 预测的药物。所有这些算法都在转导和归纳设置下进行了评估。


参数设定


DSN- ddi 包含 4 个 DSN 编码器块。每个区组都有一个表示层,该层对两种药物都有共享的权重,一个 “intra-view” 层对各自的药物,一个 “inter-view” 层对药物对。各层均采用 GAT 机制,配备 2 个 attention heads 进行消息传递。每个 DSN 编码器输出 128 维隐藏表示,包括 64 维 “inter-view” 嵌入和 64 维 “intra-view” 嵌入。药物图中的每个节点都有一个原始的 55 维化学特征作为输入。


本文使用网格搜索在验证集中进行超参数选择。下表总结了网格搜索空间。


模型使用 Xavier 初始化,并使用 1024 个 DDI 进行小批量训练。本文使用 Adam SGD 优化器,并在 DrugBank 上使用 200 个 epoch 和在 Twosides 上使用 120 个 epoch 训练模型。转导设置的学习率为 0.01,归纳设置的学习率为 0.001。


2. 实验


2.1 现有药物换能器设置的性能评估


本文在两个标准基准上进行了实验:DrugBank 和 Twosides,以评估本文的算法 DSN-DDI 的性能。数据集的统计信息如下:


实验结果报告了以下六个指标的平均值和标准差在三倍:准确度 (ACC),接受者操作特征下的面积 (AUC),和平均精度 (AP),F1 评分。


在 DrugBank 和 Twosides 上,与最先进的算法相比,DSN-DDI 实现了所有 4 个指标的最佳性能。


本文的算法在所有评估指标上比目前最先进的算法取得了进一步的改进。DSN-DDI 在 Twosides 上的 ACC 和 F1 评分较次优的 SA-DDI 分别提高了 13.01% 和 11.86%。此外,在 DrugBank 和 Twosides 上的 AUC 分别达到 99.47% 和 99.90%,表明 DSN-DDI 在转导设置上进行了完美的 DDI 预测,几乎解决了现有药物的 DDI 预测任务。此外,下表分别比较了 DrugBank 训练集和测试集的预测精度值,表现一致表明本文训练模型时没有过拟合。



2.2 隐形药品诱导设置的性能评价


本文随机选取 20% 的药物作为未知药物,其余药物作为现有药物。训练集上的所有阳性和阴性样本均为 DDI 三联体,其中两种药物均为现有药物,使用两种划分方案对测试集进行划分:


  • S1 分区方案:测试集上的阳性样本和阴性样本均有两种未知药物。该任务是预测训练集中一对没有已知副作用的新药与其他药物组合的 DDI。
  • S2 划分方案:测试集上的阳性样本和阴性样本各有一种未知药物和一种已知药物。这项任务是预测一种新药的 DDI,该新药与另一种现有药物的任何组合都没有作用。


与最先进的算法相比,DSN-DDI 在所有评估指标上都取得了最好的性能,与转导设置的性能相似。值得注意的是,本文的算法在很大程度上优于次优算法,例如,在 S1 和 S2 分区上,AUC 分别相对提高了 9.11% 和 7.27%。这些结果表明,DSN-DDI 不仅考虑单个药物的结构,而且从药物对中学习相互作用,这极大地弥补了未知药物先验知识和交互信息的不足。

相关文章
|
11月前
|
人工智能 运维 监控
|
2月前
|
机器学习/深度学习 测试技术 Docker
使用Ray进行大规模并行智能体仿真
https://www.anyscale.com/blog/massively-parallel-agentic-simulations-with-ray 译文
|
API 开发者 内存技术
鸿蒙next版开发:相机开发-会话管理(ArkTS)
在HarmonyOS 5.0中,ArkTS提供了完整的API来管理相机会话,包括创建相机输入流、预览输出流、拍照输出流,配置和管理会话。本文详细介绍了相机会话管理的基础步骤和代码示例,涵盖会话创建、闪光灯和焦距配置及错误处理等内容,帮助开发者更好地利用ArkTS开发相机应用。
364 4
|
文字识别 数据可视化 前端开发
《智能文档处理“百宝箱”:数字化时代文档处理的必备利器》
在数字化时代,文档处理面临工具选择难、调试耗时、内容复杂和校对困难等问题。合合信息推出智能文档处理“百宝箱”,包含文档解析测评工具、可视化文档解析前端和向量化模型,助力开发者高效解决这些问题。这些工具广泛应用于企业办公、金融、教育和医疗等行业,提升文档处理的效率和准确性。
316 1
|
机器学习/深度学习 人工智能 自然语言处理
python如何实现AI问答与举例
python如何实现AI问答与举例
350 0
|
网络协议 Linux KVM
在Linux中,如何配置网络桥接?
在Linux中,如何配置网络桥接?
|
自然语言处理 机器人
一款基于大模型的金融分析工具Finpilot
【2月更文挑战第11天】一款基于大模型的金融分析工具Finpilot
452 1
一款基于大模型的金融分析工具Finpilot
|
缓存 前端开发 NoSQL
基于若依和flowable7.0.1的ruoyi-nbcio-plus流程管理系统正式发布
基于若依和flowable7.0.1的ruoyi-nbcio-plus流程管理系统正式发布
777 0
|
人工智能 算法 C++
C++在游戏开发中的应用与挑战
C++在游戏开发中扮演关键角色,常用于引擎开发、游戏逻辑与算法实现,以及跨平台和网络游戏开发。尽管面临学习曲线陡峭、内存管理复杂、跨平台兼容性及与其他技术集成的挑战,但通过学习和掌握现代C++特性,开发者能创造高效优质的游戏。
|
Kubernetes 网络协议 Linux
docker镜像仓库hub.docker.com无法访问-解决办法
docker镜像仓库hub.docker.com无法访问-解决办法1 个人镜像站点2 dockerhub为什么无法访问2.1 查看dockerhub实际IP2.2 ping检测3 镜像加速3.1 使用国内镜像加速3.1.1 docker配置:3.1.2 containerd配置:3.2 使用博主个人镜像仓库3.2.1 目前有如下镜像仓库,后续会陆续增加3.2.2 使用方式3.2.3 拉取镜像
9752 3
docker镜像仓库hub.docker.com无法访问-解决办法