Rethinking batch effect removing methods—CCA
PS. 最近和组里的同学一起发现去 batch effect 的一些方法都可以由一个比较统一的框架来理解。(包括 CCA, MNN,LIGER),就想着先用中文梳理一遍顺便也是和大家分享一下。个人认为这三者之间的关系并不是非常显然hhh。
原文链接:
https://zhuanlan.zhihu.com/p/352695812?utm_source=wechat_session&utm_medium=social&s_r=0
MNN: Haghverdi L, Lun A T L, Morgan M D, et al. Batch effects in single-cell RNA-sequencing data are corrected by matching mutual nearest neighbors[J]. Nature biotechnology, 2018, 36(5): 421-427.
CCA: Stuart T, Butler A, Hoffman P, et al. Comprehensive integration of single-cell data[J]. Cell, 2019, 177(7): 1888-1902. e21.
LIGER: Welch J D, Kozareva V, Ferreira A, et al. Single-cell multi-omic integration compares and contrasts features of brain cell identity[J]. Cell, 2019, 177(7): 1873-1887. e17.
背景介绍
PCA回忆
其中n表示 sample 数量,m表示 feature 数量。
使得
尽可能的接近。也就是尽可能保留样本与样本之间的余弦距离也就是(向量的内积也可以视作是一种 similarity 的衡量)从这个角度可以发现其实和 MDS 是比较像的。
做 SVD 分解,可以得到
,此时
即为使得
最小的解,此时可以看到我们可以使用
作为 X 在低维空间中的一个表示(选取前 k 大对应的部分 U)
,然后得到投影矩阵为 V,随后新的坐标即为
。和之前的思路得到的结果是一致的。(其实也就是Dual PCA)
Not CCA, it's paired PCA or MDS
, 其中 n,k 表示 sample 数量, m 表示 feature 数量。
使得
的差别要尽可能小,也就是在低维空间中保留两个数据集样本之间的余弦距离或者点积相似度。
做 SVD 分解得到
,此时选取
可以得到是尽可能保留了 similarity 的结果。(选取前 k 大的特征值)
总结
和正宗 CCA 的差别
得到的是对 Gene 的投影,在这个投影空间上 两个数据集投影出来的 Gene 是correlation得到最大的保留。
Result
总结
, 但是 paired PCA 是只尽可能保留两个数据集之间的
。
的时候其实自身数据集之间的 similarity 是占据了主导,但是如果只考虑两个数据集之间的 similarity,自然相似的就会得到更接近的表示,因此可以得到这样的结果。