Drug-drug Interaction Prediction with Graph Representation Learning

Drug-drug Interaction Prediction with Graph Representation Learning

基本信息

发布在2019年次顶会BIBM上的一篇关于分子表示学习在DDI方面的应用

博客创建者

徐宁

作者

Xin Chen,Xien Liu,Ji Wu

标签

DDI, Graph Representation Learning, Scalability, Interpretability, Robustness

摘要

    一种药物的药理活性可能会由于同时给药另一种药物而改变,从而导致未预料到的药物-药物相互作用(DDIs)。然而,现有的DDI预测方法在以下几个方面存在不足:(1)可扩展性:它们严重依赖于与药物相关的多种特征,导致在大规模的数据集中,大多数药物的重要特征是不可用的。(2)鲁棒性:他们的目标是在融合多种特征的情况下逼近交互概率。该模型可能对测试集的两两相似信息很敏感。在本文中,我们探索了图表示学习在更精确的DDI预测方面的应用,建立了一个全新的模型来解决这两个问题,实现了更高的性能,并保持了一定的可解释性。我们在小型DDI数据集和大型DDI数据集上的实验表明,与现有的各种先进的方法相比,我们的模型可以获得更高的性能,这表明了我们的模型的可扩展性。此外,我们的模型可以通过注意机制找到最重要的局部原子,这些原子符合领域知识,并具有一定的可解释性。鲁棒性分析表明,该方法对测试数据集的两两相似度信息不敏感,能够在两两相似度极低的情况下检索相互作用的药物对,但具有较高的查全率和较高的查准率。

问题定义

    目前用于DDI预测的机器学习,深度学习模型的扩展性和鲁棒性不足,无法同时应用在大数据集(其中包含一种药物多种药物特征)和小数据集上;同时容易受到数据集中药物的两两相似度信息的影响。

方法

方法描述

    本文设计了一种端对端的DDI预测模型,设计了一种结合简单化学知识,bond-aware message和highway-based update的GCN用以学习分子图表示,再利用两两图表示,建立了一个简单的分类器来估计药物之间相互作用的概率。

在这里插入图片描述

图1. 整体模型框架示意图。
    模型整体流程为,首先采用规范的SMILES表示作为输入,再通过RDKit将一对SMILES表示转化为一对分子图,并从中提取出原子表和多通道邻接矩阵信息作为Siamese GCN的输入。然后在Siamese GCN中学习到成对药物分子的分布表示并同时优化模型参数。最后构造一个基于Hole的神经网络用于通过表示来估计对应药物对的相互作用概率。
Siamese GCN

    图二所示即为Siamese GCN的结构示意图,共分成输入,信息更新,输出三个部分进行描述。

在这里插入图片描述

图2. Siamese GCN结构示意图。
输入

    标准SMILES表示通过RDKit转换成分子图,再通过RDKit从分子图中提取出两种结构信息:原子列表和多通道邻接矩阵作为GCN的输入。

    原子列表:对分子中的每一个原子,考虑其核荷数,根据标准正态分布随机初始化嵌入向量,最后将这些嵌入向量叠加生成的嵌入矩阵即为输入之一。
    多通道邻接矩阵:其通道的维数表示化学键的类型,本文专注于四种化学键:单键、双键、三键、芳香键。通过简单的one-hot编码来确定键的类型。

信息更新

    如图二所示,整个迭代过程是通过叠加多个图卷积层来实现的,用于细化输入层给出的原子表示。并提出两种新机制Bond-aware Message和Highway-based Update来将简单的化学知识编码到更新过程中。
    Bond-aware Message
    聚合消息时,本文对于每个顶点,直接聚合其直接领域顶点传递的消息,并将这些消息等量相加:

h ~ i ( l ) = ∑ j ∈ N ( i ) A e i j ( l ) h j ( l − 1 ) \widetilde{\textbf{h}}^{(l)}_i = \sum\limits_{j \in \mathcal{N}(i)} \textbf{A}^{(l)}_{e_{ij}} \textbf{h}^{(l-1)}_j h i(l)=jN(i)Aeij(l)hj(l1)

    其中 A e i j ( l ) \textbf{A}^{(l)}_{e_{ij}} Aeij(l)表示同类型的化学键 e i j e_{ij} eij在第 l l l层的共享可训练权重, h j ( l − 1 ) \textbf{h}^{(l-1)}_j hj(l1)表示相邻顶点 v j v_j vj前一层的隐藏状态。整个消息传递过程是一个新型变换,其中需要注意的是可训练权重参数 A A A由化学键相同的边共享,这是因为具有相同化学键的相邻原子的影响是相似的,而来自具有不同化学键的相邻原子的影响是不同的。

    Highway-based Update.
    在Bond-aware Message中主要聚合了邻居节点的信息之后,在Highway-based Update中主要考虑的是对应顶点的前一层顶点的影响,通过fuse gate来控制信息的流动,(根据当前状态和之前的状态来选择更倾向于融合状态待定,)以便网络可以从以前的层中学习信息并传递到后续的层中。还可以帮助克服深层神经网络中的梯度消失问题,使网络更加稳定。同时,它还可以减少网络的参数数量,提高网络的训练速度和效率。主要公式如下:

z i ( l ) = t a n h ( W z [ h i ( l − 1 ) ; h ~ i ( l ) ] + b z ) \textbf{z}^{(l)}_i = tanh(\textbf{W}_z[\textbf{h}^{(l-1)}_i;\widetilde{\textbf{h}}^{(l)}_i]+\textbf{b}_z) zi(l)=tanh(Wz[hi(l1);h i(l)]+bz)
r i ( l ) = σ ( W r [ h i ( l − 1 ) ; h ~ i ( l ) ] + b r ) \textbf{r}^{(l)}_i = \sigma(\textbf{W}_r[\textbf{h}^{(l-1)}_i;\widetilde{\textbf{h}}^{(l)}_i]+\textbf{b}_r) ri(l)=σ(Wr[hi(l1);h i(l)]+br)
f i ( l ) = σ ( W f [ h i ( l − 1 ) ; h ~ i ( l ) ] + b f ) \textbf{f}^{(l)}_i = \sigma(\textbf{W}_f[\textbf{h}^{(l-1)}_i;\widetilde{\textbf{h}}^{(l)}_i]+\textbf{b}_f) fi(l)=σ(Wf[hi(l1);h i(l)]+bf)
h i ( l ) = r i ( l ) ⊙ h ( l − 1 ) + f i ( l ) ⊙ z i ( l ) \textbf{h}^{(l)}_i=\textbf{r}^{(l)}_i \odot \textbf{h}^{(l-1)} + \textbf{f}^{(l)}_i \odot \textbf{z}^{(l)}_i hi(l)=ri(l)h(l1)+fi(l)zi(l)

其中“;”表示沿特征维进行连接。

输出

    在经过信息更新和传递之后,即可得到的包含每个顶点的隐藏状态的状态集 S g = { h i ( L ) ∈ R d h ∣ v i ∈ V , i = 1 , 2 , . . . , ∣ V } ∣ S_g=\{\textbf{h}^{(L)}_i\in\mathbb{R}^{d_h}|v_i\in\mathcal{V},i=1,2,...,|\mathcal{V}\}| Sg={hi(L)RdhviV,i=1,2,...,V}。在此基础上需将状态集转换成一个表示整个图或药物分子的嵌入 g ∈ R d g\in\mathbb{R}^d gRd来作为后面预测相互作用发生概率的输入。并且整个图的嵌入表示需要尽可能的包含在Siamese GCN浅层提取的具体特征和深层学习到的抽象特征。因此采用一个注意力池层来聚合图嵌入表示:

a i = σ ( W a [ h i ( 0 ) ; h i ( L ) + b a ] \textbf{a}_i=\sigma(\textbf{W}_a[\textbf{h}^{(0)}_i;\textbf{h}^{(L)}_i +\textbf{b}_a] ai=σ(Wa[hi(0);hi(L)+ba]
g = ∑ v i ∈ V a i ⊙ ( Wh i ( L ) + b ) \textbf{g}=\sum\limits_{v_i\in\mathcal{V}}\textbf{a}_i\odot(\textbf{Wh}^{(L)}_i+b) g=viVai(Whi(L)+b)

    前一个公式通过将浅层特征和深层特征按维度串接之后再做非线性变换作为对应顶点的权重值,除此之外的其他参数 W a ∈ R d × d h , b a ∈ R d W_a\in\mathbb{R}^{d\times d_h},b_a\in\mathbb{R}^d WaRd×dh,baRd在所有顶点共享,权值矩阵和偏置向量 W ∈ R d × d h , b ∈ R d W\in\mathbb{R}^{d\times d_h},b\in\mathbb{R}^d WRd×dhbRd也是全顶点共享。

DDI预测
反应预测

    在从上一步的GCN中得到两个药物分子的嵌入之后,首先将两个分子嵌入通过循环相关操作压缩为一个嵌入向量:

[ g 1 ∘ g 2 ] i = ∑ k = 0 d − 1 [ g 1 ] k ⋅ [ g 2 ] ( k + i )   m o d   . d [\textbf{g}_1\circ\textbf{g}_2]_i=\sum\limits^{d-1}_{k=0}[\textbf{g}_1]_k\cdot[\textbf{g}_2]_{(k+i)\bmod.d} [g1g2]i=k=0d1[g1]k[g2](k+i)mod.d
g = g 1 ∘ g 2 \textbf{g} = \textbf{g}_1\circ\textbf{g}_2 g=g1g2

     ∘ \circ 表示循环相关操作,通过将两个嵌入向量进行移位相乘求和构造成一个新向量,表示两个输入向量在每个可能的移位位置上的相似性,即测试两个输入向量的之间的相似性。
    同时因为循环相关操作不满足对称性,所以需要通过复制每一对药物分子并颠倒两个药物分子的顺序,将训练集的大小增加一倍,并在这个新的加倍的数据集上训练模型的方法来解决模型对输入的两个药物的顺序的敏感性问题。且因为推理过程必须使用原始对和具有相反顺序的对进行两次,所以最后要平均两个估计的相互作用概率以获得最终预测。
    最后预测相互作用的概率需要将循环相关操作压缩得到的嵌入向量 g g g传递到包含sigmoid激活函数的单层神经网络中得到:

p = σ ( W ∘ g + b ∘ ) \textbf{p}=\sigma(\textbf{W}_\circ \textbf{g}+\textbf{b}_\circ) p=σ(Wg+b)

参数训练

    本文模型是一个端对端的可监督的表示学习模型,采用最小化交叉熵损失函数:

l ( Θ ) = − ∑ i = 1 N y i log ⁡ ( p i ) + ( 1 − y i ) log ⁡ ( 1 − p i ) l(\Theta)=-\sum\limits^N_{i=1}\textbf{y}_i\log(\textbf{p}_i)+(1-\textbf{y}_i)\log(1-\textbf{p}_i) l(Θ)=i=1Nyilog(pi)+(1yi)log(1pi)

    在Siamese GNN和最终的单层神经网络中, Θ \Theta Θ是所有权重矩阵和偏置向量的集合,它们涉及训练数据集中出现的所有类型原子的嵌入向量。N是训练数据集中药物对的总数。使用交叉熵损失函数,我们使用反向传播算法来寻找可训练参数 Θ \Theta Θ的最佳解。

实验

实验设置

    在本文的实验中,主要通过实验验证模型的可扩展性和鲁棒性。通过证明模型在两个不同规模的数据集上的性能都优于baseline来验证可扩展性,通过证明在底相似度的药物对数据集上的性能高过baseline来验证鲁棒性。

数据集

    本文实验所采用的数据集分别为小尺度数据集和大尺度数据集。
小尺度数据集:通过将TWOSIDES中的药物映射到SIDER,OFFSIDES,PubChem和DrugBank中。包含较少数量的药物,其中所有药物的指纹都可用,共包含548种药物和48,548对DDI,以及这些药物对的多种相似信息(药物的亚结构数据,目标数据,酶数据,转运蛋白数据,路径数据,适应症数据,副作用数据,副作用数据)。在的预处理中,本文从规范的SMILES字符串中删除了不能转换为图形的数据项。只有4个药物分子被移除。
大尺度数据集:包含86个相互作用标签,每个药物都表示为规范的SMILES字符串。再处理从SMILES字符串中删除了不能转换为图形的数据项。最终的数据集包含1704个分子和191,400个相互作用的对。

评估指标

    小尺度训练集上进行二值分类,采用ROC曲线下面积(AUROC),PRC曲线下面积(AUPRC),F1三个度量来评价实验结果。
    大尺度训练集上进行多标签分类,采用Macro AUC,Macro PRC和Macro F1来评估性能。

Baselines

小尺度数据集:

  • Nearest Neighbor(NN):利用已知药物之间的相互作用和子结构的相似性进行DDI预测
  • Label Propagation:利用标签传播算法建立三种基于相似度的预测模型,根据子结构、副作用和非标签副作用计算相似度。分别将将这三个模型分别称为LP-Sub、LP-SE和LP-OSE
  • Multi-Feature Ensemble(Ens):采用邻居推荐算法、标签传播算法和矩阵干扰算法构建的混合集成模型。整个模型利用了药物的不同方面。
  • SSP-MLP:利用预先计算的低维结构相似度剖面(SSP)和MLP相结合进行分类。
  • Graph Autoencoder(GA):设计了一种专注机制来整合多种药物特征,将这些特征输入到图形自动编码器中,学习每种药物的嵌入向量。
  • NFP:第一个特定于分子的图卷积算子,本文中将siamese network更换成NFP作为Baseline。
  • GIN:图同构网络,用于学习各种单体性质预测任务中分子的表示,本文将siamese network更换成GIN作为Baseline。

大尺度数据集:

  • SSP-MLP:专门为特定DDI类型预测而设计的第一种方法
  • NR-Sub:Ens的一个组件。
实验结果及分析

小尺度训练集:

表1.小尺度数据集上的模型比较

在这里插入图片描述
    从表中可以看出,本文提出的模型性能在三个指标上高于所有Baseline,其中次优的模型Ens采用与本文近似的模型,整合了多种特征和多种模型进行DDI预测,表明多视角药物特征的整合对DDI预测任务的性能的重要性。同时本文方法每一个分子图表示为一个图级表示相比于GA中的节点级表示更加的深入和细化,也表明本文方法的优越性。同样采用图级表示的GIN效果较差,也验证了本文新设计的两个模块的有效性。

大尺度训练集:

表2.大尺度数据集上的模型比较

在这里插入图片描述
    表二主要比较了在大尺度数据集上本文方法与专门为预测特定DDI类型(即多标签分类任务)而设计的Baseline的性能。
也可以看出本文所提出的模型在三个指标上也明显优于其他Baseline。

消融实验分析
表3.小尺度数据集上的消融实验比较

在这里插入图片描述

    本文主要在小尺度数据集上进行消融实验来验证本文模型中两个模块(Bond-aware Message和Highway-based Update)的有效性,测试结果如表3所示。可以看出模型中Bond-aware Message模块贡献最大,其次是Highway-based Update。

鲁棒性分析

    传统机器学习模型例如Ens可能会受到极低成对相似性的干扰。因为机器学习模型的核心思想是通过整合各种与药物相关的特征来近似相互作用概率。因此,成对相似性较高往往具有更大的相互作用概率,反之亦然。然而,尽管这些特征被认为与DDIs相关,但相互作用概率不能通过不同药物特征的整合来精确刻画。肯定也会存在相似度低但仍相互反应的案例。本文中选择成对相似性低于0.2的药物对,生成低相似性数据集。药物之间的成对相似性被计算为相应指纹向量的余弦相似度,该数据集包含521个药物对。在表四中,对比了本文模型与Ens模型在该数据集上的性能,本文模型的在精度和召回率(表明模型是否能够发现更多成对相似性极低的相互作用药物对)上的得分都高于Ens,表明了本文模型在相关的成对相似性信息极低的情况下检索到更多的相互作用药物对。

表4.低相似度数据集上的实验比较

在这里插入图片描述

总结

亮点

  • 该文章所提及的模型在大小尺度的数据集上都较好满足可延展性。
  • 通过在低相似度数据集上的实验验证了模型的鲁棒性。
  • 该模型的两个主要模块中在聚合顶点特征时不仅考虑了邻居节点的影响也考虑到了同一顶点浅层和深层特征的影响,并在设计权重矩阵时按照不同的键类型采用不同的权重矩阵。
不足
  • 作为使用图级表示的模型,在选取Baseline时所选取图级表示模型较少。
相关知识链接
下载

本文论文

基准实验涉及的论文

NN
LP
Ens
SSP-MLP
GA
NFP
GIN

BibTex

@INPROCEEDINGS{8983416,
author={Chen, Xin and Liu, Xien and Wu, Ji},
booktitle={2019 IEEE International Conference on Bioinformatics and Biomedicine (BIBM)},
title={Drug-drug Interaction Prediction with Graph Representation Learning},
year={2019},
volume={},
number={},
pages={354-361},
doi={10.1109/BIBM47256.2019.8983416}}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值