基于深度学习的生物信息学聚类方法
这篇文档围绕基于深度学习的生物信息学聚类方法展开,主要内容如下: ### 基本信息与摘要 - 文档标题为“Deep learning-based clustering approaches for bioinformatics”,作者包括Md. Rezaul Karim等多位研究者,发表于《Briefings in Bioinformatics》2021年第22卷第1期。
- 摘要指出,聚类是许多数据驱动的生物信息学研究的核心,而基于深度学习(DL)的表示和特征学习在聚类中的应用尚未得到广泛综述和应用。由于聚类质量不仅取决于数据点的分布,还取决于学习到的表示,深度神经网络能将高维数据空间映射到低维特征空间,从而改善聚类结果。本文综述了基于表示学习的最先进DL聚类方法,探索了其训练过程,指出了不同的聚类质量指标,并在生物成像、癌症基因组学和生物医学文本挖掘三个生物信息学用例上评估了多种DL方法。
-
引言
- 聚类是一种基本的无监督学习任务,在多个领域有应用,在生物信息学中,聚类有助于分析高维、大规模的生物数据。
- 基于生物实体的聚类取决于输入数据的多种因素,但目前聚类在生物信息学中的应用仍有局限,许多领域如生物成像、人类遗传学等尚未充分探索。
- 聚类分析本身并非特定算法,有多种技术,不同问题需要不同的相似性度量和分离技术,找到适合特定生物信息学问题的最优聚类算法具有挑战性。传统的机器学习聚类方法在处理高维数据集时存在准确性和效率问题,而深度学习结合表示学习能更好地处理此类数据。
-
用于聚类的深度学习方法
- 分类:DL聚类方法可分为两类,一是利用DNN架构学习表示,再使用机器学习聚类算法的管道方法;二是端到端聚类的单模型方法。
- 工作原理:管道方法通常分两个阶段训练,第一阶段通过DNN架构进行参数初始化和表示学习,提取潜在特征;第二阶段通过计算辅助目标分布和最小化聚类损失来优化参数,迭代优化聚类目标。
- 表示学习与DNN:良好的聚类准确性得益于多层网络堆叠,自编码器(AE)是常用架构,其编码器将输入映射为嵌入,解码器重构输入以减少重构损失。此外,还有卷积神经网络(CNN)、卷积自编码器(CAE)、变分自编码器(VAE)、长短期记忆自编码器(LSTM-AE)、对抗自编码器(AAE)、去噪自编码器(DAE)和堆叠自编码器(SAE)等用于表示学习的架构,各有特点和适用场景。
- 网络更新与训练:训练DL聚类算法因架构、损失函数和训练方法而异,涉及非聚类损失和聚类损失的优化,通过迭代步骤更新映射和聚类中心,直至收敛。
- 聚类评估指标:包括确定最佳聚类数的方法(如Elbow法、generalizability G、归一化互信息NMI),以及评估聚类质量的指标(如兰德指数RI、调整兰德指数ARI、无监督聚类准确率ACC、同质性和完整性等)。
-
评估与比较分析
- 实验设置:所有程序用Python编写,在特定配置的机器上运行,使用Keras和scikit-learn等工具,基于最佳超参数报告结果,通过多种指标评估网络收敛和聚类性能。
- 具体用例聚类结果: - 在乳腺显微镜图像聚类中,基于CAE的凝聚聚类(AC)算法表现最佳,ARI为0.85、NMI为0.83、ACC为0.84。
- 在生物医学文本聚类中,基于LSTM-AE的OPTICS聚类算法效果最好,ARI为0.93、NMI为0.92、ACC为0.91。
- 在基因表达(GE)聚类中,基于LSTM-AE的AC算法表现最优,ARI为0.89、NMI为0.88、ACC为0.87。
- 讨论与比较:聚类结果受数据类型、表示学习质量和基础聚类算法影响,不同问题需要不同技术,没有通用的最佳方法。
-
结论与展望
- 综述表明DL聚类方法在生物信息学中表现优于传统机器学习聚类算法,但评估受限于标记数据量,神经网络通常需要大量样本才能很好地收敛。
- 提出了未来研究方向,如采用迁移学习、研究去噪堆叠自编码器(DSAE)的影响、使用半监督学习、运用模型集成技术、解决词嵌入相关问题等。同时,指出了DL方法存在的挑战,如数据异质性和不平衡、结果可解释性等,并计划扩展研究工作。
-
其他
- 还包括关键要点、利益冲突声明、缩写和首字母缩写词列表以及致谢和参考文献等内容。
摘要
聚类是许多数据驱动的生物信息学研究的核心,也是一种强大的计算方法。特别是,聚类有助于分析序列、表达、文本和图像形式的非结构化和高维数据。此外,聚类还用于在基因组水平上深入了解生物过程,例如,基因表达聚类能让人洞察数据中固有的自然结构、理解基因功能、细胞过程、细胞亚型以及基因调控机制。
随后,包括层次聚类、基于质心的聚类、基于分布的聚类、基于密度的聚类和自组织映射在内的聚类方法,在经典机器学习环境中得到了长期的研究和应用。相比之下,基于深度学习(DL)的聚类表示和特征学习尚未得到广泛的综述和应用。由于聚类质量不仅取决于数据点的分布,还取决于学习到的表示,深度神经网络可以有效地将高维数据空间的映射转换为低维特征空间,从而改善聚类结果。在本文中,我们综述了基于表示学习的最先进的深度学习聚类分析方法,希望这对生物信息学研究特别有用。此外,我们还详细探讨了基于深度学习的聚类算法的训练流程,指出不同的聚类质量指标,并在三个生物信息学应用场景(包括生物成像、癌症基因组学和生物医学文本挖掘)中对几种基于深度学习的方法进行评估。我们相信,本综述及评估结果将提供有价值的见解,并为希望应用基于深度学习的无监督方法解决新兴生物信息学研究问题的研究人员提供一个起点。
介绍
聚类是一项基础的无监督学习任务,广泛应用于探索性数据挖掘、图像分析、信息检索、数据压缩、模式识别、文本聚类和生物信息学等领域[1]。聚类的主要目标是根据数据空间的相似性、密度、间隔或特定统计分布度量,将数据分组形成簇[1-3]。例如,对基因表达(GEs)进行聚类可以揭示功能相关的基因群,其中距离较近的基因具有相同的表达模式,可能具有相似性[4]。此类分析能确定在特定条件下哪些基因被“开启”或“关闭”[4-6]。另一个例子是通过从未标记数据集中学习隐藏模式,对基因或生物医学图像进行聚类[7]。此外,除非将数据组织成簇,否则要对非结构化的高维、大规模生物数据进行整体可视化、解释和分析会十分困难。
基于基因、疾病、蛋白质、通路和小分子等生物实体的聚类,取决于输入数据[8]或样本(如患者或不同细胞)的数量、质量和类型。尽管大量的生物数据正从众多普及的医疗设备中产生,但聚类的应用仍局限于基因组医学和微阵列分析,主要集中在数据量有限的基因聚类上[9, 10]。因此,与微阵列研究相比,涵盖生物成像、人类遗传学、动植物生态学、生物医学文本和基因组数据的聚类分析尚未得到充分探索,仍处于起步阶段[11]。例如,RNA测序已成为基因表达水平测量的实际标准技术,且相较于微阵列具有多项优势。此外,单细胞实验已成为生物信息学的新兴研究课题,而聚类是其中分析的关键环节[12]。
然而,由于聚类分析本身并非某一种特定的算法,因此可以应用多种技术,这些技术在对“什么构成聚类”以及“如何高效找到聚类”的理解上存在差异。在实际应用中,不同的问题需要不同的相似性度量和分离技术[13]。此外,为特定的生物信息学问题寻找最优聚类算法具有挑战性,这一问题可表述为多目标优化问题[14]。相应地,数十年来,文献中提出了多种聚类分析方法,如层次聚类(HC)[15]、基于质心的聚类(CC)、基于分布的聚类(DC)[16]、基于密度的聚类(DC1)和自组织映射(SOMs)[17]等[1, 7, 13, 18]。其他方法还包括概率聚类、基于网格的聚类、谱聚类和非负矩阵分解等[3]。层次聚类算法(如凝聚聚类[19])涉及创建具有预定顺序(自顶向下或自底向上)的聚类,在更高层级上,较低层级的聚类会合并为更大的聚类,从而形成聚类层次结构。在凝聚聚类(AC)中,最初每个数据点都被视为一个单独的聚类,随后相似的聚类会与其他聚类合并,直至在每次迭代中形成一个或K个聚类。层次聚类算法的优势在于其简单性和视觉吸引力,并且根据所需的粒度,可以在所需层级上“切割”层次结构以获得合适的聚类。然而,聚类质量(CQ)对噪声敏感[1],这会使层次结构的解释变得复杂。此外,数据点的聚类是基于确定性属性的局部决策,无法重新审视聚类结果[1, 7]。
相比之下,基于质心的聚类(CC)算法(例如K均值[16]、围绕中心点的划分(K-中心点法)[20])相较于自组织映射(SOM)和层次聚类(HC)具有若干优势[21],例如,它们通常在点密度精度、拓扑保持性和计算需求方面表现更优。然而,基于质心的聚类算法无法发现非凸聚类[18]。基于分布的聚类(DC)算法(例如高斯混合模型(GMM)[22])以分布模型为基础,其中聚类被定义为属于已发现分布的数据点。总体而言,基于分布的聚类方法会为聚类生成复杂模型,因此能够捕捉生物属性之间的相关性和依赖关系。但缺点是,如果高斯分布基于对数据的强烈假设,就无法构建精确定义的模型。此外,除非对模型复杂度加以限制,否则基于分布的聚类算法本质上存在过拟合问题。在基于密度的聚类(DC1)算法(例如DBSCAN及其推广算法OPTICS)中,聚类被定义为与数据集其余部分相比密度更高的区域;较稀疏区域中的对象通常被视为噪声或边界点。不过,DBSCAN和OPTICS的关键缺陷在于,两者都需要通过密度下降来检测聚类边界,而基于期望最大化(EM)的高斯混合模型(GMM)则能精确克服这一局限。表1总结了不同的基于机器学习的聚类算法及其优势和潜在局限性。
尽管如此,这些算法在中等规模和低维度数据上表现尚可,但在具有大量样本的高维数据集上,其准确性和效率会大幅下降,这主要是由于维度灾难所致。此外,基于机器学习的方法在大规模数据上通常面临计算复杂度高的问题[2]。为减轻计算复杂度,表示学习(RL)被广泛用于聚类,将输入数据映射到一个特征空间,在该空间中,结合具体问题背景能更轻松地实现数据分离[23]。另一方面,人们会采用降维(DR)方法,如线性变换方法(例如主成分分析(PCA)[24])、非线性变换方法(例如核方法[25])和谱方法[26]等。研究发现,使用PCA进行聚类而非直接使用原始变量,不仅未必能改善聚类效果,反而常常会降低聚类质量(CQ)[27]。原因在于PCA本质上局限于线性嵌入,且往往会丢失重要特征[3]。因此,为获得更好的聚类结果,高维数据集需要采用非线性和谱降维方法,且不能丢失重要特征。
另一方面,在生物信息学研究中,目前仅有深度学习(DL)的基础内容被积极应用[28],尤其在有监督学习任务中,基于降维(DR)的表示学习(RL)和聚类被分开处理,并按顺序应用于数据。然而,假设存在一个例子,比如从大量未标记的图像中,如何根据其固有的潜在语义将它们划分为若干组?使用基于机器学习(ML)的方法时,人们会(i)首先根据领域特定知识提取特征向量,(ii)然后使用聚类算法对提取的特征进行分组[29]。相比之下,基于深度学习的方法在图像的表示学习和特征提取方面更有效,通过从当前的软聚类分配中导出辅助目标分布,可用于优化聚类,并迭代改进聚类效果[2, 30]。特别是借助深度神经网络(DNN)架构(如自编码器(AEs)),能够从输入数据中嵌入更复杂、更高层次的特征,并捕捉上下文信息[31]。最终,通过学习非线性映射,可将输入数据转换为更适合聚类的表示,即将数据映射到低维特征空间[2, 23]。因此,可使用基础聚类算法进行聚类分配,同时迭代优化聚类目标[23]。
以往的综述[2, 23]主要从网络架构的角度关注基于深度学习的通用聚类分析方法。在本文中,我们对最先进的基于深度学习的聚类方法进行了全面综述,总结了其优势并指出了潜在局限性。此外,我们在三个生物信息学应用场景(生物成像、癌症基因组学和生物医学文本聚类)中评估了聚类性能,并进行了比较分析。据我们所知,我们是首个对生物信息学研究中基于无监督深度学习的聚类分析技术进行综述的团队。本文其余部分结构如下:“用于聚类的深度学习”部分探讨了用于聚类分析的神经网络架构、工作原理以及制定聚类质量评估指标;“评估与比较分析”部分对所研究的方法进行了评估和比较分析;“结论与展望”部分总结了所报道的研究,并在得出结论前探讨了未来的研究方向。
DL for clustering
如表2所总结,文献中已提出多种基于深度学习的聚类分析方法。这些方法可分为两大类:
(i)流水线方法(使用DNN架构学习表示,如多层感知器(MLPs)、卷积神经网络(CNNs)、深度信念网络(DBNs)、生成对抗网络(GANs)[38]、变分自编码器(VAEs)、去噪自编码器(DAEs)和对抗自编码器(AAEs)[39]等,再使用基于机器学习的聚类算法进行聚类,详情参见表1);
(ii)端到端聚类的单模型方法[2]。
然而,流水线方法在文献中已有广泛讨论。例如,这类方法包括深度嵌入聚类(DEC)[40]、深度聚类网络(DCN)[41]、基于成对约束的卷积神经网络聚类(NNCPC)[42]、深度嵌入网络(DEN)[43]、图像深度表示的联合无监督学习(JULE)[41]、结合非参数聚类的深度学习(NMMC)[44]、基于卷积神经网络的聚类(CCNN)[45]以及基于卷积自编码器(CAE)嵌入的深度聚类(DEPICT)[46]等。
更近期的方法包括卷积嵌入网络(CENs)[30]、深度卷积嵌入聚类(DCEN)[29]、判别增强聚类(DBC)[47]、基于CNN的联合聚类与带特征漂移补偿的表示学习(UMMC)[51]、深度连续聚类(DCC)[49]、用于聚类的潜在表示学习(IMSAT)[50]以及深度自适应聚类(DAC)[48]。我们列出了所综述的方法,包括原始论文的链接及其实现,这些可在https://github.com/rezacsedu/Deep-learningfor-clustering-in-bioinformatics找到。
基于深度学习的聚类方法的工作原理
让我们考虑将n个样本(X = {x^{(1)}, x^{(2)}, ..., x^{(n)}})聚类到k个类别中的问题,每个类别由一个质心(\mu_{j})((j = 1, ..., K))表示,其中(X \in \mathbb{R}^{D})。在流水线方法中,遵循的工作原理大致相似,即基于深度学习的聚类算法通常分两个阶段进行训练:
第一阶段:利用深度神经网络(DNN)架构进行参数初始化和表示学习(RL),并使用非聚类损失(例如标准的重建损失(RL1))进行训练。然后,从一个或多个网络层中提取被称为潜在特征(LFs)的、利于聚类的数据表示(具体取决于网络架构类型)。
第二阶段:通过交替进行辅助目标分布的计算和聚类损失(例如Kullback-Leibler散度(KLD)[54]和聚类分配硬化损失(CAHL))的最小化来优化参数。在此过程中,先确定聚类分配,然后利用反向传播更新质心,同时应用基于机器学习的聚类算法来迭代优化聚类目标。特别是,凝聚聚类(AC)[41]和K均值(K-means)[42, 48, 51]算法在文献[2]中被广泛使用。
根据这一原理,不直接在原始输入空间(###)中对样本进行聚类,而是通过非线性映射(f_{\theta}: X \to Z)对其进行转换,其中(\theta)是可学习参数,(Z \in \mathbb{R}^{K})是学习到的或嵌入的特征空间,且(K \ll D)。为了对(f_{a})进行参数化,由于自编码器(AEs)具有函数逼近特性和特征学习能力,因此会使用诸如自编码器之类的深度神经网络架构[40](参见2.2节)。然而,为了获得更好的聚类结果,在第二阶段通常会对网络进行训练和更新,以联合优化聚类损失和非聚类损失。简而言之,现有方法大致包含以下三个步骤:
• 通过神经网络架构将高维输入空间嵌入到低维特征空间中进行表示学习(RL),以生成利于聚类的特征;
• 结合聚类损失和非聚类损失;
• 更新深度神经网络(DNN)和聚类算法的参数,以优化组合损失
RL with DNNs
良好的聚类精度可归因于多个网络层堆叠在一起这一事实,其中权重在后续层中被重复用于表示学习(RL)[23]。由于大多数最先进的方法都使用了自编码器(AEs),因此我们不再详述基于多层感知器(MLP)、卷积神经网络(CNN)和深度信念网络(DBN)的表示学习。常规的自编码器由称为编码器和解码器的多层密集网络组成,其结构上属于多层感知器。首先,编码器以压缩格式学习输入(x)的表示,将数据映射并转换为嵌入向量(z)。然后,解码器尝试从(z)重建(x),通过减小(x)与其对应的重建结果(x' \in \mathbb{R}^{D})之间的重建损失(RL1),确保在编码阶段不会丢失有用信息[54]。通常,RL1是输入(###)与网络输出(f(x_{i}))之间的距离度量((d_{AE})): [L_{AE}=d_{AE}\left(x_{i}, f\left(x_{i}\right)\right)=\sum_{i}\left| x_{i}-f\left(x_{i}\right)\right| ^{2} \quad (1)]