前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Rethinking batch effect removing methods—各种NMF

Rethinking batch effect removing methods—各种NMF

作者头像
生信技能树jimmy
发布2022-01-17 17:36:08
6570
发布2022-01-17 17:36:08
举报
文章被收录于专栏:单细胞天地

原文连接: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 其实是没那么显式可以纳入的,最近还要好好想想。直觉上是把非负的条件变成正交就行,但具体形式还没搞出来。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-08-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 单细胞天地 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 回顾前文
  • Model
  • LIGER
  • iNMF
  • JNMF
  • CSMF
  • cFIT
  • Summary
相关产品与服务
批量计算
批量计算(BatchCompute,Batch)是为有大数据计算业务的企业、科研单位等提供高性价比且易用的计算服务。批量计算 Batch 可以根据用户提供的批处理规模,智能地管理作业和调动其所需的最佳资源。有了 Batch 的帮助,您可以将精力集中在如何分析和处理数据结果上。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档