原文链接:https://zhuanlan.zhihu.com/p/356161311
Introduction
这是本系列第三篇文章,前两篇文章综合来说就是讲了 CCA 其实就是 MNN 加上一个 SVD denoise,其本质是相同的,原理和 CCA 本身没有什么关系。
- Rethinking batch effect removing methods—CCA
- Rethinking batch effect removing methods—MNN
这篇文章希望连接 MNN 和 LIGER 说明,他们都只是对一个模型的不同假设而产生的两种方法,后面还会写第四篇文章,说明 cFIT 也是这个模型的一个特例。
LIGER 是 19年发在 Cell 上的,算是连着自己的 resource 发了自己的计算方法。
核心的思想是非负矩阵分解,希望两个 batch 的数据在分解中满足一定性质,共享尽可能多的信息,并且认为这部分共享的信息就是生物信息。
上文说到,两个 batch 的数据可以写成如下形式,表达谱可分为 biological 信息和 technical 信息的加和。
MNN 假设
回忆前文中提到的关于 MNN 在这个框架下的假设
正交,也就是 Biology variance 和 batch effect 所代表的的方向相互正交。
, 即 不同 Cell 之间的生物差异远大于 Batch 之间的差异时。
根据这两个假设,可以从上述的
中推导出 MNN 的目标函数。(不包括校正那一步)
LIGER
接下来我们看 LIGER 的关键部分,也就是两个非负矩阵分解,但是在分解过程中不同 batch 之间共享一组 W (可以看成代表生物 module ),另外还有一部分代表 data specific 的technical module 来 model batch effect。
写成数学表达式也就是
首先在这篇文章中 gene cell 的维度和之前说的是反过来的,如果顺过来也就是
对比上文 MNN 中的式子
可以发现,其实 LIGER 中也就是
,然后这些矩阵均非负。
此时再观察 LIGER 的优化目标
可以看到还有一项是关于
的惩罚,而
其实是
,这表示希望学到的
尽可能小,反之即希望学到的
尽可能大,也就是保留尽量多的共享生物信息。
所以总结一下 LIGER 在之前模型上的假设
,说明给定 biological module 和technical module 之后,这个 loading 应该是大家共享的,也即说明两者有一定的关系,可以由同一个 factor loading 控制。
尽可能小,也就是说明希望这个 embedding 能够捕捉到的生物信息尽可能多。
均非负,这部分其实是体现 module 的味道,非负意味着完全由 加法得到,也就是每个表达谱是由这些 module 的 activity 叠加得到的。
Summary
这些模型其实都是下述模型在不同假设情况下的特列