4、Dimensionality reduction

原文链接Chapter 9 Dimensionality reduction

1、背景知识

(1)维度

  • 假设一个测定10个细胞的指定两个基因的表达量,那么可以通过二维的点图(基因1表达量为x轴,基因2表达量为y轴)描述每个细胞的表达情况。
  • 如果是指定三个基因,则为三维立体空间坐标
  • 如果有成百上千个基因,那么每个细胞都有一个高维度坐标,描述细胞表达的特性;同时数据复杂度大大增加。

(2)降维

  • 若干不同基因的表达情况关联度很高,可以用一个维度代替多个维度;
  • 可有效降低高维度数据的复杂性,便于后续的下游分析,以及绘图可视化。

2、PCA主成分分析

  • In PCA, the first axis (or “principal component”, PC) is chosen such that it captures the greatest variance across cells.
  • The next PC is chosen such that it is orthogonal to the first and captures the greatest remaining amount of variation, and so on.
  • the earlier PCs in our downstream analyses, which concentrates the biological signal to simultaneously reduce computational work and remove noise.
load("fluidigm_lgnm_hvg.Rdata")
fluidigm.hvg #上一步已经取好高变基因子集的sce
dim(fluidigm.hvg) #1000个差异基因
library(scater)

2.1 runPCA()

fluidigm.hvg <- runPCA(fluidigm.hvg)
reducedDimNames(fluidigm.hvg)
# [1] "PCA"
dim(reducedDim(fluidigm.hvg, "PCA"))
# 127  50  针对127个细胞的50个主成分的描述

如上

  • By default, runPCA() will compute the first 50 PCs ;
  • result is stored in the reducedDims() of the output SingleCellExperiment object

2.2 后续pcs选择

  • 在一般PCA分析50个主成分后,我们要选择最优的ealier pc进行下游分析;
  • 具体数量多少的选择:Using more PCs will avoid discarding biological signal in later PCs, at the cost of retaining more noise.
  • 一般来说,“reasonable” but arbitrary value, typically ranging from 10 to 50.
  • 可通过不同的方法选择具体何时的pcs,常用的是 elbow point(拐肘点)
percent.var <- attr(reducedDim(fluidigm.hvg), "percentVar")
chosen.elbow <- PCAtools::findElbowPoint(percent.var)
chosen.elbow 
# 5    建议仅选取前五个主成分即可(可能与细胞数量较少有关)
plot(percent.var, xlab="PC", ylab="Variance explained (%)")
abline(v=chosen.elbow, col="red")
  • 如下图所示,there should be a sharp drop in the percentage of variance explained when we move past the last “biological” PC.


    2.2

此方法的不足之处在于 in order to be retained, later PCs must explain a amount of variance that is comparable to that explained by the first few PCs. Strong biological variation in the early PCs will shift the elbow to the left that tends to retain fewer PCs compared to other methods.
此外原文还介绍了基于方差分解thresholds、亚群结构的pcs判断以及基于非负矩阵分解的降维方法,具体可参看原文。

3、二维图可视化

  • 尽管50个维度的数据复杂度已经相对较小,但对于人脑很难构想出来。因此基于二维的坐标轴可视化是一种常用的展现方法

3.1 基于PCA

一般默认使用每个细胞top2的主成分值作为细胞坐标,达到可视化目的

plotReducedDim(fluidigm.hvg, dimred="PCA", colour_by="Cluster2")
3.1

使用的sce数据对象的colData对象有分组信息,刚好可以用来验证。其实包括下面的tSNE,Umap二维可视化结果一般都可与后期cluster、annotation结果验证,对比是否有异常差异。

3.2 tSNE

  • t-stochastic neighbor embedding (t-SNE) method
  • find a low-dimensional representation of the data that preserves the distances between each point and its neighbors in the high-dimensional space.
  • 但是不能作为距离较远的两个类群(non-neighboring clusters)的关系参考
fluidigm.hvg <- runTSNE(fluidigm.hvg, dimred="PCA")
plotReducedDim(fluidigm.hvg, dimred="TSNE", colour_by="Cluster2")
3.2

runTSNE()函数的perplexity参数 determines the granularity of the visualization,可调整图形每个类群的紧密程度

3.3 UMAP

  • The uniform manifold approximation and projection (UMAP) method
  • 思路同tSNE,但具体方法不同。
  • 相对于tSNE的最大优点就是快,尤其是在大数据处理过程中。
fluidigm.hvg <- runUMAP(fluidigm.hvg, dimred="PCA")
plotReducedDim(sce.zeisel, dimred="UMAP", colour_by="Cluster2")
3.3
reducedDimNames(fluidigm.hvg)
#[1] "PCA"  "TSNE" "UMAP"
save(fluidigm.hvg, file = "fluidigm.pca")
  • 如上主要进行了PCA降维处理,以及TSNE、UMAP的二维可视化,用于后续的分析处理。

以上是第九章Dimensionality reduction部分的简单流程笔记。原文还介绍了基于spike in 与泊松分布的两种挑选高变基因的高级方法,详见Chapter 9 Dimensionality reduction
本系列笔记基于OSCA全流程的大致流程梳理,详细原理可参考原文。如有错误,恳请指正!
此外还有刘小泽老师整理的全文翻译笔记,详见目录

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,542评论 6 504
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,822评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,912评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,449评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,500评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,370评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,193评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,074评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,505评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,722评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,841评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,569评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,168评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,783评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,918评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,962评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,781评论 2 354