1.一种药物相互作用的预测方法,其特征在于:获取新药物的生化特征和化学式字符串后,使用经过预训练的预测模块来预测新药物与现存药物之间的药物相互作用,基于现存药物对预测模块进行预训练的方法包括以下步骤:S1,预测模块获取现存药物的生化特征后,构建现存药物生化相似度矩阵;同时,预测模块基于现存药物的化学式字符串获取药物分子结构和药物分子结构中的重要子结构;
S2,预测模块计算现存药物的药物分子结构节点值和药物分子结构里重要子结构的节点值后得到对应的药物分子结构图和药物分子结构中的重要子图,再对药物分子结构图和药物分子结构中的重要子图进行特征表示;
S3,预测模块基于现存药物的生化特征、化学式字符串、药物分子结构图、药物分子结构中的重要子图构建现存药物相互作用网络,并分别得到现存药物相互作用网络在超图视角和变分图自编码器视角的节点表示;
S4,预测模块融合学习现存药物相互作用网络中各节点在超图视角和变分图自编码器视角的节点表示后,预测出现存药物间的药物相互作用,再基于对应现存药物间真实的药物相互作用来计算预测结果的整体损失函数,优化预测模块;
在S1中,预测模块获取现存药物的生化特征后,构建现存药物生化相似度矩阵,还包括以下子步骤:S11,预测模块从现存药物数据库中获取现存药物的靶标、酶和转运体这三个生化特征后,分别得到现存药物的酶特征向量、靶点特征向量、转运体特征向量:;
;
;
记人体中共包含b种酶,分别为酶1、酶2、...、酶a、...、酶b,记人体中共包含d种靶点,分别为靶点1、靶点2、...、靶点c、...、靶点d,记人体中共包含f种转运体,分别为转运体1、转运体2、...、转运体e、...、转运体f,表示现存药物i的酶特征向量, 为酶特征向量 中的第a个维度上的维度值即酶a的特征值,表示现存药物i与酶a之间是否存在关联,存在关联则为1,否则为0,表示现存药物i的靶点特征向量, 为靶点特征向量 中的第c个维度上的维度值即靶点c的特征值,表示现存药物i与靶点c之间是否存在关联,存在关联则为1,否则为0,表示现存药物i的转运体特征向量, 为转运体特征向量
中的第e个维度上的维度值即转运体e的特征值,表示现存药物i与转运体e之间是否存在关联,存在关联则为1,否则为0,
且1≤a≤b,1≤c≤d,1≤e≤f,a、b、c、d、e、f均为正整数;
S12,预测模块分别计算不同现存药物之间的酶特征向量之间的相似度、靶点特征向量之间的相似度以及转运体特征向量之间的相似度:;
;
;
其中, 、 、 分别表示现存药物i和现存药物j的酶特征
向量之间的相似度、靶点特征向量之间的相似度、转运体特征向量之间的相似度,表示计算ρ和ζ之间的汉明距离, 表示酶特征向量的长度, 表示靶点特征向量的长度, 表示转运体特征向量的长度;
S13,预测模块计算不同药物之间的综合生化相似度:
;
其中,Sij表示现存药物i和现存药物j之间的综合生化相似度,w1、w2、w3分别表示第一权重超参数、第二权重超参数、第三权重超参数;
S14,预测模块基于不同现存药物之间的综合生化相似度构建现存药物生化相似度矩阵S:;
现存药物生化相似度矩阵S为n×n的矩阵,n为当前药物数据库中的现存药物总数,Sij表示现存药物i和现存药物j之间的综合生化相似度,现存药物i表示当前现存药物数据库中的第i种现存药物,现存药物j表示当前现存药物数据库中的第j种现存药物,其中,1≤i≤n,1≤j≤n,且i、j、n均为正整数,当i=j时,Sij=1;
在S1中,预测模块基于现存药物的化学式字符串获取药物分子结构和药物分子结构中的重要子结构,还包括以下子步骤:S11´,预测模块将现存药物的化学式字符串转换成药物分子结构,药物分子结构中的节点表示药物原子,各节点之间的连接边表示化学键;
S12´,预测模块将药物分子结构与重要子结构数据库内所存储的结构进行比对,若当前药物分子结构中包含重要子结构数据库内所存储的结构,则将这些结构作为当前药物分子结构中的重要子结构;若当前药物分子结构中不包含重要子结构数据库内所存储的任意一种结构,则当前药物分子结构中无重要子结构;
在S3中还包括以下内容:
S31,预测模块基于各现存药物的生化特征、化学式字符串、药物分子结构图、药物分子结构中的重要子图,将各现存药物作为节点,将存在超边的两现存药物间进行连边,构建现存药物相互作用网络GDDI;
在S31后,得到现存药物相互作用网络GDDI在超图视角的节点表示还包括子步骤S32a~S33a:S32a,预测模块得到药物相互作用网络GDDI所包含的节点集合HM和超边集合HE:HM={B1,B2,...,Bi,...,Bn},Bi表示节点i,即现存药物i,1≤i≤n且i为正整数,HM共包括n个节点,对应n种现存药物,HE={E1,E2,...,Ei,...,En},Ei表示药物相互作用网络GDDI中节点i的超边子集,Ei={Ei‑1,Ei‑2,...,Ei‑y,...,Ei‑n},Ei‑y表示节点i和节点y之间的超边情况,1≤y≤n,y≠i且y为正整数,若节点i和节点y之间存在超边,则Ei‑y=1,否则Ei‑y=0;
S33a,预测模块内使用超图卷积算法HyperGCN对现存药物相互作用网络GDDI所包含的节点集合HM与超边集合HE进行编码后,得到现存药物相互作用网络GDDI在超图视角的节点表示集合H={H1,H2,...,Hi,...,Hn},Hi表示药物相互作用网络GDDI中的节点i在超图视角的节点表示;
在S31后,得到现存药物相互作用网络GDDI在变分图自编码器视角的节点表示还包括子步骤S32b~S34b:S32b,预测模块将各现存药物的生化特征、化学式向量、药物分子结构图、药物分子结构中的重要子图进行拼接,再使用PCA主成分分析法进行降维操作后,得到各现存药物的初始特征,构建现存药物初始特征集合X;
同时,预测模块使用邻接矩阵A来表示现存药物相互作用网络GDDI中各节点之间的药物相互作用情况:;
其中邻接矩阵A为n×n的矩阵,Aij表示现存药物i和现存药物j之间的药物相互作用情况:若现存药物i和现存药物j之间不存在相互作用,则Aij=0;
若现存药物i和现存药物j之间存在协同作用,则Aij=1;
若现存药物i和现存药物j之间存在相加作用,则Aij=2;
若现存药物i和现存药物j之间存在拮抗作用,则Aij=3;
当i=j时,Aij=0,表示药物不会与自身产生相互作用,现存药物i表示当前药物数据库中的第i种药物,药物j表示当前药物数据库中的第j种药物,其中,1≤i≤n,1≤j≤n,且i、j、n均为正整数;
S33b,预测模块使用图卷积网络对邻接矩阵A和现存药物的初始特征集合X进行编码后得到各现存药物的潜在均值μ和对数方差 :,
,
其中,GCNμ(·)和GCNσ(·)分别表示用于学习均值的图卷积网络和用于学习对数方差的图卷积网络, 表示各现存药物的方差;即与n个药物对应,一共得到n个潜在均值和n个对数方差;
S34b,预测模块基于各现存药物的潜在均值μ和对数方差 ,使用图卷积网络得到各现存药物的潜在表示,再对各现存药物的潜在表示进行解码后得到现存药物相互作用网络GDDI在变分图自编码器视角的节点表示集合VAE={VAE1,VAE2,...,VAEi,...,VAEn},VAEi表示现存药物相互作用网络GDDI中的药物i在变分图自编码器视角的节点表示;
在S32b中,得到各现存药物的化学式向量还包括以下子步骤:S321b,预测模块将现存药物的化学式字符串进行分词操作后生成对应的词单元序列;
S322b,设定词单元序列的标准长度为k,预测模块对长度短于标准长度k的词单元序列的末尾进行填充直至当前词单元序列的长度为k时,记为对应现存药物的标准词单元序列;
S323b,预测模块将各标准词单元序列编码成维度数量为J的化学式向量。
2.根据权利要求1所述的一种药物相互作用的预测方法,其特征在于,S2中还包括以下子步骤:S21,预测模块通过图卷积神经网络计算出各现存药物的药物分子结构中的节点值、药物分子结构里各重要子结构的节点值后,得到对应的药物分子结构图和药物分子结构中的重要子图:;
其中,v表示当前药物分子结构中/药物分子结构里重要子结构中的任意一个节点,表示节点v在图卷积神经网络中第(t+1)层的节点值,N(v)表示节点v的邻居节点的集合, 表示当前药物分子结构中/药物分子结构里重要子结构中的节点u在图卷积神经网t络中第t层的节点值,u∈{N(v)∪v}表示节点u的取值范围是N(v)和节点v的并集,W表示图t卷积神经网络中第t层的权重参数,p表示图卷积神经网络中第t层的偏置项,σ(·)是ReLU非线性激活函数; 为预先设置好的图卷积神经网络初始节点值,0≤t≤z‑1,t为非负整数,z为正整数, 表示节点v和节点u的归一化常数,为节点v的邻居节点个数和节点u的邻居节点个数乘积的平方根;
S22,对各药物分子结构图中的节点值、各重要子图中的节点值进行池化操作后得到对应的池化平均值,将池化平均值作为各药物分子结构图、各重要子图的特征表示:,
,
其中,Gi表示药物i所对应的药物分子结构图,gm表示药物分子结构图Gi所包含的一个重要子图,Readout{·}表示Readout池化函数, 表示药物分子结构图Gi的池化平均值,表示重要子图gm的池化平均值, 表示节点v在图卷积神经网络中最后一层z的节点值, 表示对药物分子结构图Gi中所有节点在图卷积神经网络中最后一层z的节点值进行Readout池化操作, 表示对重要子图gm里所有节点在图卷积神经网络中最后一层z的节点值进行Readout池化操作。
3.根据权利要求1所述的一种药物相互作用的预测方法,其特征在于,在S34b后还包括S35b:S35b,计算变分图自编码器的损失函数L1,并朝着损失函数L1梯度减小的方向优化变分图自编码器:,
其中, 表示在S34b的解码过程中得到重建邻接矩阵,CE(·)表示多元交叉熵损失,KL[·]表示各现存药物潜在表示的KL散度,I代表单位矩阵, 表示先验假设的标准正态分布, 表示各现存药物的潜在表示的正态分布,||为连接符。
4.根据权利要求1所述的一种药物相互作用的预测方法,其特征在于,在S4中,还包括以下子步骤:S41,预测模块融合学习超图视角和变分图自编码器视角的节点表示后,得到各药物所对应的节点最终表示:Φi=0.5(Hi+VAEi),其中,Φi表示现存药物i的节点最终表示,且为一个列向量;
S42,预测模块内使用双线性解码器对各现存药物的节点最终表示进行解码后,分别计算出两种现存药物之间的相互作用得分,用以预测两种药物之间的相互作用:,
其中,SCORE(i,j)表示现存药物i和现存药物j之间的相互作用得分,是一个四维向量,不同维度上的维度值表示现存药物i和现存药物j之间的药物相互作用分别对应无关、协同、相加、拮抗这四种类型药物相互作用的概率,softmax(·)表示softmax激活函数,ψ为双线性解码器的偏置项参数,Rψ是双线性解码器的权重矩阵, 表示Φi的转置;
S43,取现存药物i和现存药物j之间的相互作用得分所包含四个维度值中最大维度值所代表的药物相互作用类型,作为预测模块对现存药物i和现存药物j之间药物相互作用的预测结果进行输出;
S44,基于现存药物i和现存药物j之间真实的药物相互作用来计算预测结果的整体损失函数,并朝着整体损失函数梯度减小的方向优化预测模块。
5.根据权利要求4所述的一种药物相互作用的预测方法,其特征在于,在S43后、S44前还包括S43´:S43´,计算双线性解码器的损失函数L2,并朝着损失函数L2梯度减小的方向优化双线性解码器:;
其中, 表示现存药物i和现存药物j之间的相互作用得分在第Ω个维度上的维度值,1≤Ω≤4且Ω为正整数, 表示现存药物i和现存药物j之间的相互作用得分在第Ω个维度上的指示变量,当现存药物i和现存药物j之间的相互作用得分的第Ω个维度对应为无关时,则 ,否则 。
6.根据权利要求1所述的一种药物相互作用的预测方法,其特征在于,当一个药物分子结构里的重要子图数量为r1时,1<r1且r1为整数,则在S2之后、S3之前还包括S21´~S22´:S21´,预测模块基于互信息神经估计方法改进后的图信息瓶颈框架来得到当前药物分子结构里各重要子图的互信息:;
其中,记现存药物i的药物分子结构中的重要子图集合为Q(i),Q(i)中所包含的重要子图超过1个,Iθ(Si;gm)表示现存药物i的药物分子结构里重要子图gm与现存药物i生化相似度行向量Si之间的互信息,gm∈Q(i),现存药物i生化相似度行向量Si为现存药物生化相似度矩阵S中的第i行元素,Tθ表示得到互信息所使用的参数为θ的神经网络, 表示生化相似度行向量Si和重要子图gm的联合分布, 表示神经网络Tθ在生化相似度行向量Si和重要子图gm的联合分布下的期望值, 表示生化相似度行向量Si和重要子图gm的边缘分布的乘积, 表示在生化相似度行向量Si和重要子图gm独立时,神经网络Tθ输出生化相似度行向量Si和重要子图gm边缘分布乘积下自然底数e的指数的期望;
S22´,预测模块计算当前药物分子结构里各重要子图的互信息目标函数,再根据各重要子图的互信息目标函数挖掘当前药物分子结构里关键的重要子图:;
;
;
其中,Fi<·>为现存药物i的互信息目标函数,Fi
将重要子图集合Q(i)中各重要子图的互信息目标函数值降序排列,预测模块选取前r2个互信息目标函数值所对应的重要子图作为现存药物i关键的重要子图,1≤r2<r1且r2为整数。