Drug Similarity Integration Through Attentive Multi-view Graph Auto-Encoders

Drug Similarity Integration Through Attentive Multi-view Graph Auto-Encoders

Tengfei Ma, Cao Xiao, Jiayu Zhou, Fei Wang

Intro

研究drug similarity。

最近一个研究方向是从不同的drug feature来提升drug similarity。

当从不同的数据源进行learning similarity的时候,有如下几个问题

  1. 不同的feature类型,和不同的targeting outcome有不同的成都的关系
  2. biomedical event的潜在关系,在所有数据类型上,通常是非线性的、复杂的
  3. data quality,比如缺少数据或者噪音
  4. 能够抓取complex drug relation的模型本身就比较复杂且难以解释

为了解决上述问题,我们将每一类drug feature当作一个view,并且使用graph autoencoder来整合到一个drug similarity上。我们把每一个drug当作一个node,然后将GCN延伸到来embed multi-view node features and edges。不同的view之间,我们使用attentive view selection机制来实现nonlinear multi-view fusion;且使得整个的learning过程更加可以解释。通过这样的embedding方法,我们学习了drug similarity,且用这个similarity来预测一些outcome,比如drug-drug interaction。

另外有这么一个设定:我们将多个drug similarity graph整合起来,但是并不知道drug的feature。这个时候我们提出了使用transductive learning based on treating labels as latent variables。它有如下几个优势:

  • interpretable and adaptive multiview fusion: 我们使用attentive model来融合multiple views。attentive view selection scheme可以产生task-wise feature relevance,而这个feature是让我们学习到可解释的similarity measure。
  • transductive prediction using unlabelled data: 构造auto-encoder的时候,reconstructive loss可以被当作一个regularization term,可以直接使用graph structure信息,因此可以使用unlabelled data。
  • robust-to-noise: 继承了auto-encoder的优势:可以挖掘出的representation,relatively stable and robust to the noise。比如说,interaction network中,没有被标记的link不代表interaction不存在,而现在的方法可以有效地减少由"positive unlabelled"带来的负面影响。

在multiview similarity integration问题上,目前主要有这么几个方法。

  • nearest neighbor
  • random walk
  • unsupervised method
  • multiple kernel learning

Background

经典的GCN模型如下

$$ H^{(l+1)} = f \big( \tilde D^{-1/2} \tilde A \tilde D^{-1/2} H^{(l)} W^{(l)} \big)

$$

后来基于这个,又提出了graph auto-encoder (GAE)。

Method

将每一个drug feature当作view。对于每一个view $$u \in { 1, ..., T}$$,我们构造一个graph,每一个drug当作一个node,而两个node之间的similarity被当作是edge。给定T个views,multi-view similarity integration的最终目标是得到一个integrated node embedding $$Z$$ 和 similarity matrix across all views。

Similarity Integration with Attentive Multi-view Graph Autoencoders

Basic BCN Structure with Multiple Views: 对于每一个view,我们有$$\tilde A = A + IN$$, diagonal matrix $$D{ii} = \sumj \tilde A{ij}$$,然后用两层的GCN得到node embedding $$Z$$

$$Z = softmax \big( \hat A ReLU(\hat A X W_0) W_1 \big)$$

其中$$\hat A = D^{-1/2} \tilde A D^{-1/2}$$。

对每一个view u进行上述操作,得到一个embedding $$Z^{(u)}$$,然后将所有的embedding进行concatenation 从而得到一个新的embedding $$Z$$。两个node之间的prediction就可以是 $$y(x_i, x_j) = \sigma(z_i^T W z_j)$$。

Similarity Matrix Fusion: 与上面将embedding进行concatenate不同,我们也可以首先得到一个integrated similarity matrix,然后所有的view只构造一个graph。在这个single graph中,所有的view的node features就全部都一样。

首先每一个view对应的graph进行normalize,得到$$\hat A^u$$。然后将所有view的graph进行aggregate,得到 $$\hat A = \frac{1}{T} \sum \alpha_u \hat A^u$$。然后使用1-layer GCN来encode nodes:

$$ Z = f(X, \hat A) = softmax (\hat A X W_0)

$$

再将embedding decode回原来的feature space

$$ X' = f'(Z,A) = Sigmoid(\hat A Z W_1)

$$

如果对于node我们没有label,那么objective function就是 $$L_{ed} = \sum || X - X'||^2$$

这种情况下,我们的模型可以被当作unsupervised multi-graph funsion。最终得到的similarity matrix $$\hat A$$ 也可以用于其他的任务,比如clustering。

Attentive View Selection: 实际运用中,fusion不一定是linear(如上面的matrix fusion),而有可能是nonlinear。为了解决这个问题,我们使用attention model。

假设每一个view的adjacency matrix是 $$A^u$$,然后设置一个attention matrix $$g^u \in \mathbb{R}^{n \times n}$$,而最终的integrated adjacency matrix就是 $$\sum_u g^u \odot A^u$$。而每一个view的$$g^u$$是这么得到的:首先将初始的adjacency matrix 映射到 unnormalized matrix $$g'^{u} = W^u A^u + b^u$$。然后将它们在所有的views上进心normalize来得到attention weights $$g^u$$,即对于每一个位置 $$i$$,有 $$g_i = (g_i^1, ..., g_i^T) = softmax(g_i'^1, ..., g_i'^T)$$,而后$$g^u = (g^u_1, ..., g^u_N)$$。

A Semi-supervised Extension Given Partial Labelled Data

GAE可以进一步的延伸为semi-supervised learning,当我们有一部分的node有label的时候。总的loss就变为:

$$ L = L{train} + \lambda L{ed}

$$

另:在graph based semi-supervised learning framework中,经常用graph Laplacian regularization当作一个regularization term来抓住graph的结构特征。$$L{lap} = \sum{ij} A_{ij} || h(x_i) - h(x_j) ||^2$$。我们这里就是将这个项替换为了GAE的reconstruction loss。

Transductive Learning using Test Labels as Variables

有时候只有graph structure,而没有node features。尽管可以用one hot encoding,但是这种embedding的方法并不高效。

我们考虑的另外一个方案是将training labels当作node feature。因此有 $$Y' = f' (f(Y, \hat A), \hat A)$$。

另外,如果我们将similarity当作graph edges,test node的label也会影响到training nodes。所以我们transductive method,将test label当作额外的latent variables。而predicted labels就变成了 $${Y{train}', Y{test}'} = f' (f({Y{train}, Y{test}}, \hat A), \hat A)$$。也就是说 $$Y{test}'$$是关于$$Y{test}$$的函数,而其他都已知。objective function是

$$ \min L = | Y'{train} - Y{train} |^2 + | Y{test}' - Y{test} |^2 + \mu | Y_{test} |^2

$$

Experiment

detecting adverse drug-drug interaction

Data Sources

Binary Prediction of the Occurrence of DDIs

第一个数据集,我们整合好几个similarity graph,且不考虑node feature,来预测新的pair of drug是否会有interaction。我们有这么几个view 1. DDI,从twosides database中挖取的已知label 2. Label Side Effect,从SIDER数据库中得到的drug side effect 3. Off-Label Side Effect,从OFFSIDES数据库中挖去的数据 4. Chemical Structure,比如fingerprints。用Jaccard score来计算彼此之间的相似度。

Multilabel Prediction of Specific DDI Types

第二个数据集,我们有222个drug,和这么几个view 1. Drug Indication,是clinically-validated international medical terminology 2. Drug chemical protein interactome (CPI),是用RBF kernel计算出来,表示每一个drug需要多少的power来与protein target相互bind 3. Protein and nucleic acid targets (TTD),对于每一个drug,我们将它与多个protein和nucleic acid targets相互联系。 4. Chemical Structure,和上面一样,某种fingerprints。

Appendix

这里attentive可以理解为weighted according to attention。

这里related work让我有点想法,nearest neighborhood可否与margin相结合?比如同时有好几个margin,如何选择一个最优的分类器?有几种思路: 1. 继续训练margin,直到max margin,将其当作最优的分类器 2. 可以考虑用nearest neighbor的方法,比如到support vectors的距离?(但这个可能会在SVM上就有体现,可以想点其他的)

results matching ""

    No results matching ""