29 Seurat (中) 降维与聚类:从“基因空间”到UMAP“细胞地图”的绘制
29.1 【导语】万事之源:为何要这样做?
我们必须面对一个核心挑战:经过预处理和质控后,我们的单细胞数据依然是一个“高维怪物”。每一个细胞,都是由数千个高变异基因的表达量所共同定义的,这构成了一个数千维度的、远超人类大脑想象与理解能力的复杂空间。降维分析的本质,就是利用强大的数学算法(如PCA、UMAP),将这个无法被直视的高维空间,进行一次信息保留下的“压缩”或“投影”,使其化为一个我们能够看懂的二维或三维空间。
在这个过程中,算法会尽其所能,保持细胞与细胞之间在原始高维空间中的“亲疏远近”关系。随后,聚类算法便可以在这个已然清晰的降维空间中,像一位城市规划师进行“社区划分”一样,将那些彼此靠近的细胞,自动地识别并归类为不同的细胞群落(Clusters)。这一从高维到低维、从无序到有序的过程,是绘制单细胞图谱、揭示细胞异质性的必由之路。
29.2 【核心实践】从原理到决策
29.2.1 【第一步:线性降维 (PCA)】
主成分分析(Principal Component Analysis, PCA)是我们进行降维的第一步,也是后续所有分析的基础。
ScaleData: 这是一个常被新手忽略、但至关重要的预处理步骤。其作用,是对每一个高变异基因在所有细胞中的表达量进行Z-score标准化。这个决策确保了在后续的PCA分析中,每一个基因都具有同等的“权重”,从而避免了PCA的计算结果被少数几个表达量极高但变异未必最大的基因所主导。
RunPCA: 实验室隐喻:运行PCA,如同你从成百上千个不同的角度,去给一团结构极其复杂的毛线球进行拍照,并试图从中找出那个能够最大程度地展示其三维结构的主视角。PCA所计算出的每一个“主成分”(Principal Component, PC),就是一个独特的“视角”。PC1是包含了最多数据变异信息的第一视角,PC2是信息量次之的第二视角,以此类推。
结果诊断:ElbowPlot(肘部图)是我们用来决策“应该使用多少个PC进行下游分析”的关键工具。这张图展示了每一个PC所解释的方差量。我们的决策,通常是选择在曲线斜率开始急剧下降并趋于平缓的那个“拐点”(即“肘部”)处的主成分数量(例如10到30个)。因为我们有理由相信,这个“肘部”之后的主成分,所包含的很可能只是技术噪音,而非真实的生物学信号。
29.2.2 【第二步:细胞聚类 (Clustering)】
在得到一个更低维、更纯净的PC空间后,我们便可以进行细胞聚类。
FindNeighbors: 这一步的决策是,在我们上一步选定的PC空间中(例如,前20或者30个PCs),为每一个细胞构建一个“社交网络图”,精确地找到它的“邻居”们。
FindClusters: 在这个构建好的“社交网络”之上,我们运行社区发现算法(如Louvain或者Leiden算法),自动地将连接紧密的细胞群落识别出来。
参数决策:resolution(分辨率)是影响聚类结果“颗粒度”的最关键参数。它如同显微镜的放大倍数。一个较低的resolution值(如0.2),会得到数量较少、但颗粒度较粗的大细胞群。而一个较高的值(如1.2),则会将细胞划分为数量更多、更精细的亚群。选择一个合适的分辨率,通常需要你根据已有的生物学先验知识,并结合多次尝试与下游的Marker基因分析来最终决定。
29.2.3 【第三步:非线性降维可视化 (UMAP/t-SNE)】
RunUMAP: 这一步的决策是,以PCA降维后的PC空间作为输入,进行进一步的非线性降维,最终生成我们用于可视化的、美观的二维“细胞地图”。
DimPlot: 这是Seurat中用于展示UMAP或t-SNE降维结果的核心可视化函数。通过group.by这个强大的参数,你可以决策根据不同的细胞属性,例如自动聚类得到的seurat_clusters、样本来源orig.ident,或是细胞周期状态,来为这张“细胞地图”上的每一个细胞赋予不同的颜色。
29.3 【认知升维】常见的思维陷阱与对策
29.3.1 思维陷阱一:直接在UMAP空间上进行聚类
这是一个概念性的根本错误。UMAP算法的主要设计目标是“优化可视化”,而非“精确聚类”。它在降维过程中,为了得到美观的图,可能会扭曲部分细胞间的真实距离。
其对策是,必须牢记Seurat的标准工作流程:聚类的计算(FindNeighbors和FindClusters),是在统计上更稳健的PCA空间中进行的。而UMAP空间,仅仅是用来将这个已经计算好的聚类结果,映射上去并进行可视化展示的画布。
29.3.2 思维陷阱二:误以为更多的PC数量一定更好
不少新手在选择用于下游分析的主成分时,会抱着“多多益善”的心态,觉得既然PCA能提取几百个成分,那用得越多结果越全面。事实上,过多的PC往往会引入噪音,把本来已经足够清晰的信号“稀释”,甚至导致聚类结果出现虚假分裂。
其对策是,必须学会基于诊断工具与数据特征来决策。在曲线明显“拐点”之前的PC往往承载主要生物学信号,之后的PC大多是技术噪音。同时,可以在不同PC数量下进行聚类,对比细胞群的稳定性与marker基因的解释度。通常10–30个PC已经足够覆盖主要变异;盲目扩展到上百个PC,不仅不会带来更多信息,反而增加噪声干扰。
29.4 【总结与拓展】构建你的思维框架
我们必须将单细胞的降维与聚类过程,构建为一次从“无序”到“有序”的、逻辑严谨的“制图”工程。在这个框架中,PCA是在进行初步的“地形勘测”,绘制出一张包含主要结构轮廓的“数据草图”。聚类算法,则是在这张草图之上,进行严谨的“行政区域划分”。而UMAP,则是最后的“艺术加工与渲染”步骤,它将这份专业的地图,以一种最清晰、最美观的方式,最终呈现给读者。
基于此框架,请思考一个能够指导你进行深入分析的启发性问题:在你的UMAP图上,你发现有两个自动聚类出的Cluster(例如,Cluster 3和Cluster 7)紧密地挨在一起,几乎没有明显的分界线。这背后可能暗示着两种截然不同的生物学可能性:第一,它们确实是两个功能上高度相似、难以被算法轻易区分的真实细胞亚型;第二,它们其实是同一个细胞类型,但仅仅是由于你的resolution参数设置得过高,而被算法错误地“过度分割”了。你将设计一个什么样的分析步骤,来科学地、定量地区分这两种可能性?(提示:请思考如何寻找并评估这两个Cluster之间的差异表达基因)。
探索生命科学前沿,提升实战技能!欢迎微信搜索并加入「生信实战圈」,获取最新技术干货、实战案例与行业动态。 点击关注,与同行一起成长!
