一种基于深度自动编码器的基因表达数据聚类方法技术

技术编号:33132779 阅读:30 留言:0更新日期:2022-04-17 00:53
本发明专利技术属于基因表达数据分析领域,具体涉及一种基于深度自动编码器的基因表达数据聚类方法;该方法包括:获取基因表达数据;对基因表达数据进行预处理,得到mRNA数据;将mRNA数据输入到训练好的深度自动编码器中,得到降维后的mRNA数据;采用mclust包确定降维后的mRNA数据的聚类簇数;根据聚类簇数,采用k

【技术实现步骤摘要】
一种基于深度自动编码器的基因表达数据聚类方法


[0001]本专利技术属于基因表达数据分析领域,具体涉及一种基于深度自动编码器的基因表达数据聚类方法。

技术介绍

[0002]随着基因芯片检测技术日趋成熟,产生了大量的基因表达数据,人们可从公共数据集中获取基因表达数据。利用数据挖掘方法挖掘基因表达数据重要信息,可从分子层面探讨疾病的机理和生物标志物。聚类分析是数据挖掘的重要技术之一,在基因表达数据研究中具有很重要的作用。基因表达数据的聚类分析研究可分为3类:基因聚类、样本聚类和双向聚类。其中,基因聚类以基因为对象,以样本表达值为特征,能够用于判断差异基因在不同情况下的表达模式,将表达模式相同或相近的基因聚集,这些同类基因可能具有相似的功能,共同参与同一代谢过程或存在于同一细胞通路中。
[0003]基因聚类可将表达模式相近的基因聚在一起,以发现未知基因功能以及基因之间的调控关系。现有技术中有基于划分的聚类算法、基于层次的聚类算法、基于密度的聚类算法以及基于图的聚类算法等经典的聚类算法,这些算法都存在着各自的优缺点。目前,应用较多的基因表达数据的基因聚类算法包括基于划分的k

means、基于层次的凝聚层次和Birch、混合高斯模型(GMM)以及基于图的谱聚类,也有一些研究针对聚类算法的缺点进行改进的用于基因表达数据的聚类算法,但几乎都需指定聚类簇数,因此使用的都是模拟数据集或已知聚类簇数的数据集。k

means是一种经典的基于划分的无监督静态聚类方法,相比凝集层次聚类算法更快速更简单,且适用于多种数据集并有不错的聚类效果,但也需要给定聚类簇数,而现实中基因表达数据集基因聚类簇数往往是未知的,这成为了聚类分析的难点。R语言的mclust包专用于确定聚类簇数,内有14种算法用于选取聚类簇数。然而,将R语言的mclust包用于基因表达数据集基因聚类时却常因基因表达数据集的维数高计算量大而不能得到结果。
[0004]综上所述,亟需一种不需要给定聚类簇数且计算量较少的基因表达数据聚类方法。

技术实现思路

[0005]针对现有技术存在的不足,本专利技术提出了一种基于深度自动编码器的基因表达数据聚类方法,该方法包括:
[0006]S1:获取基因表达数据;
[0007]S2:对基因表达数据进行预处理,得到mRNA数据;
[0008]S3:将mRNA数据输入到训练好的深度自动编码器中,得到降维后的mRNA数据;
[0009]S4:采用mclust包确定降维后的mRNA数据的聚类簇数;
[0010]S5:根据聚类簇数,采用k

means聚类算法对降维后的mRNA数据进行聚类,得到聚类结果。
[0011]优选的,对获取的基因表达数据进行预处理包括:从基因表达数据中提取mRNA数据;对mRNA数据进行基因ID转换、缺失值处理和删除重复基因,得到得到初步处理好的mRNA数据;对初步处理好的mRNA数据进行剔除过低表达量基因处理;使用方差稳定变换对剔除过低表达量基因后的数据进行标准化处理,得到预处理好的mRNA数据。
[0012]优选的,对深度自动编码器进行训练包括:深度自动编码器包括编码器和解码器;
[0013]S31:采用编码器对输入mRNA数据进行特征学习,得到降维后的mRNA数据;
[0014]S32:采用解码器对降维后的mRNA数据进行重构,得到重构的mRNA数据;
[0015]S33:根据重构的mRNA数据和原mRNA数据计算损失函数,返回步骤S31,当损失函数最小时,得到训练好的深度自动编码器。
[0016]进一步的,深度自动编码器的编码器处理数据的公式为:
[0017]y=f
θ
(x)=f
k
(f
k
‑1(...f1(x)))=σ
k

k
‑1(...σ1(wx+b)))
[0018]其中,x表示输入向量,y表示降维后的mRNA数据,f
θ
表示编码器,f
i
表示深度网络中第i层的映射函数,σ
k
表示第k层的激活函数,w表示权重矩阵值,b表示偏移矩阵。
[0019]进一步的,深度自动编码器的解码器处理数据的公式为:
[0020]z=g
θ

(y)=g
k
(g
k
‑1(...g1(y)))=σ
k

k
‑1(...σ1(w

y+b

)))
[0021]其中,y表示输入的经过降维的mRNA数据,z表示重构基因向量,g
θ

={g1,g2,...,g
k
}表示解码器,σ
k
表示激活函数,w

表示权重矩阵值,b

表示偏移矩阵。
[0022]进一步的,损失函数为:
[0023]L=

logp(x|z)=

logp(x|z=g
θ

(f
θ
(x)))
[0024]其中,L表示损失函数,x表示输入的原mRNA数据,z表示输入x的一个重构基因向量,f
θ
(x)表示经过降维的mRNA数据,g
θ

表示解码器。
[0025]优选的,采用mclust包确定降维后的mRNA数据的聚类簇数包括:设定初始聚类簇数的范围;在聚类簇数的范围内,mclust包中所有算法均根据不同的聚类簇数计算BIC值;将使得BCI值最大时的聚类簇数作为mRNA数据的聚类簇数。
[0026]进一步的,BIC值的计算公式为:
[0027][0028]其中,M表示mclust包中第M个算法,G表示聚类簇数,x表示输入的经过降维的mRNA数据,表示极大似然估计,n表示基因数目,v表示估计参数个数。
[0029]优选的,采用k

means聚类算法对降维后的mRNA数据进行聚类包括:
[0030]S51:定义初始聚类中心;
[0031]S52:根据聚类中心对mRNA数据进行聚类,得到聚类的mRNA数据;
[0032]S53:根据所有mRNA数据与聚类中心的距离计算目标函数;
[0033]S54:更新聚类中心,返回步骤S52,当目标函数最小时,停止聚类。
[0034]进一步的,目标函数为:
[0035][0036]其中,S
i
表示第i个簇,μ
i
表示簇S
i
的均值向量聚类中心,k表示聚类簇数,x表示mRNA数据。
[0037]本专利技术的有益效果为:本专利技术采用mclust包确定聚类簇数,避免了人为设置聚类簇数的局限性,聚类结果更准确本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于深度自动编码器的基因表达数据聚类方法,其特征在于,包括:S1:获取基因表达数据;S2:对基因表达数据进行预处理,得到mRNA数据;S3:将mRNA数据输入到训练好的深度自动编码器中,得到降维后的mRNA数据;S4:采用mclust包确定降维后的mRNA数据的聚类簇数;S5:根据聚类簇数,采用k

means聚类算法对降维后的mRNA数据进行聚类,得到聚类结果。2.根据权利要求1所述的一种基于深度自动编码器的基因表达数据聚类方法,其特征在于,对获取的基因表达数据进行预处理包括:从基因表达数据中提取mRNA数据;对mRNA数据进行基因ID转换、缺失值处理和删除重复基因,得到得到初步处理好的mRNA数据;对初步处理好的mRNA数据进行剔除过低表达量基因处理;使用方差稳定变换对剔除过低表达量基因后的数据进行标准化处理,得到预处理好的mRNA数据。3.根据权利要求1所述的一种基于深度自动编码器的基因表达数据聚类方法,其特征在于,对深度自动编码器进行训练包括:深度自动编码器包括编码器和解码器;S31:采用编码器对输入mRNA数据进行特征学习,得到降维后的mRNA数据;S32:采用解码器对降维后的mRNA数据进行重构,得到重构的mRNA数据;S33:根据重构的mRNA数据和原mRNA数据计算损失函数,返回步骤S31,当损失函数最小时,得到训练好的深度自动编码器。4.根据权利要求3所述的一种基于深度自动编码器的基因表达数据聚类方法,其特征在于,深度自动编码器的编码器处理数据的公式为:y=f
θ
(x)=f
k
(f
k
‑1(...f1(x)))=σ
k

k
‑1(...σ1(wx+b)))其中,x表示输入向量,y表示降维后的mRNA数据,f
θ
表示编码器,f
i
表示深度网络中第i层的映射函数,σ
k
表示第k层的激活函数,w表示权重矩阵值,b表示偏移矩阵。5.根据权利要求3所述的一种基于深度自动编码器的基因表达数据聚类方法,其特征在于,深度自动编码器的解码器处理数据的公式为:z=g
θ

(y)=g
k
(g
k
‑1(...g1(y)))=σ
k

k
‑...

【专利技术属性】
技术研发人员:何瑶舒坤贤
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1