MR-GNN: Multi-Resolution and Dual Graph Neural Network for Predicting Structured Entity Interactions
基本信息
博客贡献人
鲁智深
作者
Nuo Xu, Pinghui Wang, Long Chen, Jing Tao, Junzhou Zhao
摘要
预测结构化实体之间的相互作用是许多任务的核心,如药物疗法和新材料设计。近年来,图神经网络变得越来越有吸引力。它们将结构化的实体表示为图,然后使用图的卷积操作从每个单独的图中提取特征。然而,这些方法存在一些局限性: i)网络只从每个节点的固定大小的子图结构(即,一个固定大小的接受域)中提取特征,忽略不同大小的子结构特征;ii)通过独立考虑每个实体提取特征,可能不能有效地反映两个实体之间的交互。为了解决这些问题,论文提出MR-GNN,一个端到端图神经网络具有以下特点: i)使用基于多分辨率的架构从每个节点的不同邻域提取节点特征,ii)使用对偶graph-state长短期记忆网络(LSTMs)总结每个图的局部特性并提取成对图之间的交互特性。在真实数据集上进行的实验表明,MR-GNN改进了最先进的方法的预测性能。
问题定义
符号:用图
G
=
(
V
,
E
)
G =(V,E)
G=(V,E)来表示一个结构化的实体,其中
V
V
V是节点集,
E
E
E是边集。每个特定节点
v
−
i
∈
V
v-i∈V
v−i∈V与一个
c
c
c维特征向量
f
i
∈
R
c
f_i∈R^c
fi∈Rc相关联。特征向量也可以是节点的低维潜在表示/嵌入,也可以是直观地反映节点属性的显式特征。同时,让
N
i
⊆
V
N_i⊆V
Ni⊆V表示
v
i
v_i
vi的邻居,
d
i
≜
∣
N
i
∣
d_i\triangleq|N_i|
di≜∣Ni∣表示
v
i
v_i
vi的度。
实体交互预测:令
L
≜
{
l
i
∣
i
=
1
,
2
…
,
k
}
L\triangleq\{l_i|i=1,2…,k\}
L≜{li∣i=1,2…,k}表示两个实体之间的一组
k
k
k个交互标签。实体交互预测任务表述为一个监督学习问题:给定训练数据集
D
≜
{
(
G
X
,
G
Y
)
s
,
R
^
s
}
s
=
1
q
D\triangleq\{(G_X,G_Y)_s,\hat{R}_s\}_{s=1}^q
D≜{(GX,GY)s,R^s}s=1q,其中
(
G
X
,
G
Y
)
s
(G_X,G_Y)_s
(GX,GY)s是一个输入实体对,
R
^
s
∈
L
\hat{R}_s∈L
R^s∈L是相应的交互标签;令
q
q
q表示
D
D
D的大小,目标是想要准确地预测一个看不见的实体对
(
G
X
,
G
Y
)
n
e
w
(G_X,G_Y)_{new}
(GX,GY)new的交互标签
R
∈
L
R∈L
R∈L。
方法
方法描述
下图描述了MR-GNN的架构,主要由三个部分组成: 1)多个加权图卷积层,从不同大小的接受域中提取结构特征,2)对偶graph-state LSTMs,总结多分辨率结构特征并提取交互特征,3)全连接层,预测实体交互标签。
加权图卷积层
标准图卷积算子
受图像上卷积算子的启发,对于图中的特定节点,一般空间图卷积将节点的特征及其一阶邻居作为节点的新特征。根据上述定义,以节点 v i v_i vi为例,公式为:
f i ( t + 1 ) = σ ( ( f i ( t ) + ∑ v j ∈ N i f j ( t ) ) W d i ( t ) ) , t = 0 , 1 , . . . (1) f_i^{(t+1)}=σ((f_i^{(t)}+\sum_{v_j∈N_{i}}f_j^{(t)})W_{d_i}^{(t)}),t=0,1,...\tag{1} fi(t+1)=σ((fi(t)+vj∈Ni∑fj(t))Wdi(t)),t=0,1,...(1)
其中, f i ( t + 1 ) f_i^{(t+1)} fi(t+1)表示节点 v i v_i vi在第 ( t + 1 ) (t+1) (t+1)个图卷积层的特征向量, W d i ( t ) W_{d_i}^{(t)} Wdi(t)为中心节点 v i v_i vi相关的权重矩阵, σ ( ⋅ ) σ(·) σ(⋅)为tanh激活函数。
受节点的度在许多应用中可以很好地反映网络中节点的重要性的启发。为区分不同度的节点在聚合信息时的重要程度,模型在聚合过程中使用了度相关的权重矩阵:
f
i
′
(
t
+
1
)
=
f
i
(
t
)
Φ
d
i
(
t
)
+
∑
v
j
∈
N
i
f
j
(
t
)
Ψ
d
i
(
t
)
+
b
d
i
(
t
)
(2)
f_i^{'(t+1)}=f_i^{(t)}\Phi_{d_i}^{(t)}+\sum_{v_j∈N_{i}}f_j^{(t)}\Psi_{d_i}^{(t)}+b_{d_i}^{(t)}\tag{2}
fi′(t+1)=fi(t)Φdi(t)+vj∈Ni∑fj(t)Ψdi(t)+bdi(t)(2)
其中
Φ
d
i
(
t
)
,
Ψ
d
i
(
t
)
∈
R
c
t
×
c
t
+
1
\Phi_{d_i}^{(t)},\Psi_{d_i}^{(t)}∈R^{c_t×c_{t+1}}
Φdi(t),Ψdi(t)∈Rct×ct+1表示度为
d
i
d_i
di的节点
v
i
v_i
vi的权重,
c
t
+
1
c_{t+1}
ct+1表示第
(
t
+
1
)
(t+1)
(t+1)个图卷积层中特征向量的维数,
b
(
t
)
∈
R
1
×
c
t
+
1
b^{(t)}∈R^{1×c_{t+1}}
b(t)∈R1×ct+1为偏置。
聚合信息后,还要再经过一个Graph Pooling层,通过对一阶邻居节点的表示和自己的表示逐位取最大值得到最终的表示:
f
i
(
t
+
1
)
=
G
P
(
f
i
′
(
t
+
1
)
+
{
f
j
′
(
t
+
1
)
}
v
j
∈
N
i
)
(3)
f_i^{(t+1)}=GP(f_i^{'(t+1)}+\{f_j^{'(t+1)}\}_{v_j∈N_{i}})\tag{3}
fi(t+1)=GP(fi′(t+1)+{fj′(t+1)}vj∈Ni)(3)
图聚合层
为了学习不同大小的接受域的图级特征,我们通过图聚合层将每个卷积层的图的节点表示聚合到一个图状态。图聚合层计算连通图卷积层中所有节点向量的加权和:
g
(
t
)
=
∑
1
≤
i
≤
m
f
i
(
t
)
Θ
d
i
(
t
)
+
β
d
i
(
t
)
(4)
g^{(t)}=\sum_{1\leq i \leq m}f_i^{(t)}\Theta_{d_i}^{(t)}+\beta_{d_i}^{(t)}\tag{4}
g(t)=1≤i≤m∑fi(t)Θdi(t)+βdi(t)(4)
其中
Θ
d
i
(
t
)
∈
R
c
t
×
c
G
\Theta_{d_i}^{(t)}∈R^{c_t×c_G}
Θdi(t)∈Rct×cG度为
d
i
d_i
di的节点在第
t
t
t个图卷积层上的图聚合权重,
g
(
t
)
g^{(t)}
g(t)是第
t
t
t个图卷积层上的图状态向量,
c
G
c_G
cG表示图状态的维度,
m
m
m是图的节点数,
β
d
i
(
t
)
∈
R
1
×
c
G
\beta_{d_i}^{(t)}∈R^{1×c_G}
βdi(t)∈R1×cG是偏置。第一个图状态
g
(
0
)
g ^{(0)}
g(0)只包含所有单个节点的信息。
对偶graph-state lstms
首先引入Summary-LSTM(S-LSTM)来聚合同一个图上不同层的表示:
s
(
t
+
1
)
=
L
S
T
M
(
s
(
t
)
,
g
(
t
)
)
(5)
s^{(t+1)}=LSTM(s^{(t)},g^{(t)}) \tag{5}
s(t+1)=LSTM(s(t),g(t))(5)
其中,
s
(
t
+
1
)
∈
R
1
×
c
G
s^{(t+1)}∈R^{1×c_G}
s(t+1)∈R1×cG是S-LSTM的第
t
+
1
t+1
t+1个隐藏向量。为了进一步增强图的全局信息,我们将S-LSTM的最终隐藏输出
S
(
f
)
S^{(f)}
S(f)和全局图池化层的输出
p
(
f
)
p^{(f)}
p(f)连接起来,作为输入图的最终图状态:
e
(
f
)
=
[
s
(
f
)
,
p
(
f
)
]
(6)
e^{(f)}=[s^{(f)},p^{(f)}] \tag{6}
e(f)=[s(f),p(f)](6)
其中,
p
(
f
)
=
G
P
(
f
v
1
(
f
)
,
.
.
.
,
f
v
m
(
f
)
)
∈
R
1
×
c
f
p^{(f)}=GP(f_{v_1}^{(f)},...,f_{v_m}^{(f)})∈R^{1×c_f}
p(f)=GP(fv1(f),...,fvm(f))∈R1×cf是最终图卷积层上的全局图池的结果。
更进一步地,使用Interaction-LSTM(I-LSTM)来获得两张图之间相互作用的信息:
h
(
t
+
1
)
=
L
S
T
M
(
h
(
t
)
,
[
g
X
(
t
)
,
g
Y
(
t
)
]
)
(7)
h^{(t+1)}=LSTM(h^{(t)},[g_X^{(t)},g_Y^{(t)}]) \tag{7}
h(t+1)=LSTM(h(t),[gX(t),gY(t)])(7)
其中
h
(
t
+
1
)
∈
R
1
×
2
c
G
h^{(t+1)}∈R^{1×2c_G}
h(t+1)∈R1×2cG为I-LSTM的第
(
t
+
1
)
(t+1)
(t+1)个隐藏向量。我们将
s
(
0
)
s^{(0)}
s(0)和
h
(
0
)
h^{(0)}
h(0)初始化为一个全零向量,并且S-LSTM被共享给两个输入图。
全连接层
将最终的图表示和输入图的交互特征拼接起来,然后经过全连接层和softmax进行分类预测:
I
(
G
X
,
G
Y
)
=
[
e
X
(
f
)
,
e
Y
(
f
)
,
h
(
f
)
]
(8)
I(G_X,G_Y)=[e_X^{(f)}, e_Y^{(f)}, h^{(f)}]\tag{8}
I(GX,GY)=[eX(f),eY(f),h(f)](8)
R
=
σ
s
(
f
2
(
σ
r
(
f
1
(
I
(
G
X
,
G
Y
)
)
)
)
)
(9)
R=σ_s(f_2(σ_r(f_1(I(G_X,G_Y)))))\tag{9}
R=σs(f2(σr(f1(I(GX,GY)))))(9)
其中
f
i
(
x
)
=
W
i
x
+
b
i
,
i
=
1
,
2
f_i(x) = W_ix + b_i, i = 1,2
fi(x)=Wix+bi,i=1,2为线性运算,
W
1
∈
R
(
2
c
f
+
4
c
G
)
×
c
k
W_1∈R^{(2c_f+4c_G)×c_k}
W1∈R(2cf+4cG)×ck和
W
2
∈
R
c
k
×
k
W_2∈R^{c_k×k}
W2∈Rck×k为可训练权值权重矩阵,
c
k
c_k
ck为隐藏向量的维数,
k
k
k为交互标签的数量。激活函数
σ
r
(
⋅
)
σ_r(·)
σr(⋅)是一个ReLU,即
σ
r
(
x
)
=
m
a
x
(
0
,
x
)
σ_r(x) = max(0,x)
σr(x)=max(0,x)。R是softmax函数
σ
s
(
⋅
)
σs(·)
σs(⋅)的输出,
R
R
R的第
j
j
j个元素计算为
r
j
=
e
r
j
∑
i
=
0
k
e
r
i
r_j=\frac{e^{r_j}}{\sum\limits_{i=0}^k{e^{r_i}}}
rj=i=0∑kerierj。
损失函数为交叉熵损失:
L
(
R
,
R
^
)
=
−
∑
i
=
1
k
r
^
i
l
o
g
(
r
i
)
(10)
L(R,\hat{R})=- \sum \limits_{i=1}^k\hat{r}_ilog(r_i) \tag{10}
L(R,R^)=−i=1∑kr^ilog(ri)(10)
其中
R
^
∈
R
1
×
k
\hat{R}∈R^{1×k}
R^∈R1×k为真实向量。
实验
实验设置
考虑两个预测任务: 1)预测两种化学物质之间是否存在相互作用(即二元分类),2)预测两种药物之间的相互作用标签(即多类分类)。
数据集
CCI数据集:用于二进制分类任务。使用从0到999的分数来描述两个化合物之间的相互作用水平。得分越高,交互发生的概率就越大。根据阈值评分900、800和700,得到三个数据集的阳性样本:CCI900、CCI800和CCI700。对于阴性样本,选择得分为0的化学对。对于每一对化学物质,分配一个标签“1”或“0”,以表示它们之间是否发生了相互作用。使用一个公开可用的APIDeepChem3来将化合物转换为图,每个节点都有一个75维的特征向量。
DDI数据集:用于多分类任务。该数据集包含86个相互作用标签,每种药物都用SMILES串表示。在预处理中,删除无法转换为图的数据项。
对比方法
DeepCCI:是CCI数据集上最先进的方法之一。将化学物质的SMILES串表示为一个one-hot矩阵,并使用经典的CNN来预测交互标签。
DeepDDI:是DDI数据集上最先进的方法之一。DeepDDI设计了一种称为结构相似性谱(SSP)的特征,并结合多层感知器(MLP)进行预测。
PIP:预测蛋白质相互作用的方法。从每个节点的固定的三跳邻域中提取特征来学习一个节点的表示。在本实验中,在构建这个模型时,我们使用图聚合层来聚合节点表示得到图表示。
DGCNN:使用标准图卷积算子。将每个图卷积层的节点向量拼接起来,并应用CNN与节点排序方案来生成一个图表示。
SNR:使用与本工作类似的图卷积层。不同之处在于,这项工作引入了一个额外的节点,它将所有节点的特征求和为一个图表示。
实验设置
二分类:将CCI数据集按9:1的比例划分为训练集和测试集,并随机选择1/5的训练集作为验证集。设置了3个图卷积层,分别有384,384,384个输出单元。图聚合层的输出单元与LSTM层相同,都为128。全连接层有64个隐藏单元。设置学习率为0.0001。为评估实验结果,选择四个指标:ROC曲线下面积(AUC)、accuracy、recall和f1。
多分类:分别使用60%、20%、20%的数据集来进行训练、验证和测试。所有的超参数选择都与二分类任务相同。为了评价实验结果,在多分类问题上选择了5个指标: AUPRC、Micro average、Macro average、Macro precision和Macro F1。(由于DDI数据集的不平衡,选择了AUPRC指标)。
实验结果及分析
二分类
表1显示了不同方法的性能。MR-GNN在所有的评估指标方面表现最好。与最先进的DeepCCI方法相比,各个指标上性能都有提升。性能改进证明,结构化实体的MR-GNN的图提取特征效果优于DeepCCI将SMILES串视为特征序列,而不考虑结构化实体的拓扑信息。与PIP相比,MR-GNN的性能表明,基于多分辨率的架构比基于固定大小接受的域框架更有效。此外,与直接对所有节点特征进行求和得到图表示的SNR相比,实验结果表明,S-LSTM更有效、更全面地总结了局部特征。将这种改进归因于扩散过程和graph-state LSTM在特征提取过程中建模的相互作用,这对预测是有效的。
多分类
表2显示了不同方法在DDI数据集上的性能。MR-GNN在所有五个评估指标上表现最好。MR-GNN将这五个指标分别提高了1.58%、5.23%、5.46%、5.60%和1.58%。与最先进的DeepDDI方法相比,MR-GNN的性能提高归因于通过端到端训练学习到的更高质量的表示,而不是被称为SSP的人工设计的表示。此外,还在CCI和DDI数据集上进行了实验,观察到MR-GNN确实提高了性能。
效率和鲁棒性
在CCI900数据集上,对从30%到70%的不同大小的训练数据集进行了比较实验。在每个比较实验中,测试集为相同的10%的数据集来评估所有六种方法的性能。图4(a)显示,MR-GNN在不同的训练数据集大小下总是表现最好。特别是,随着训练数据集比例的增加,MR-GNN的改进显著增加,这表明MR-GNN具有更好的鲁棒性。这是因为MR-GNN擅长学习不同大小的接受域的子图信息,特别是经常出现在不同图中的小接受域的子图。
训练效率。图4(b)显示,在所有方法中,MR-GNN的训练时间均处于中等水平。虽然graph-state lstm需要额外的时间,但MR-GNN的训练仍然是快速和可接受的。
超参数变化的影响。考虑MR-GNN超参数的影响:gcl的输出单元数(conv_size)和LSTMs(representation_size),全连接层的隐藏单元数(hidden_size)和学习率(learning_size)。计算结果如图5所示。可以看到,超参数变化的影响是不显著的(绝对差异小于2%)。图5(a)显示,较大的representation_size提供了更好的性能(在representation_size=128处有一个显著点)。图5(b)显示,conv大小的结果相似,显著点为conv_size= 384。在学习率和隐藏大小方面,最佳点分别为 1 × 1 0 − 4 1×10^{−4} 1×10−4和512。
相关知识链接
下载
源代码资源
基准实验涉及的论文
总结
亮点
- MR-GNN设计了一个基于多分辨率的体系结构,从多尺度的子结构中挖掘特征来预测图的交互。比只考虑固定大小的接受域更有效。
- 开发了两个对偶graph-state LSTMs:一个在建模节点信息的扩散过程时总结了多尺度接受域的子图特征,另一个在特征提取过程中提取了成对图的交互特征。
- 在两个基准数据集上的实验结果表明,MR-GNN优于最先进的方法。
[启发]
- 对于实体之间相互作用预测任务,可以考虑提取成对实体之间的交互特征,而非仅单独地提取每个实体的特征;
- 对于图卷积操作提取图的特征任务,单纯只从每个节点的固定大小的子图结中提取特征,忽略不同大小的子结构特征可能会影响方法性能。
BibTex
@article{xu2019mr,
title={Mr-gnn: Multi-resolution and dual graph neural network for predicting structured entity interactions},
author={Xu, Nuo and Wang, Pinghui and Chen, Long and Tao, Jing and Zhao, Junzhou},
journal={arXiv preprint arXiv:1905.09558},
year={2019}
}