多模态 DNN 模型在药物相互作用预测任务中的应用

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

多模态 DNN 模型在药物相互作用预测任务中的应用

一、背景介绍

首先和大家分享下药物发现的相关背景。

1、背景介绍

多模态 DNN 模型在药物相互作用预测任务中的应用

药物发现领域近几年非常火热,特别是借助 AI 来辅助药厂的药物发现工作,包括药物研发。药物研发过程的周期非常长,通常某类临床疾病的首创药的研发过程需要消耗几十亿的经费以及十多年的时间。主要分为以下几个阶段:

(1)研究疾病靶点,疾病核心蛋白的确认。

(2)在临床试验前验证药物的有效性:包括药物毒性、有效性、服用方式等方面的研究。

(3)临床试验。

(4)FDA 审批认证。

所以传统药物研发流程周期非常长。此外,从初识的 10000 多种药物,到 5 种药物进入临床试验阶段,最后到只用 1 种药物批准上市。在这个背景下,如何辅助药厂更快的从候选药物中筛选出有效药物,且能在临床测试阶段更快的预研药物可能带来的影响、作用、有效性等成为了比较热门的研究领域,其中 AI 特别是深度神经网络技术能大大加速药物研发流程。

多模态 DNN 模型在药物相互作用预测任务中的应用

今天分享的内容不涉及药物筛选,主要集中在候选药物的副作用和疗效,主要研究目的是降低药物毒性,提高药物有效性。

如上图所示,DDI(Drug-Drug Interaction)是指药物与药物间的相互作用。将研究药物与已有药物进行交叉分析,发现研究药物的副作用,如对身体的影响等,通过试验提前进行发现归类。简单举例,“是药三分毒”,药物的毒性主要体现在哪里?很多情况下是因为药物与其他药物联用产生的,两种或多种药物间产生了化学作用。右下角图中展示了 3 种药物,其中伊曲康唑(Itraconazole)是治疗肿瘤相关药物,如果将它和阿贝西利(abemaciclib)混合服用将会引起很严重的副作用,如肝衰竭,肝肾功能不全的患者使用这两种药物将会引起严重后果。如果将阿贝西利和达拉非尼(Dabrafenib)混用,将会导致血清浓度下降从而引发其他疾病。故在研发新药的过程中需要进行大量的试验,但不可能用真人进行试验,只能用小白鼠或其他动物进行试验。

今天分享的内容即是,通过多模态神经网络基于已有的(包括正在研发和已知的)药物成分、过敏情况等,对药物 DDI 进行提前预测。

2、问题提出

多模态 DNN 模型在药物相互作用预测任务中的应用

如上图所示,可以将药物相互作用归纳为 DDI 矩阵,矩阵中描述了药物相互作用的结果,如药物 d1(阿贝西利)和 d2(达拉非尼)会导致 y1(血清浓度下降)。本研究中纳入了 37264 条 DDI 数据,其中涉及了 572 种药物(d)及 65 种反应结果(y,如血清浓度下降等)。并基于此数据构建了药物知识图谱(DKG,Drug Knowledge Graph):其中节点是药物,边是药物间的关系。DKG 三元组是 {D:药物, R:药物间关系, T:尾实体}。

除了以上数据,多模态模型还融合了药物的异构特征(HF,Heterogeneous Features):{Target:作用靶点,substructure:组成成分/化学结构, enzyme:酶},每个特征的维度不同,如靶点信息是一种蛋白。最后将 DDI 矩阵,DKG 和 HF 融合在同一个概率分布上进行建模。

二、MDNN 模型介绍

接下来将介绍异构多模态 MDNN 模型的框架。

1、MDNN 整体框架

多模态 DNN 模型在药物相互作用预测任务中的应用

本模型简称 MDNN,基础数据主要分为 DDI 矩阵和异构数据两个部分,模型框架主要由以下三个部分组成:

(1)基于 DKG 部分:主要是通过构建药物知识图谱来表达药物本身的成分(有效成分、毒性成分)、药物间关系等的信息。

(2)基于 HF 部分:通过整合靶点、酶、分子结构等异构特征数据来描述药物自身的基础特征信息。

(3)多模态融合神经网络:将 DKG 和 HF 两部分特征数据进行有效融合,对融合数据进行统一建模。

2、DKG 模块构建

下面将介绍基于 DKG 的构建过程。

多模态 DNN 模型在药物相互作用预测任务中的应用

上图展示了药物知识图谱的主要内容,左图是 DDI 矩阵,矩阵中包含了接近 600 种药物,这些药物的成分和作用信息都存储在数据库(DrugBank,即“药物银行”)中。右图举例展示了“药物银行”中的药物信息,如酶、载体、靶点等异构基础特征,其中有 4 种特征是比较重要的,以药物 DB05812 为例,除靶点(target)、酶(enzyme)、分子结构以外,还有载体(carrier)和转运体(transporter),但这两种数据相对比较稀疏,没有其他特征那么多的维度,在目前数据集上的区分度不大,故暂时未采用这两种数据。主要使用数据为靶点、酶、分子结构。

多模态 DNN 模型在药物相互作用预测任务中的应用

如上图所示,知识图谱主要由节点和边组成,其中节点为药物和成分,边为关系。示例中三元组展示的关系为毒性成分关系,即节点药物 “DB05812” 与节点成分 “P02768” 间存在毒性成分关系。基于“药物银行”中获取的药物成分关系三元组构成了 DKG 知识图谱,其中包含 572 种药物,三元组的边(关系)称为语义关系(semantic relation),共有 157 种关系类型,成分尾实体节点有 1043 种。每次 DKG 可根据任务需求从“药物银行”中抽取相应的信息进行构建,故 DKG 相当于是“药物银行”知识图谱中的子图。

多模态 DNN 模型在药物相互作用预测任务中的应用

基于 DKG,总结了两种信息,上图展示了语义关系信息模型的构建。基于毒性成分,首先计算上一层药物(d)和关系(r)的内积,通过当前层权重(W1)进行求和得到 π 函数,即药物的边和节点信息通过 π 函数求和到一起,再将 π 函数和上一层成分(t)进行加权求和得到 e,即获得了边的信息。

多模态 DNN 模型在药物相互作用预测任务中的应用

类似的,上图展示了图的拓扑结构信息模型的构建。药物除了毒性成分外,还可能包含其他多种成分关系,可以将同一药物的多种关系(边,即 e)及其对应的权重 W2 连接起来,最终得到每个药物对应的 E。通过上述方式将 DKG 边和拓扑结构信息进行了有效的融合表示。

3、HF 模块构建

如下图,除上述提到的边信息和 DDI 信息外,药物还存在着非常丰富的多模态信息:同一种药物可以对多个靶点起作用;各种药物也有各自不同的分子结构,代表了其对应的分子特性;药物在不同酶的作用下会和不同的靶点结合。将这三种信息进行向量化表示,然后通过简单的 Jaccard 相似度来度量药物间的相似度,得到对应的相似度矩阵。

多模态 DNN 模型在药物相互作用预测任务中的应用

多模态 DNN 模型在药物相互作用预测任务中的应用

最后融合三种相似度矩阵得到每种药物对应的 E’,即获得了药物基于异构特征的信息。本特征向量的维度也不大,包括了 1162 种靶点,583 种结构和 202 种酶的信息。

4、多模型融合层

多模态 DNN 模型在药物相互作用预测任务中的应用

如上图所示,最终通过融合层对每个药物的 DKG 结果 E 和 HF 结果 E’ 进行拼接融合得到:

多模态 DNN 模型在药物相互作用预测任务中的应用

再通过 softmax 函数得到输出层:

多模态 DNN 模型在药物相互作用预测任务中的应用

多模态 DNN 模型在药物相互作用预测任务中的应用

整个模型框架如上图,框架结构并不复杂,但对药物信息进行了相对有效的结合。

三、MDNN 模型效果

接下来和大家分享一下模型效果。

多模态 DNN 模型在药物相互作用预测任务中的应用

上图展示了与当前应用较为普遍的算法的对比结果,MDNN 算法在 Acc、AUC、F1、AUPR、Precision、Recall 等评价指标上均取得了 State of the Art 的结果。(以上算法没有纳入 GNN 算法。)

多模态 DNN 模型在药物相互作用预测任务中的应用

上图展示了 MDNN 融合 DKG、HK 和不融合的效果间差异。很容易看出,融合后的结果比单独使用某一种方法的效果要更好。

多模态 DNN 模型在药物相互作用预测任务中的应用

关于多模态调参,即参数敏感度的分析如上图,分别展示了神经网络层数 l,节点数 Ns等参数变化时,各个评价指标对应的波动情况。

多模态 DNN 模型在药物相互作用预测任务中的应用

此外还进行了多任务分析,任务 A 预测模型通过训练集构建,来预测训练集药物和测试集药物间的 DDI;任务 B 的预测模型也通过训练集构建,但预测测试集药物间的 DDI。即将训练集和测试集药物严格分开的的话,模型预测效果有显著下降。

在药物研发领域还存在许多亟待解决的问题:如何有效的发现/筛选药物,而不是局限于研究 DDI。

四、总结

最后总结一下本次分享的内容,MDNN 算法本身不算复杂,最重要的工作是利用了多模态数据和结构信息:

多模态 DNN 模型在药物相互作用预测任务中的应用

(1)基于药物效果构建了药物知识图谱,基于药物本身特性(靶点、分子结构、酶)构建了多模态数据特征,最终融合这两部分特征构建了 MDNN 模型。

(2)对 DDI 的预测问题进行了改进;

(3)与已有方法对比,MDNN 在数据集上的效果最好。

但在实际应用上,MDNN 模型还存在很多需要进一步优化和改进的地方,如更好的方法论或更好的数据。

五、问答环节

Q1:“药物银行”数据集是公开数据集吗?

A1:本研究知识图谱数据集是公开的,原始数据集“药物银行”也是公开数据集。但根据每个研究领域的药物的不同,所构建的知识图谱数据集也会有差异,没有一个统一通用的知识图谱。

Q2:所分享的研究方法如知识图谱、多模态融合等,在制药领域以外还有什么应用?如蛋白质、免疫等?

A2:除生物制药外,在电商领域的应用非常多。如 User-Item 类的数据集,User 有很多多模态信息,如职业、年龄、购物标签等,Item 商品也有很多信息,它们间的关系也有非常多,如购物、评价、收藏夹、点击等行为。领域数据如果符合异构形态,都可以尝试使用这些方法进行分析,难点在于构建特定领域的知识图谱。

以上就是多模态 DNN 模型在药物相互作用预测任务中的应用的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/537351.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月9日 13:21:33
下一篇 2025年11月9日 13:27:13

相关推荐

  • Uniapp 中如何不拉伸不裁剪地展示图片?

    灵活展示图片:如何不拉伸不裁剪 在界面设计中,常常需要以原尺寸展示用户上传的图片。本文将介绍一种在 uniapp 框架中实现该功能的简单方法。 对于不同尺寸的图片,可以采用以下处理方式: 极端宽高比:撑满屏幕宽度或高度,再等比缩放居中。非极端宽高比:居中显示,若能撑满则撑满。 然而,如果需要不拉伸不…

    2025年12月24日
    400
  • 如何让小说网站控制台显示乱码,同时网页内容正常显示?

    如何在不影响用户界面的情况下实现控制台乱码? 当在小说网站上下载小说时,大家可能会遇到一个问题:网站上的文本在网页内正常显示,但是在控制台中却是乱码。如何实现此类操作,从而在不影响用户界面(UI)的情况下保持控制台乱码呢? 答案在于使用自定义字体。网站可以通过在服务器端配置自定义字体,并通过在客户端…

    2025年12月24日
    800
  • 如何在地图上轻松创建气泡信息框?

    地图上气泡信息框的巧妙生成 地图上气泡信息框是一种常用的交互功能,它简便易用,能够为用户提供额外信息。本文将探讨如何借助地图库的功能轻松创建这一功能。 利用地图库的原生功能 大多数地图库,如高德地图,都提供了现成的信息窗体和右键菜单功能。这些功能可以通过以下途径实现: 高德地图 JS API 参考文…

    2025年12月24日
    400
  • 如何使用 scroll-behavior 属性实现元素scrollLeft变化时的平滑动画?

    如何实现元素scrollleft变化时的平滑动画效果? 在许多网页应用中,滚动容器的水平滚动条(scrollleft)需要频繁使用。为了让滚动动作更加自然,你希望给scrollleft的变化添加动画效果。 解决方案:scroll-behavior 属性 要实现scrollleft变化时的平滑动画效果…

    2025年12月24日
    000
  • 如何为滚动元素添加平滑过渡,使滚动条滑动时更自然流畅?

    给滚动元素平滑过渡 如何在滚动条属性(scrollleft)发生改变时为元素添加平滑的过渡效果? 解决方案:scroll-behavior 属性 为滚动容器设置 scroll-behavior 属性可以实现平滑滚动。 html 代码: click the button to slide right!…

    2025年12月24日
    500
  • 如何选择元素个数不固定的指定类名子元素?

    灵活选择元素个数不固定的指定类名子元素 在网页布局中,有时需要选择特定类名的子元素,但这些元素的数量并不固定。例如,下面这段 html 代码中,activebar 和 item 元素的数量均不固定: *n *n 如果需要选择第一个 item元素,可以使用 css 选择器 :nth-child()。该…

    2025年12月24日
    200
  • 使用 SVG 如何实现自定义宽度、间距和半径的虚线边框?

    使用 svg 实现自定义虚线边框 如何实现一个具有自定义宽度、间距和半径的虚线边框是一个常见的前端开发问题。传统的解决方案通常涉及使用 border-image 引入切片图片,但是这种方法存在引入外部资源、性能低下的缺点。 为了避免上述问题,可以使用 svg(可缩放矢量图形)来创建纯代码实现。一种方…

    2025年12月24日
    100
  • 如何让“元素跟随文本高度,而不是撑高父容器?

    如何让 元素跟随文本高度,而不是撑高父容器 在页面布局中,经常遇到父容器高度被子元素撑开的问题。在图例所示的案例中,父容器被较高的图片撑开,而文本的高度没有被考虑。本问答将提供纯css解决方案,让图片跟随文本高度,确保父容器的高度不会被图片影响。 解决方法 为了解决这个问题,需要将图片从文档流中脱离…

    2025年12月24日
    000
  • 为什么 CSS mask 属性未请求指定图片?

    解决 css mask 属性未请求图片的问题 在使用 css mask 属性时,指定了图片地址,但网络面板显示未请求获取该图片,这可能是由于浏览器兼容性问题造成的。 问题 如下代码所示: 立即学习“前端免费学习笔记(深入)”; icon [data-icon=”cloud”] { –icon-cl…

    2025年12月24日
    200
  • 如何利用 CSS 选中激活标签并影响相邻元素的样式?

    如何利用 css 选中激活标签并影响相邻元素? 为了实现激活标签影响相邻元素的样式需求,可以通过 :has 选择器来实现。以下是如何具体操作: 对于激活标签相邻后的元素,可以在 css 中使用以下代码进行设置: li:has(+li.active) { border-radius: 0 0 10px…

    2025年12月24日
    100
  • 如何模拟Windows 10 设置界面中的鼠标悬浮放大效果?

    win10设置界面的鼠标移动显示周边的样式(探照灯效果)的实现方式 在windows设置界面的鼠标悬浮效果中,光标周围会显示一个放大区域。在前端开发中,可以通过多种方式实现类似的效果。 使用css 使用css的transform和box-shadow属性。通过将transform: scale(1.…

    2025年12月24日
    200
  • 为什么我的 Safari 自定义样式表在百度页面上失效了?

    为什么在 Safari 中自定义样式表未能正常工作? 在 Safari 的偏好设置中设置自定义样式表后,您对其进行测试却发现效果不同。在您自己的网页中,样式有效,而在百度页面中却失效。 造成这种情况的原因是,第一个访问的项目使用了文件协议,可以访问本地目录中的图片文件。而第二个访问的百度使用了 ht…

    2025年12月24日
    000
  • 如何用前端实现 Windows 10 设置界面的鼠标移动探照灯效果?

    如何在前端实现 Windows 10 设置界面中的鼠标移动探照灯效果 想要在前端开发中实现 Windows 10 设置界面中类似的鼠标移动探照灯效果,可以通过以下途径: CSS 解决方案 DEMO 1: Windows 10 网格悬停效果:https://codepen.io/tr4553r7/pe…

    2025年12月24日
    000
  • 使用CSS mask属性指定图片URL时,为什么浏览器无法加载图片?

    css mask属性未能加载图片的解决方法 使用css mask属性指定图片url时,如示例中所示: mask: url(“https://api.iconify.design/mdi:apple-icloud.svg”) center / contain no-repeat; 但是,在网络面板中却…

    2025年12月24日
    000
  • 如何用CSS Paint API为网页元素添加时尚的斑马线边框?

    为元素添加时尚的斑马线边框 在网页设计中,有时我们需要添加时尚的边框来提升元素的视觉效果。其中,斑马线边框是一种既醒目又别致的设计元素。 实现斜向斑马线边框 要实现斜向斑马线间隔圆环,我们可以使用css paint api。该api提供了强大的功能,可以让我们在元素上绘制复杂的图形。 立即学习“前端…

    2025年12月24日
    000
  • 图片如何不撑高父容器?

    如何让图片不撑高父容器? 当父容器包含不同高度的子元素时,父容器的高度通常会被最高元素撑开。如果你希望父容器的高度由文本内容撑开,避免图片对其产生影响,可以通过以下 css 解决方法: 绝对定位元素: .child-image { position: absolute; top: 0; left: …

    2025年12月24日
    000
  • CSS 帮助

    我正在尝试将文本附加到棕色框的左侧。我不能。我不知道代码有什么问题。请帮助我。 css .hero { position: relative; bottom: 80px; display: flex; justify-content: left; align-items: start; color:…

    2025年12月24日 好文分享
    200
  • 前端代码辅助工具:如何选择最可靠的AI工具?

    前端代码辅助工具:可靠性探讨 对于前端工程师来说,在HTML、CSS和JavaScript开发中借助AI工具是司空见惯的事情。然而,并非所有工具都能提供同等的可靠性。 个性化需求 关于哪个AI工具最可靠,这个问题没有一刀切的答案。每个人的使用习惯和项目需求各不相同。以下是一些影响选择的重要因素: 立…

    2025年12月24日
    000
  • 如何用 CSS Paint API 实现倾斜的斑马线间隔圆环?

    实现斑马线边框样式:探究 css paint api 本文将探究如何使用 css paint api 实现倾斜的斑马线间隔圆环。 问题: 给定一个有多个圆圈组成的斑马线图案,如何使用 css 实现倾斜的斑马线间隔圆环? 答案: 立即学习“前端免费学习笔记(深入)”; 使用 css paint api…

    2025年12月24日
    000
  • 如何使用CSS Paint API实现倾斜斑马线间隔圆环边框?

    css实现斑马线边框样式 想定制一个带有倾斜斑马线间隔圆环的边框?现在使用css paint api,定制任何样式都轻而易举。 css paint api 这是一个新的css特性,允许开发人员创建自定义形状和图案,其中包括斑马线样式。 立即学习“前端免费学习笔记(深入)”; 实现倾斜斑马线间隔圆环 …

    2025年12月24日
    100

发表回复

登录后才能评论
关注微信