ixxmu / mp_duty

抓取网络文章到github issues保存
https://archives.duty-machine.now.sh/
102 stars 29 forks source link

Rethinking batch effect removing methods—各种NMF #1165

Closed ixxmu closed 3 years ago

ixxmu commented 3 years ago

https://mp.weixin.qq.com/s/FlYs9b2RIbK9T8fni2S26Q

github-actions[bot] commented 3 years ago

Rethinking batch effect removing methods—各种NMF by 单细胞天地


分享是一种态度

原文连接:https://zhuanlan.zhihu.com/p/356713157

本来这篇文章是想讲 cFIT 的,但是在群里分享,经张世华老师指点,告诉我几篇非常相关的文章,其实 LIGER 的 idea 是源自 Integrative non-negative matrix factorization (iNMF), 然后更早就是张老师做的 joint non-negative matrix factorization (jNMF),之后的后续是 Common and Specific patterns via Matrix Factorization (CSMF)。感觉都是很好的文章,于是就一并在这一篇中整理归纳了。才疏学浅,写的混乱的地方评论区大家随意评论~

  • cFIT: Peng M, Li Y, Wamsley B, et al. Integration and transfer learning of single-cell transcriptomes via cFIT[J]. Proceedings of the National Academy of Sciences, 2021, 118(10).

  • JNMF: Zhang S, Li Q, Liu J, et al. A novel computational framework for simultaneous integration of multiple types of genomic data to identify microRNA-gene regulatory modules[J]. Bioinformatics, 2011, 27(13): i401-i409.

  • iNMF: Yang Z, Michailidis G. A non-negative matrix factorization method for detecting modules in heterogeneous omics multi-modal data[J]. Bioinformatics, 2016, 32(1): 1-8.

  • JSCM: Zhang L, Zhang S. Learning common and specific patterns from data of multiple interrelated biological scenarios with matrix factorization[J]. Nucleic acids research, 2019, 47(13): 6606-6617.

回顾前文

首先我们回顾一下这个系列的几篇文章,以及这几篇文章到底说了什么事情。
Rethinking batch effect removing methods—CCA
Rethinking batch effect removing methods—MNN
Rethinking batch effect removing methods—LIGER

  • 问:rethinking batch effect removing methods 到底是 rethinking 了什么呢

  • 答:反思串联了这几个整除 batch effect 的方法的核心 idea 是什么。

  1. 从 CCA 不是 CCA,其实是保留了跨 batch 样本之间的余弦距离开始讲起

  2. 如果这个降维是保留了样本之间的余弦距离的话那么其实和直接使用源数据的跨 batch 距离来找到 MNN 是基本一致的,除了使用了 SVD 取前 K 大的特征值来 denoise 。

  3. MNN 的附录中给出了为什么能够使用跨 batch 的距离来找到生物学上的对应的一个模型解释。$X=X_{Bio} + X_{Batch} = B\beta+W_{X} \alpha $,在这个模型的基础上做一些假设就可以推导出生物距离最近的即为远数据中最近。

  4. 而通过这个模型,我们可以发现选取不同的假设,可以得到不同文章的方法。包括 CFIT, LIGER,JNMF, iNMF, JSCM。或者换句话说这些方法背后认为的生物模型就是这个。

下面先介绍 cFIT, JNMF, INMF, JSCM 这几种方法,并在最后回归到这个模型上去。

Model

在之前中我们认为两个 batch 的数据可以写成如下形式,表达谱可分为 biological 信息和 technical 信息的加和。(写成 factor 是为了显示 Bio, tech 空间本身的intrinsic dimension 其实是低维的) 引用一下张老师 JCSM 的图。

LIGER

而我们之前知道 LIGER 的模型是
目标函数是

iNMF

我们来看 iNMF 中的目标函数为
其实 LIGER 就是从 iNMF 中来的,一模一样的hhh。但是值得说明的是, iNMF 原文目的是为了多组学的数据,也就是同一个 sample 测了多种组学,但是 LIGER 将整合多组学的方法顺延到了整合不同 batch 上(当然其实也非常明显,不同组学的区别就是 technology 不同, single cell中的 batch effect 当然也可以看做是这个)

JNMF

而 iNMF 其实是建立在张老师 2009年这篇 JNMF 的基础上的一个延伸。
我们来看两者的目标函数就可以非常清楚的看出这个延伸在哪。
相比之下 JNMF 只考虑两个数据集之间共享的部分信息,对于各自特有的没有考虑,而 iNMG 考虑了这部分异质性的信息,但在优化的时候又对其做了约束,希望这个异质性的信息尽可能的小,也就是共享的信息尽可能大。(共享的信息其实是说在这个 W 张成的 common space 能尽可能的重构原来的表达谱)。

CSMF

Common and Specific patterns via Matrix Factorization ,顾名思义就同时考虑了共享的和异质性两部分。但是和 iNMF 最大的区别是,iNMF 假设了在 bio space(W张成),以及 tech space(V 张成的空间)坐标是相同的,或者两者是共享一套 factor loading 的。CSMF 去掉了这个限制。但是同时也去掉了对于 specific 部分的惩罚。话不多说直接看目标函数!
可以看到区别就是
也就是上文中说到的 iNMF 假设了在 bio space (W 张成的空间),以及 tech space( V 张成的空间)坐标是相同的,或者两者是共享一套 factor loading 的。而 CSMF 去掉了这个限制。且同时在目标函数中也去掉了对于 specific 部分的惩罚。(这个我感觉不是很合理其实,但是不知道是不是处于优化的考虑)。

cFIT

cFIT 的核心如下图
可以看到关键就是在于 cFIT 认为
这是什么意思呢,其实就是认为最后的  都是由  这个代表生物真实表达量通过一个线性变化得到的。其中  代表线性变换的 scale,  表示一个 offset。一句话总结, cFIT 认为batch effect 的影响是一个 gene specific 的 线性变换。 为 noise 乍一看 cFIT 和之前所述的分解为两部分的 model 并没有什么关系。但是只要稍作变换就可以看出其实还是原始模型的变种。
也就是说认为 batch effect 带来的表达谱  是线性于  的。

Summary

最后偷个懒,把之前写过的复制过来总结一遍。
从上面几个式子可以看出来最关键的部分就是怎么处理这个 。但是这个模型下,MNN 和所谓的 CCA 其实是没那么显式可以纳入的,最近还要好好想想。直觉上是把非负的条件变成正交就行,但具体形式还没搞出来。


往期回顾

Seurat4.0系列教程20:单细胞对象的格式转换

cellranger更新到6.0啦

儿童克罗恩病回肠转录组学揭示初治患者中IL-17与NOD信号转导表达特征

scCancer包:自动分析肿瘤单细胞转录组利器






如果你对单细胞转录组研究感兴趣,但又不知道如何入门,也许你可以关注一下下面的课程



看完记得顺手点个“在看”哦!


生物 | 单细胞 | 转录组丨资料
每天都精彩

长按扫码可关注