目录
一、背景介绍" >一、背景介绍
1、背景介绍" >1、背景介绍
2、问题提出" >2、问题提出
二、MDNN 模型介绍" >二、MDNN 模型介绍
1、MDNN 整体框架" >1、MDNN 整体框架
2、DKG 模块构建" >2、DKG 模块构建
3、HF 模块构建" >3、HF 模块构建
4、多模型融合层" >4、多模型融合层
三、MDNN 模型效果" >三、MDNN 模型效果
四、总结" >四、总结
五、问答环节" >五、问答环节
Q1:“药物银行”数据集是公开数据集吗?" >Q1:“药物银行”数据集是公开数据集吗?
Q2:所分享的研究方法如知识图谱、多模态融合等,在制药领域以外还有什么应用?如蛋白质、免疫等?" >Q2:所分享的研究方法如知识图谱、多模态融合等,在制药领域以外还有什么应用?如蛋白质、免疫等?
首页 科技周边 人工智能 多模态 DNN 模型在药物相互作用预测任务中的应用

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

May 31, 2023 am 11:01 AM
ai dnn 模型

多模态 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 模型在药物相互作用预测任务中的应用的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

SQL 如何添加新列 SQL 如何添加新列 Apr 09, 2025 pm 02:09 PM

SQL 中通过使用 ALTER TABLE 语句为现有表添加新列。具体步骤包括:确定表名称和列信息、编写 ALTER TABLE 语句、执行语句。例如,为 Customers 表添加 email 列(VARCHAR(50)):ALTER TABLE Customers ADD email VARCHAR(50);

SQL 添加列的语法是什么 SQL 添加列的语法是什么 Apr 09, 2025 pm 02:51 PM

SQL 中添加列的语法为 ALTER TABLE table_name ADD column_name data_type [NOT NULL] [DEFAULT default_value]; 其中,table_name 是表名,column_name 是新列名,data_type 是数据类型,NOT NULL 指定是否允许空值,DEFAULT default_value 指定默认值。

SQL 清空表:性能优化技巧 SQL 清空表:性能优化技巧 Apr 09, 2025 pm 02:54 PM

提高 SQL 清空表性能的技巧:使用 TRUNCATE TABLE 代替 DELETE,释放空间并重置标识列。禁用外键约束,防止级联删除。使用事务封装操作,保证数据一致性。批量删除大数据,通过 LIMIT 限制行数。清空后重建索引,提高查询效率。

SQL 添加列时如何设置默认值 SQL 添加列时如何设置默认值 Apr 09, 2025 pm 02:45 PM

为新添加的列设置默认值,使用 ALTER TABLE 语句:指定添加列并设置默认值:ALTER TABLE table_name ADD column_name data_type DEFAULT default_value;使用 CONSTRAINT 子句指定默认值:ALTER TABLE table_name ADD COLUMN column_name data_type CONSTRAINT default_constraint DEFAULT default_value;

使用 DELETE 语句清空 SQL 表 使用 DELETE 语句清空 SQL 表 Apr 09, 2025 pm 03:00 PM

是的,DELETE 语句可用于清空 SQL 表,步骤如下:使用 DELETE 语句:DELETE FROM table_name;替换 table_name 为要清空的表的名称。

phpmyadmin建立数据表 phpmyadmin建立数据表 Apr 10, 2025 pm 11:00 PM

要使用 phpMyAdmin 创建数据表,以下步骤必不可少:连接到数据库并单击“新建”标签。为表命名并选择存储引擎(推荐 InnoDB)。通过单击“添加列”按钮添加列详细信息,包括列名、数据类型、是否允许空值以及其他属性。选择一个或多个列作为主键。单击“保存”按钮创建表和列。

Redis内存碎片如何处理? Redis内存碎片如何处理? Apr 10, 2025 pm 02:24 PM

Redis内存碎片是指分配的内存中存在无法再分配的小块空闲区域。应对策略包括:重启Redis:彻底清空内存,但会中断服务。优化数据结构:使用更适合Redis的结构,减少内存分配和释放次数。调整配置参数:使用策略淘汰最近最少使用的键值对。使用持久化机制:定期备份数据,重启Redis清理碎片。监控内存使用情况:及时发现问题并采取措施。

怎么创建oracle数据库 oracle怎么创建数据库 怎么创建oracle数据库 oracle怎么创建数据库 Apr 11, 2025 pm 02:33 PM

创建Oracle数据库并非易事,需理解底层机制。1. 需了解数据库和Oracle DBMS的概念;2. 掌握SID、CDB(容器数据库)、PDB(可插拔数据库)等核心概念;3. 使用SQL*Plus创建CDB,再创建PDB,需指定大小、数据文件数、路径等参数;4. 高级应用需调整字符集、内存等参数,并进行性能调优;5. 需注意磁盘空间、权限和参数设置,并持续监控和优化数据库性能。 熟练掌握需不断实践,才能真正理解Oracle数据库的创建和管理。

See all articles