一种基于多头注意力机制的miRNA-疾病关联预测方法及系统

未命名 07-23 阅读:113 评论:0

一种基于多头注意力机制的mirna-疾病关联预测方法及系统
技术领域
1.本发明属于生物数据挖掘和数字健康技术领域,具体涉及一种基于多头注意力机制的mirna-疾病关联预测方法及系统。


背景技术:

2.mirna是一种长度约为22个核苷酸的内源性非编码单链rna分子,通过转录对遗传信息进行调节。大量研究发现,当mirna出现异常的时会导致人类疾病的发生。因此,深入地研究和探讨mirna与疾病之间的关联能更好地鉴别各种疾病的生物标志物,促进生物医学的研究和发展。
3.随着时代技术的发展,mirna与疾病的关联预测也从耗时长、成本高的生物实验的方式转变为利用计算机算法进行精密简洁的研究预测。当前现有的算法方式大致可分为三类。
4.其一是:基于传统机器学习的方法。从已知的关联数据中提取或学习mirna和疾病的特征,接着应用经典的分类算法进行分类,最终得出预测结果。例如中国专利文献cn202210987756上公开的基于稀疏学习和随机游走的mirna-疾病预测方法,cn201610019087上公开的利用mirna表达数据发现癌症相关基因的方法。
5.其二是:基于神经网络进行的相关性研究。中国专利文献cn202211451740中公开的基于融合神经网络的fnn模型对rna和疾病进行关联预测。
6.其三是:利用矩阵分解将隐语义和机器学习的特性结合在一起对其进行深入研究。中国专利文献cn202210219713上公开了基于异构图的mirna与疾病关联预测方法。
7.上述这些方法都在一定程度上获得了很好的预测结果,但它们仍然存在一些无法解决的问题,比如有些针对新任务进行重新训练的模型在旧任务上训练时还是会出现性能下降的情况。神经网络需要有大量的训练数据来支撑,矩阵分解虽然预测精度比较高,具有比较低的空间和时间复杂度,但是模型训练较为费时,且某些隐含特征在生活中表达困难,解释性差。


技术实现要素:

8.为了解决上述所存在的技术问题,使对疾病的预测更加准确、高效,本发明提供了一种基于多头注意力机制的mirna-疾病关联预测方法及系统,通过将mirna-疾病关联、mirna-mirna相似度和疾病-疾病相似度整合到一个异构网络中,然后根据节点层注意力机制学习相邻节点的重要性,最后利用了综合了广义矩阵分解的线性能力和多层感知器的非线性能力的深度学习框架得出预测结果。
9.所采用的技术方案如下:
10.一方面,本发明提供了一种基于多头注意力机制的mirna-疾病关联预测方法,所述方法包括如下步骤:
11.步骤1,获取已知的mirna-疾病关联数据,构建异质图;
12.步骤2,根据已知的mirna和疾病数据,计算mirna和疾病的相似度数据;
13.步骤3,根据步骤1和步骤2所得信息计算异质节点之间的注意力,通过多次迭代计算注意力形成多头注意力机制,基于多头注意力机制聚合mirna和疾病的语义信息,得到对应的特征嵌入向量;
14.步骤4,基于步骤3得到的特征嵌入向量,利用协同神经过滤网络构建mirna-疾病关联预测器,计算mirna-疾病的关联得分;
15.步骤5,构造mirna-疾病关联预测的损失函数;
16.步骤6,利用已知的mirna和疾病相似度数据,采用dropout和反向传播算法训练mirna-疾病关联预测器,并得到训练mirna-疾病关联预测器的最优参数设置。
17.进一步地,所述步骤1中,从hmdd v2.0数据库中下载已知的mirna-疾病关联数据,经过数据处理后得到多种疾病、若干条mirna以及mirna-疾病关联数据;构建mirna和疾病的异质图,g={v,e},v代表图中的mirna和疾病节点,e代表mirna-mirna,mirna-疾病和疾病-疾病之间的关联边。
18.优选地,所述步骤2中,计算mirna和疾病的相似度数据的具体方法是:
19.步骤2.1,计算疾病两种不同的语义相似度dssm(d(i),d(j));
20.步骤2.2,计算mirna的相似矩阵im和疾病的相似矩阵id
21.步骤2.3,将疾病和mirna的相似度数据融合,分别得到疾病和mirna的综合相似度数据。
22.优选地,所述步骤2.1中计算疾病两种不同语义相似度,其计算方法如下:
23.步骤2.11,计算疾病d(j)对d(i)的第一种语义贡献值:
[0024][0025]
步骤2.12,计算疾病的第一种语义值:
[0026][0027]
步骤2.13,计算疾病d(i)和d(j)的第一种语义相似度:
[0028][0029]
步骤2.14,计算疾病d(j)对d(i)的第二种语义贡献值:
[0030][0031]
步骤2.15,计算疾病的第二种语义值:
[0032][0033]
步骤2.16,计算疾病d(i)和d(j)的第二种语义相似度:
[0034]
[0035]
步骤2.17,计算疾病d(i)和d(j)的疾病语义相似度:
[0036][0037]
其中:d(i)和d(j)分别代表编号为i和j的疾病节点,d(j)

代表d(j)的子节点,d(k)代表编号为k的疾病,δ代表语义衰退的贡献因素,优选设置为0.5,num(dags(d(j)))代表疾病d(j)在有向无环图的数量,num(diseases)代表所有疾病的种类数量。
[0038]
优选地,所述步骤2.2中计算mirna的语义相似性和功能相似度,其计算方法如下:
[0039]
步骤2.21,创建一个二元向量ip(m(i)),代表矩阵dm的第i行,代表编号为i的mirna与其他所有疾病的关联;
[0040]
步骤2.22,计算mirna的高斯相互作用轮廓核相似性:
[0041][0042]
其中:参数rm用于控制内核的带宽,其计算公式:
[0043][0044]r′m被设置为1,nm为mirna的数量;
[0045]
步骤2.23,计算疾病d(i)和d(j)之间的高斯相互作用轮廓核相似性:
[0046]
dgsm(d(i),d(j))=exp(-rd||ip(d(i))-|ip(d(j))||2)
[0047][0048]
向量ip(d(i))代表着矩阵dm的第i列并且表示该疾病与其他所有mirna之间的联系,其中r
′d被设置为1,nd代表疾病的数量;
[0049]
步骤2.24,计算mirna的相似矩阵im和疾病的相似矩阵id:
[0050][0051][0052]
其中,m(i)、m(j)、d(i)、d(j)分别代表编号为i、j的mirna和疾病;
[0053]
mfsm为mirna的功能相似矩阵,dssm为疾病的语义相似矩阵。
[0054]
进一步地,所述步骤3中,具体的计算方法是:
[0055]
步骤3.1,从所得的mirna的功能相似矩阵和疾病的语义相似矩阵中取出一行作为编号为i的mirna的特征向量m(m(i))或编号为j的疾病的特征向量d(d(j));
[0056]
步骤3.2,将mirna和疾病的特征向量m(m(i))和d(d(j))投影到相同的维度:
[0057]
f(m(i))=w(m(i))
·
m(m(i))
[0058]
f(d(j))=w(d(j))
·
d(d(j))
[0059]
其中,f(m(i))和f(d(j))分别代表经过投影之后的mirnam(i)和疾病d(j)的投影向量,w(m(i))和w(d(j))则是可训练的权重矩阵;
[0060]
步骤3.3,选定一个mirna或疾病的节点u作为中心节点,连接到节点u的mirna或疾病节点v作为异质节点,则节点u和节点v之间的注意力系数a
uv
计算如下:
[0061]auv
=leakyrelu((f(u))
·
f(v)
t
)
[0062]
其中leakyrelu()是一个非线性激活函数,f(u)、f(v)分别是节点u和节点v的特征向量,t代表矩阵转置;
[0063]
步骤3.4,使用softmax函数对同一中心节点的不同注意力系数进行归一化处理:
[0064][0065]
其中,e
uv
是归一化后的注意力系数,nu是与节点u一组相邻的所有相连的异质节点的集合;
[0066]
步骤3.5,将归一化的注意力系数与对应的节点特征向量相乘,得到一个新的特征向量zu,计算如下:
[0067][0068]
其中,elu(
·
)是激活函数,zu是经过多头注意力机制聚合之后得到的向量。
[0069]
更进一步地,所述步骤3中还包括如下步骤:
[0070]
步骤3.6,根据迭代得到的特征向量fv计算注意力系数k次,拼接每次得到的特征向量,完成多头注意力拼接:
[0071][0072]
优选地,所述步骤4中,将步骤3中所得mirna和疾病的特征向量分别嵌入到协同神经过滤网络,通过迭代将得到的新向量结合,通过训练全连接层得到预测分数y
ui
,具体计算方法是:
[0073]fgmf
=m(i)
gmf

d(j)
gmf
[0074]yui
=(h
t
[f
gmf
,f
mlp
])
[0075]
其中:m(i)
gmf
和d(j)
gmf
分别表示gmf模型中的mirna和疾病嵌入载体;
[0076]
m(i)
mlp
,d(j)
mlp
分别表示mlp模型中的mirna和疾病嵌入载体;
[0077]fgmf
代表通过广义矩阵分解的特征向量;
[0078]fmlp
代表通过多元感知机的向量;
[0079]
h是可训练的权重矩阵参数,是激活函数,w是权重矩阵,b是偏置矩阵。
[0080]
优选地,所述步骤5中的损失函数为:
[0081]
loss=-(ylogy
ui
+(1-y)log(1-y
ui
))
[0082]
其中,loss代表损失值,y代表真实值,y
ui
代表预测值。
[0083]
优选地,所述步骤6中,采用梯度下降算法不断改变模型的参数,以对输入的异质分子网络数据做非线性变换拟合输出;基于疾病、mirna数据集训练mirna-疾病关联预测器,利用dropout和正则化方法优化mirna-疾病关联预测器训练过程,得到mirna-疾病关联预测器的最优参数设置。
[0084]
另一方面,本发明还提供了一种基于多头注意力机制的mirna-疾病关联预测系统,所述系统包括计算机及内嵌于计算机中存储模块、数据输入模块、异质图构建模块、mirna-疾病相似度计算模块、特征嵌入向量计算模块、mirna-疾病关联构建模块和mirna-疾病关联训练模块;
[0085]
存储模块,用于存储已知的mirna-疾病关联数据;
[0086]
数据输入模块,用于从所述存储模块中获取mirna-疾病关联数据;
[0087]
异质图构建模块,由所述数据输入模块导入关联数据,并构建异质图;
[0088]
mirna-疾病相似度计算模块,根据已知的mirna和疾病数据,计算mirna和疾病的相似度数据;
[0089]
特征嵌入向量计算模块,根据异质图及所得相似度数据,计算异质节点之间的注意力,通过多次迭代计算注意力形成多头注意力机制,基于多头注意力机制聚合mirna和疾病的语义信息,得到对应的特征嵌入向量;
[0090]
mirna-疾病关联构建模块,利用特征嵌入向量,并协同神经过滤网络构建mirna-疾病关联预测器,计算mirna-疾病的关联得分;
[0091]
mirna-疾病关联训练模块,通过构造mirna-疾病关联预测的损失函数,利用已知的mirna和疾病相似度数据,采用dropout和反向传播算法训练所构建的mirna-疾病关联预测器,并得到训练mirna-疾病关联预测器的最优参数设置。
[0092]
本发明技术方案具有如下优点:
[0093]
a.本发明方法及系统首先将已知的mirna-疾病关联、mirna-mirna相似度和疾病-疾病相似度整合到一个异构网络(异质图)中,然后根据节点层注意力机制学习相邻节点的重要性,最后利用了综合了广义矩阵分解的线性能力和多层感知器的非线性能力的深度学习框架得出预测结果,对疾病与mirna关联的预测更加准确高效。
[0094]
b.本发明基于多元异质分子信息进行建模,结合特征嵌入向量,充分利用多头注意力和神经网络优势,可以预测异质节点之间的关系,本发明可以支持深入理解异质网络中mirna和疾病之间的预测原理,具有预测效果好、鲁棒性强等优势以及具有较好的实用性和运用前景。
[0095]
c.本发明在更多已验证的mirna-疾病关联被补充进数据库中后,整体系统性能提升,预测能力也将得到显著提高。与现有的其他学习方法相比,本发明的嵌入技术可以更简便地进行修整,对于推断潜在的mirna-疾病关联达到了有效和可靠的目的。
附图说明
[0096]
为了更清楚地说明本发明具体实施方式,下面将对具体实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0097]
图1是本发明所提供的mirna-疾病关联预测方法流程图;
[0098]
图2是本发明所提供的mirna-疾病关联预测方法逻辑框图;
[0099]
图3是本发明所提供的mirna-疾病关联预测系统结构组成图。
具体实施方式
[0100]
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0101]
如图1和图2所示,本发明提供了一种基于多头注意力机制的mirna-疾病关联预测方法,包括如下步骤:
[0102]
【s01】获取已知的mirna-疾病关联数据,构建异质图。
[0103]
具体地,从hmdd v2.0数据库中下载已知的mirna-疾病关联数据,经过数据处理后,最终得到383种疾病、495条mirna和5430条已知的mirna-疾病联系;构建mirna和疾病的异质图,g={v,e},v代表图中的mirna和疾病节点,e代表mirna-mirna,mirna-疾病和疾病-疾病之间的关联边。
[0104]
根据已知的mirna-疾病关联数据,本发明构建了异质图dm,dm(i,j)=1代表着编号为i的mirna与编号为j的疾病之间存在已知关联;反之,代表着无已知关联。
[0105]
【s02】根据已知的mirna和疾病数据,计算mirna和疾病的相似度数据。计算方式如下:
[0106]
【s021】计算疾病两种不同的语义相似度dssm(d(i),d(j))。
[0107]
疾病语义相似度的具体计算如下:
[0108]
在计算疾病语义相似度时,每一个疾病可以被视为一个有向无环图。dag(d(i))=(d(i),n(d(i)),e(d(i))),d(i)代表一种疾病,n(d(i))代表疾病d(i)的祖先节点,e(d(i))代表疾病d(i)的祖先节点与d(i)直接相连的边。疾病d(j)对d(i)的语义贡献值计算方式如下:
[0109][0110]
其中,d(i)和d(j)分别代表编号为i和j的疾病节点。d(j)

代表d(j)的子节点,δ代表语义衰退的贡献因素,优选将其设置为0.5。
[0111]
如果疾病d(j)到d(i)的距离增加了,那么语义贡献值会适当下降。因此,按照如下方式计算疾病的语义值:
[0112][0113]
根据假设,如果两种疾病的共享有向无环图部分越多,则两种疾病更相似,因此可以按照如下方式计算疾病d(i)和d(j)的语义相似度:
[0114][0115]
其中:d(k)代表编号为k的疾病。
[0116]
然而,考虑到所有疾病出现的dag(有向无环图)中疾病出现的时间可能不同,本发明还采用了另外一种方式计算疾病d(j)对d(i)语义相似度,计算方式如下:
[0117]
[0118]
num(dags(d(j)))代表疾病d(j)在有向无环图的数量,num(diseases)代表所有疾病的种类数量。
[0119]
以上述方式,疾病的第二种语义相似度计算方式如下:
[0120][0121][0122]
因此,为了获得更合理和准确的疾病语义相似度,本发明将两种疾病的语义相似度平均为最终的疾病语义相似性。
[0123][0124]
【s022】计算mirna的相似矩阵im和疾病的相似矩阵id。
[0125]
根据类似mirna更可能与类似疾病相关的假设,创建一个二元向量ip(m(i))代表矩阵dm的第i行,代表编号为i的mirna与其他所有疾病的关联。mirna的高斯相互作用轮廓核相似性计算方式如下:
[0126]
mgsm(m(i),m(j))=exp(-rm||ip(m(i))-ip(m(j))||2)
[0127]
参数rm用于控制内核的带宽,计算方式如下:
[0128][0129]r′m被设置为1,nm为mirna的数量,为495。同理,疾病d(i)和d(j)之间的高斯相互作用轮廓核相似性计算方式如下:
[0130]
dgsm(d(i),d(j))=exp(-rd||ip(d(i))-ip(d(j))||2)
[0131][0132]
向量ip(d(i))代表着矩阵dm的第i列,并且表示该疾病与其他所有mirna之间的联系。r
′d被设置为1,nd代表疾病的数量,为383。
[0133]
综上所述,mirna的相似矩阵im和疾病的相似矩阵id计算方式如下:
[0134][0135][0136]
其中,m(i)、m(j)、d(i)、d(j)分别代表编号为i、j的mirna和疾病。mfsm为mirna的功能相似矩阵,dssm为疾病的语义相似矩阵。
[0137]
【s023】将疾病和mirna的相似度数据融合,分别得到疾病和mirna的综合相似度数据。
[0138]
【s03】根据步骤【s01】和步骤【s02】所得信息计算异质节点之间的注意力,通过多
次迭代计算注意力形成多头注意力机制,基于多头注意力机制聚合mirna和疾病的语义信息,得到对应的特征嵌入向量。
[0139]
具体计算方式如下:
[0140]
从mirna、疾病的相似矩阵中取出一行作为编号为i的mirna的特征向量m(m(i))或编号为j的疾病的特征向量d(d(j)),其中v
x
代表着编号为x的mirna(疾病)与其他mirna(疾病)的综合相似性。
[0141]
m(m(i))={v1,v2,v3......,v
494
,v
495
}
[0142]
d(d(j))={v1,v2,v3......v
383
,v
383
}
[0143]
为了计算注意力系数,将mirna和疾病的特征向量投影到相同的维度,方式如下:
[0144]
f(m(i))=w(m(i))
·
m(m(i))
[0145]
f(d(j))=w(d(j))
·
d(d(j))
[0146]
其中,f(m(i))和f(d(j))分别代表经过投影之后的mirna;
[0147]
m(i)和疾病d(j)的投影向量;
[0148]
w(m(i))和w(d(j))则是可训练的权重矩阵。
[0149]
然后,通过注意力机制来反映不同节点对中心节点的重要性。
[0150]
选定一个mirna或疾病的节点u作为中心节点,连接到节点u的mirna或疾病节点v作为异质节点,比如,如果u为mirna节点,则v连接的是疾病节点;如果u为疾病节点,则v连接的是mirna节点。则节点u和节点v之间的注意力系数a
uv
可以计算如下:
[0151]auv
=leakyrelu((f(u))
·
f(v)
t
)
[0152]
其中leakyrelu()是一个非线性激活函数,f(u)、f(v)分别是节点u和节点v的特征向量,t代表矩阵转置。
[0153]
获得注意力系数后,使用softmax函数对同一中心节点的不同注意力系数进行归一化,如下所示:
[0154][0155]
其中,e
uv
是归一化后的注意力系数,nu是与节点u一组相邻的所有相连的异质节点的集合。
[0156]
再次,将注意力系数与对应的节点特征向量相乘,得到一个新的特征向量,计算如下:
[0157][0158]
其中,elu(
·
)是激活函数。由于注意力系数e是由两个异构节点,zu是一种特定于语义的节点嵌入,包含一种类型的语义信息。为了减小实验方差并使结果更稳定,本发明根据迭代得到的特征向量fv计算注意力系数k次,拼接每次得到的特征向量,完成多头注意力的计算,方式如下:
[0159][0160]
最后,将新生成的聚合特征向量嵌入到协同神经过滤网络中,其网络包含两部分
模型。
[0161]
首先,广义矩阵分解(gmf)具体解释为mirna特征载体和疾病特征载体的点积,然后加权输出。将注意力聚集的mirna和疾病载体映射到相同的维度,并使用逐元素产物来表示模型的线性能力。计算过程如下:
[0162][0163]
其中表示新的潜在向量,

表示元素乘积。m(i)和d(j)是分别为mirna和疾病的响应特征向量。
[0164]
其次,本发明在多元感知机(mlp)中添加了一定数量的隐藏层,以提高模型的非线性能力,方式如下:
[0165][0166][0167]

[0168][0169]wx
,b
x
分别表示x层多元感知机中的输出特征向量、激活函数、权重矩阵和偏移矩阵,同时,使用relu(
·
)作为激活函数。
[0170]
【s04】基于步骤【s03】得到的特征嵌入向量,利用协同神经过滤网络构建mirna-疾病关联预测器,计算mirna-疾病的关联得分。
[0171]
本发明将广义矩阵分解的线性能力和模型中多元感知器的非线性能力结合起来,特征嵌入向量是通过节点之间的多头注意力机制实现的,并通过训练全连接层得到mirna-疾病关联预测器,计算mirna-疾病的关联预测得分。计算方法如下:
[0172]fgmf
=m(i)
gmf

d(j)
gmf
[0173][0174]yui
=(h
t
[f
gmf
,f
mlp
])
[0175]
其中,m(i)
gmf
和d(j)
gmf
分别表示gmf模型中的mirna和疾病嵌入载体,mlp模型同理。h是一个可训练的矩阵,y
ui
代表最终预测分数。
[0176]
其中,m(i)
gmf
和d(j)
gmf
分别表示gmf模型中的mirna和疾病嵌入载体;
[0177]
m(i)
mlp
,d(j)
mlp
分别表示mlp模型中的mirna和疾病嵌入载体;
[0178]fgmf
代表通过广义矩阵分解的特征向量;
[0179]fmlp
代表通过多元感知机的向量;
[0180]
h是可训练的权重矩阵参数,是激活函数,w是权重矩阵,b是偏置矩阵。
[0181]
【s05】构造mirna-疾病关联预测的损失函数,通过损失函数调节神经元的参数。具体过程如下:
[0182]
loss=-(ylogy
ui
+(1-y)log(1-y
ui
))
[0183]
其中,loss代表损失值,y代表真实值,y
ui
代表预测值。
[0184]
【s06】利用已知的mirna和疾病相似度数据,采用dropout和反向传播算法训练mirna-疾病关联预测器,并得到训练mirna-疾病关联预测器的最优参数设置。
[0185]
得到的新的mirna-疾病关联预测器模型即可用于对新数据的疾病得分预测。
[0186]
预测得分为0~1之间,预测得分越高,表示该mirna与疾病之间存在关联的可能性越大。
[0187]
本发明采用梯度下降算法不断改变模型的参数,以对输入的异质分子网络数据做非线性变换拟合输出。基于疾病、mirna数据集训练mirna-疾病关联预测器模型,利用dropout和正则化方法优化模型训练过程,得到mirna-疾病关联预测器模型的最优参数。
[0188]
如图3所示,本发明还提供了一种基于多头注意力机制的mirna-疾病关联预测系统,包括计算机及内嵌于计算机中存储模块、数据输入模块、异质图构建模块、mirna-疾病相似度计算模块、特征嵌入向量计算模块、mirna-疾病关联构建模块和mirna-疾病关联训练模块;存储模块用于存储已知的mirna-疾病关联数据,比如从hmdd v2.0数据库中下载已知的mirna-疾病关联数据到存储模块中,经过数据处理后得到多种疾病、若干条mirna以及mirna-疾病关联数据;数据输入模块用于从存储模块中获取mirna-疾病关联数据;异质图构建模块由数据输入模块导入关联数据,并构建异质图;mirna-疾病相似度计算模块根据已知的mirna和疾病数据,计算mirna和疾病的相似度数据;特征嵌入向量计算模块根据异质图及所得相似度数据,计算异质节点之间的注意力,通过多次迭代计算注意力形成多头注意力机制,基于多头注意力机制聚合mirna和疾病的语义信息,得到对应的特征嵌入向量;mirna-疾病关联构建模块利用特征嵌入向量,并协同神经过滤网络构建mirna-疾病关联预测器,计算mirna-疾病的关联得分;mirna-疾病关联训练模块通过构造mirna-疾病关联预测的损失函数,利用已知的mirna和疾病相似度数据,采用dropout和反向传播算法训练所构建的mirna-疾病关联预测器,并得到训练mirna-疾病关联预测器的最优参数设置。最后通过训练好的mirna-疾病关联预测器,针对输入的mirna做出疾病预测。通过本系统可以快速完成mirna-疾病关联预测。本发明将构建的模块集成在计算机运行程序中,通过输入相关数据自动完成对数据的运行计算,还可以支撑存储设备,将运行程序拷贝到存储设备中;通过本系统,客观作出预测,避免了一些主观因素的影响。
[0189]
本发明利用mirna、疾病相关数据构建疾病和mirna之间的异构网络,然后基于构建的异质网络利用深度神经网络自动捕捉mirna和疾病的语义信息,进一步实现关联的预测,预测效率及准确率高。
[0190]
本发明未述及之处均适用于现有技术。
[0191]
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明的保护范围之中。

技术特征:
1.一种基于多头注意力机制的mirna-疾病关联预测方法,其特征在于,所述方法包括如下步骤:步骤1,获取已知的mirna-疾病关联数据,构建异质图;步骤2,根据已知的mirna和疾病数据,计算mirna和疾病的相似度数据;步骤3,根据步骤1和步骤2所得信息计算异质节点之间的注意力,通过多次迭代计算注意力形成多头注意力机制,基于多头注意力机制聚合mirna和疾病的语义信息,得到对应的特征嵌入向量;步骤4,基于步骤3得到的特征嵌入向量,利用协同神经过滤网络构建mirna-疾病关联预测器,计算mirna-疾病的关联得分;步骤5,构造mirna-疾病关联预测的损失函数;步骤6,利用已知的mirna和疾病相似度数据,采用dropout和反向传播算法训练mirna-疾病关联预测器,并得到训练mirna-疾病关联预测器的最优参数设置。2.根据权利要求1所述的基于多头注意力机制的mirna-疾病关联预测方法,其特征在于,所述步骤1中,从hmdd v2.0数据库中下载已知的mirna-疾病关联数据,经过数据处理后得到多种疾病、若干条mirna以及mirna-疾病关联数据;构建mirna和疾病的异质图,g={v,e},v代表图中的mirna和疾病节点,e代表mirna-mirna,mirna-疾病和疾病-疾病之间的关联边。3.根据权利要求1所述的基于多头注意力机制的mirna-疾病关联预测方法,其特征在于,所述步骤2中,计算mirna和疾病的相似度数据的具体方法是:步骤2.1,计算疾病两种不同的语义相似度dssm(d(i),d(j));步骤2.2,计算mirna的相似矩阵im和疾病的相似矩阵id步骤2.3,将疾病和mirna的相似度数据融合,分别得到疾病和mirna的综合相似度数据。4.根据权利要求3所述的基于多头注意力机制的mirna-疾病关联预测方法,其特征在于,所述步骤2.1中计算疾病两种不同语义相似度,其计算方法如下:步骤2.11,计算疾病d(j)对d(i)的第一种语义贡献值:步骤2.12,计算疾病的第一种语义值:步骤2.13,计算疾病d(i)和d(j)的第一种语义相似度:步骤2.14,计算疾病d(j)对d(i)的第二种语义贡献值:步骤2.15,计算疾病的第二种语义值:
步骤2.16,计算疾病d(i)和d(j)的第二种语义相似度:步骤2.17,计算疾病d(i)和d(j)的疾病语义相似度:其中:d(i)和d(j)分别代表编号为i和j的疾病节点,d(j)

代表d(j)的子节点,d(k)代表编号为k的疾病,δ代表语义衰退的贡献因素,优选设置为0.5,num(dags(d(j)))代表疾病d(j)在有向无环图的数量,num(diseases)代表所有疾病的种类数量。5.根据权利要求4所述的基于多头注意力机制的mirna-疾病关联预测方法,其特征在于,所述步骤2.2中计算mirna的语义相似性和功能相似度,其计算方法如下:步骤2.21,创建一个二元向量ip(m(i)),代表矩阵dm的第i行,代表编号为i的mirna与其他所有疾病的关联;步骤2.22,计算mirna的高斯相互作用轮廓核相似性:mgsm(m(i),m(j))=exp(-r
m
||ip(m(i))-ip(m(j))||2)其中:参数r
m
用于控制内核的带宽,其计算公式:r

m
被设置为1,nm为mirna的数量;步骤2.23,计算疾病d(i)和d(j)之间的高斯相互作用轮廓核相似性:dgsm(d(i),d(j))=exp(-r
d
||ip(d(i))-ip(d(j))||2)向量ip(d(i))代表着矩阵dm的第i列并且表示该疾病与其他所有mirna之间的联系,其中r

d
被设置为1,nd代表疾病的数量;步骤2.24,计算mirna的相似矩阵im和疾病的相似矩阵id:步骤2.24,计算mirna的相似矩阵im和疾病的相似矩阵id:其中,m(i)、m(j)、d(i)、d(j)分别代表编号为i、j的mirna和疾病;mfsm为mirna的功能相似矩阵,dssm为疾病的语义相似矩阵。6.根据权利要求5所述的基于多头注意力机制的mirna-疾病关联预测方法,其特征在于,所述步骤3中,具体的计算方法是:步骤3.1,从所得的mirna的功能相似矩阵和疾病的语义相似矩阵中取出一行作为编号为i的mirna的特征向量m(m(i))或编号为j的疾病的特征向量d(d(j));
步骤3.2,将mirna和疾病的特征向量m(m(i))和d(d(j))投影到相同的维度:f(m(i))=w(m(i))
·
m(m(i))f(d(j))=w(d(j))
·
d(d(j))其中,f(m(i))和f(d(j))分别代表经过投影之后的mirna m(i)和疾病d(j)的投影向量,w(m(i))和w(d(j))则是可训练的权重矩阵;步骤3.3,选定一个mirna或疾病的节点u作为中心节点,连接到节点u的mirna或疾病节点v作为异质节点,则节点u和节点v之间的注意力系数a
uv
计算如下:a
uv
=leakyrelu((f(u))
·
f(v)
t
)其中leakyrelu()是一个非线性激活函数,f(u)、f(u)分别是节点u和节点v的特征向量,t代表矩阵转置;步骤3.4,使用softmax函数对同一中心节点的不同注意力系数进行归一化处理:其中,e
uv
是归一化后的注意力系数,n
u
是与节点u一组相邻的所有相连的异质节点的集合;步骤3.5,将归一化的注意力系数与对应的节点特征向量相乘,得到一个新的特征向量z
u
,计算如下:其中,elu(
·
)是激活函数,z
u
是经过多头注意力机制聚合之后得到的向量。7.根据权利要求6所述的基于多头注意力机制的mirna-疾病关联预测方法,其特征在于,所述步骤3中还包括如下步骤:步骤3.6,根据迭代得到的特征向量f
v
计算注意力系数k次,拼接每次得到的特征向量,完成多头注意力拼接:8.根据权利要求7所述的基于多头注意力机制的mirna-疾病关联预测方法,其特征在于,所述步骤4中,将步骤3中所得mirna和疾病的特征向量分别嵌入到协同神经过滤网络,通过迭代将得到的新向量结合,通过训练全连接层得到预测分数y
ui
,具体计算方法是:f
gmf
=m(i)
gmf

d(j)
gmf
y
ui
=(h
t
[f
gmf
,f
mlp
])其中:m(i)
gmf
和d(j)
gmf
分别表示gmf模型中的mirna和疾病嵌入载体;m(i)
mlp
d(j)
mlp
分别表示mlp模型中的mirna和疾病嵌入载体;f
gmf
代表通过广义矩阵分解的特征向量;f
mlp
代表通过多元感知机的向量;h是可训练的权重矩阵参数,是激活函数,w是权重矩阵,b是偏置矩阵。9.根据权利要求8所述的基于多头注意力机制的mirna-疾病关联预测方法,其特征在于,所述步骤5中的损失函数为:
loss=-(ylogy
ui
+(1-y)log(1-y
ui
))其中,loss代表损失值,y代表真实值,y
ui
代表预测值。10.根据权利要求9所述的基于多头注意力机制的mirna-疾病关联预测方法,其特征在于,所述步骤6中,采用梯度下降算法不断改变模型的参数,以对输入的异质分子网络数据做非线性变换拟合输出;基于疾病、mirna数据集训练mirna-疾病关联预测器,利用dropout和正则化方法优化mirna-疾病关联预测器训练过程,得到mirna-疾病关联预测器的最优参数设置。11.一种基于多头注意力机制的mirna一疾病关联预测系统,其特征在于,所述系统包括计算机及内嵌于计算机中存储模块、数据输入模块、异质图构建模块、mirna-疾病相似度计算模块、特征嵌入向量计算模块、mirna-疾病关联构建模块和mirna-疾病关联训练模块;存储模块,用于存储已知的mirna-疾病关联数据;数据输入模块,用于从所述存储模块中获取mirna-疾病关联数据;异质图构建模块,由所述数据输入模块导入关联数据,并构建异质图;mirna-疾病相似度计算模块,根据已知的mirna和疾病数据,计算mirna和疾病的相似度数据;特征嵌入向量计算模块,根据异质图及所得相似度数据,计算异质节点之间的注意力,通过多次迭代计算注意力形成多头注意力机制,基于多头注意力机制聚合mirna和疾病的语义信息,得到对应的特征嵌入向量;mirna-疾病关联构建模块,利用特征嵌入向量,并协同神经过滤网络构建mirna-疾病关联预测器,计算mirna-疾病的关联得分;mirna-疾病关联训练模块,通过构造mirna-疾病关联预测的损失函数,利用已知的mirna和疾病相似度数据,采用dropout和反向传播算法训练所构建的mirna-疾病关联预测器,并得到训练mirna-疾病关联预测器的最优参数设置。

技术总结
本发明公开了一种基于多头注意力机制的miRNA-疾病关联预测方法及系统,通过系统获取miRNA-疾病关联数据,构建异质图;根据已知的miRNA和疾病数据计算miRNA和疾病的相似度数据;通过多次迭代计算注意力形成多头注意力机制,基于多头注意力机制聚合miRNA和疾病的语义信息,得到对应的特征嵌入向量;基于得到的特征嵌入向量,利用协同神经过滤网络构建miRNA-疾病关联预测器,计算miRNA-疾病的关联得分;构造miRNA-疾病关联预测的损失函数;利用已知的miRNA和疾病相似度数据,采用dropout和反向传播算法训练miRNA-疾病关联预测器,并得到训练miRNA-疾病关联预测器的最优参数设置。本发明采用的嵌入技术可以更简便地进行修整,对于推断潜在的miRNA-疾病关联达到了有效和可靠的目的。和可靠的目的。和可靠的目的。


技术研发人员:朱哲琛 刘同存 刘睿 沙奥林 俞楚涵 张宇捷
受保护的技术使用者:浙江农林大学
技术研发日:2023.03.28
技术公布日:2023/7/21
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐