深度协同过滤算法实现药物-靶标关系预测
2020-09-04何亚琼朱晓军
何亚琼,朱晓军
(太原理工大学 信息与计算机学院,山西 太原 030024)
0 引 言
药物的设计和开发是一个风险高、周期长、投资巨大的过程[1]。仅依靠化学实验来发现新的药物效率低且成本高。因此,通过计算机对药物的潜在靶标进行虚拟筛选成为计算机辅助制药的热点[2]。目前药物-靶标关系预测存在的难点是已知的药物-靶标对有限。对于DTI预测第一类方法是二元分类问题,第二类方法是转化为推荐任务。对于第一类方法,文献[3]提出两种集成学习的方法,分别从药物和靶标的方向进行预测,再合并结果。文献[4]提出基于旋转森林(RF)的药物靶标预测模型。文献[5]将深度学习引入药物-靶标研究领域,用堆叠自动编码器提取深度表征,然后用SVM进行二分类。第二类方法,文献[6]提出用于DTI预测的贝叶斯排序矩阵分解,主要思想是同时将药物和目标投射到共享潜在空间。文献[7]采用低秩加权矩阵分解实现了药物-靶标的关系预测。文章提出邻域正则化逻辑矩阵分解(NRLMF)用于DTI预测[8]。
分析先前研究成果,基于矩阵分解的推荐方法可以充分利用已知的DTI关系。但是存在矩阵稀疏的问题,并且随着数据集的扩充,矩阵分解并不是一个高效的方法。因此,本文提出一种深度协同过滤算法实现DTI预测。该算法沿用基于矩阵分解的协同过滤算法,在矩阵分解中添加药物靶标双重正则化约束。并且,设计融入了多输入深度自编码器,能够有效提取DTI矩阵和辅助信息的潜在特征,从而优化传统矩阵分解的效果。
1 深度协同过滤算法
1.1 问题设置
(1)药物-靶标相互作用矩阵R,是一个m×n的二维矩阵,m代表药物数量,n代表靶标数量。矩阵R中,如果已知药物i和靶标j存在相互作用,则Rij=1,未被验证的关系为0。
(2)药物相似性矩阵M,是一个m×m的对角矩阵。mij表示根据化合物i和化合物j的化学结构计算的药物相似性。
(3)靶标蛋白相似性矩阵N,是一个n×n的对角矩阵。靶标相似性nij是基于目标蛋白的氨基酸序列计算的。
(4)Ui和Vj分别代表药物i的潜在影响因子向量和靶标j的潜在影响因子向量,K≪n,m是药物和靶标的潜在低维空间维度。
1.2 约束非负矩阵分解
本文将药物-靶标的关系预测问题转化为药物-靶标关系矩阵的未知项评分填充问题[9]。提出一种添加正则化约束的非负矩阵分解算法作为DTI的预测的主要思路。非负矩阵分解(non-negative matrix factorization,NMF)是一种有效且广泛应用于协同过滤的方法[10],NMF算法对于任何一个非负的矩阵R可以寻找到两个非负矩阵U和V,使其满足U、V的矩阵乘积的每个元素与原始R矩阵每个元素的误差尽可能的小[11]。对于药物-靶标的相互作用矩阵负值是没有意义的,因此添加非负约束条件会使分解结果更加准确。数学表示为
(1)
分析药物和药物之间、靶标和靶标之间的关联关系,本文对非负矩阵分解算法做了优化。考虑到相似结构的药物偏好相同的靶标蛋白。同理,相关的蛋白质(具有相似的氨基酸序列)偏好于相同的药物。本文在非负矩阵分解中加入了双重正则化约束。通过药物和靶标的双重正则化约束矩阵分解中药物潜在影响因子和靶标潜在影响因子的学习,当预测新的药物或者靶标时,得到的潜在特征倾向于其近邻药物或靶标的特征。因此,可缓解新药物、靶标的冷启动问题。M=(mij)是成对的药物相似性得分矩阵。N=(nij)是成对的靶标相似性得分矩阵。故可以通过最小化药物和靶标蛋白的同源性来解释相似的化合物倾向于结合相似的蛋白质。
添加药物关系约束
(2)
添加靶标蛋白关系约束
(3)
本文将药物正则化和靶标正则化同时加入到矩阵分解中,添加药物靶标双重正则化约束的目标函数为式(4)
(4)
1.3 多输入深度自编码器
由于已知的药物-靶标相互作用矩阵稀疏,在用矩阵分解的方法寻找药物潜在影响因子U、药物潜在影响因子V时,会造成分解效果下降[12]。因此,本文添加了多输入深度自编码器来学习药物潜在特征和靶标蛋白的潜在特征。自编码器(auto-encoder)是一种能够通过自监督学习,学习输入数据的高效表征的神经网络。深度自编码器是由多层自编码器堆叠而成,其拓扑结构完整,具有强大的非线性拟合特征能力[13]。因此能够更好表示网络输入数据。
如图1所示,本文设计的多输入深度自编码器算法在传统的深度自编码器的上增加了一个输入层和输出层。
图1 多输入深度自编码器
(1)该模型有两个输入层输入数据分别为R,M。两个输出层分别为重构后的R,M。
(2)以药物和靶标的评分矩阵R为主要输入,药物-药物的相似性矩阵M作为辅助信息输入自编码器。这样一个双输入的自编码器的中间层可以看作是评分矩阵和药物相似度信息的桥梁,中间层是矩阵分解需要的药物潜在影响因子U。
(3)将药物靶标的评分矩阵R按行分割为m个n维向量集合{S1,S2,S3,…,Sm},Si代表药物i对所有靶标的相互作用。R是一个稀疏的0,1矩阵。深度自编码器的另一个输入是药物的相似性矩阵M,将药物相似性矩阵分割为m个m维的向量集{d1,d2,d3,…,dm},Mj代表药物j和所有其它药物的相似度。将R和M输入模型,加入限制将矩阵压缩为一个低秩矩阵,再通过解码器重构R,M。对于输出层可以计算
(5)
(6)
其中,{W,b}为可调参数,W表示m×k的权重矩阵,k为预设的潜在空间维度。b是偏置向量。多输入深度自编码器模型在提取原始相互作用矩阵R里的潜在特征的同时又充分利用了药物、靶标的辅助信息,可以得到有效的药物、靶标表征。
1.4 模型描述
本文结合约束非负矩阵分解和多输入深度自编码器提出一种深度协同过滤算法来预测药物-靶标相互作用。本模型以基于约束非负矩阵分解的协同过滤算法为药物-靶标预测的主要方法,为了更加准确寻找U和V,提出以两个多输入深度自编码分别来提取药物潜在特征U和靶标潜在特征V。模型如图2所示,框架由3部分组成:基于多输入深度自编码器的药物潜在特征提取模型、基于矩阵分解的协同过滤推荐模型、基于多输入深度自编码的靶标潜在特征提取模型。在第1、第3部分,对普通的单输入单输出自编码器做了改进,在输入中加入相似度信息M、N为辅助输入,药物-靶标的相互作用矩阵R为主要输入。改进的自编码器模型可以同时提取到药物-靶标关系R和相似度矩阵M、N中的药物、靶标潜在特征,使提取的潜在特征U和V更加有效。在第2部分,用协同过滤填充矩阵R中的未知项,将药物、靶标双重正则化约束加入矩阵分解算法中,通过上一步自编码器获得的药物潜在影响因子和靶标潜在影响因子作为初始的分解矩阵U和V,再根据模型的损失函数调整网络更新U和V。
图2 整体模型
2 模型训练
2.1 算法流程
模型训练流程如图3所示,该模型利用两个多输入深度自编码器模型构建了一个内部拓扑结构的网络,它由两个独立的网络模块组成,在训练网络时是两个并行的分支。两个自编码器经过压缩后的中间层是两个低维矩阵U和V,通过约束非负矩阵分解继续优化这两个矩阵直到循环结束。
图3 流程
2.2 数据集
测试本模型的数据集为Yam基准数据集[3],此数据集由Yamannish等设计,目前是药物-靶标预测的一个基准数据集。下载地址http://web.kuicr.kyoto-u.ac.jp/supp/yoshi/drugtarget/。如表1所示,数据集按照靶标的不同类型分为4种数据集:核受体、G蛋白偶联受体、离子通道、酶。每个数据集包括已经验证的药物-靶标的相互作用信息和药物、标靶辅助信息。其中,药物-靶标的相互作用信息主要来自公共数据库KEGG BRITE,SuperTarget和DrugBank[14]。
表1 数据集内容
2.3 参数优化
(1)本文的多输入深度自编码器模型由4层自编码器堆叠而成,对于提取药物潜在特征的自编码器,第L/2层是想要得到的药物潜在影响因子U。前L/2层用于将输入的药物-靶标交互矩阵和药物相似性矩阵的降维,后L/2层将中间层进行升维还原。模型的网络训练是采用非监督的贪婪算法。模型整体的网络进行逐层训练。详细过程见表2。
表2 参数调整
提取药物潜在特征的自编码器的损失函数
(7)
提取靶标潜在特征的自编码器的损失函数
(8)
(2)本文的深度协同过滤模型中优化模型中4个可变参数,分别为药物潜在影响因子U、靶标潜在影响因子V、权重矩阵集W和偏置矩阵集b。设置整体模型的损失函数为式(9)
(9)
虽然目标函数在所有变量中并不是共同的凸函数,但是固定其它参数时,剩余的任何一个参数都是凸函数,对于潜在变量Ui和Vj首先通过深度自编码器提取潜在特征得到Ui和Vj的初始值。然后采用随机梯度下降(SGD)算法去优化潜在变量使损失函数的值最小。在这里对公式求二阶偏导
(10)
(11)
在迭代中,参数Ui和Vj按负梯度方向来更新,每一次更新的增量为α,也就是梯度下降的学习率,更新规则如下
(12)
当固定了矩阵U和V,可以通过反向传播算法来学习每层的权重W和偏置b,通过交替更新潜在变量Ui和Vj,参数权重W和偏置b,可以得到一个U和V最优解。
3 实 验
3.1 评估标准
模型的优劣使用AUC和AUPR进行模型评估,AUC是接受者操作特性曲线(receiver operating characteristic curve,ROC)下的面积,曲线的横坐标是假阳性率(FPR),纵坐标代表真阳性率(TPR)。AUPR是精确率召回率曲线(precision recall curve,PR)下的面积,曲线横坐标是召回率(Recall),纵坐标是精确率(Precision)。PR曲线可以得到在不同阈值下的召回率值和精确率值,AUPR值在0到1之间,越大表明预测效果越好[15]
P(准确率,Precision)=TP/(TP+FP)
R(召回率,Recall)=TP/(TP+FN)
TPR(真阳性率)= TP/(TP+FN)
FPR(假阳性率)= FP/(FP+TN)
3.2 对比实验
为了评估模型的优劣性能,在实验部分设计了两组对比实验:①本文的深度协同过滤模型对比文献[5]中的MFDR模型,这两个模型的相同点是都采用了深度自编码器提取深度表征,不同点是本文方法用协同过滤算法解决DTI问题,而MFDR采用SVM做二分类。另一个对比的方法是COSINE[7],该方法采用基于低秩矩阵分解的协同过滤算法预测DTI。②对比了5种经典的近几年取得不错成果的方法,分别为KBMF2K、CMF、BML-NII、WNN-GIP和NetLapRLS。
3.2.1 对比实验一
深度协同过滤与MFDR(SDAE+SVM)和COSINE方法对比。
AUPR值如图4所示。因为样本中已知的DTI数量远小于未知的数量,正负样本不平均分布造成召回率偏低。因此,AUPR值不高,本文的算法AUPR值在4种数据集上的AUPR值为0.637、0.682、0.732、0.764均高于另外两种方法,在核受体数据集中3种方法差距较小,在酶数据集上本文方法明显高于其它两个方法。表明本文方法能较好的平衡数据的准确率和召回率。
如图5所示,COSINE方法在核受体数据集上效果不错,在酶数据集上表现下降,反应了仅仅使用矩阵分解的局限性。从AUC曲线可以看出本文的方法在4个数据集上的曲线下面积大于SDAE+SVM和COSINE两个方法,并且曲线的凸出接近左上(0,1)坐标,表明本文的方法可以取得高真阳性率和低假阳性率。在酶数据集上,本文方法AUC达到0.978,相较其它数据集,取得了最好的效果。
图4 AUPR值对比
图5 AUC结果对比
3.2.2 对比实验二
为了评估本文的深度协同过滤算法与药物-靶标预测的经典算法相比的性能,本文设计了5个经典方法,见表3,表4,前3个为基于二分类的方法、后3个为基于矩阵分解的方法。
可以看出矩阵分解方法在DTI预测上具有较好的性能。如表3所示深度协同过滤算法在离子通道数据集上,AUC值比协同矩阵分解CMF高了0.173,表明了加入多输入深度自编码器在DTI预测上的显著效果。如表4所示经典算法的AUPR值难以突破0.5,而深度协同过滤模型在酶数据集上达到了0.764,更好平衡了数据准确率和召回率。
表3 与5个经典方法的AUC值对比
表4 与5个经典方法的AUPR值对比
4 结束语
本文提出了一种DTI预测方法,深度协同过滤算法。根据药物、靶标的关系在非负矩阵分解中加入药物、靶标双重正则化约束。并且设计了一个多输入深度自编码器来同时提取DTI矩阵和辅助信息的特征。将得到的药物、靶标的潜在特征作为约束非负矩阵的初始值进行未知项的预测填充。通过实验比较,验证本文算法优于它DTI预测方法。接下来的工作,将尝试继续改进深度协同过滤算法并应用到药物重定位中,挖掘特定药物的潜在适应症。