通俗理解:MNN互近邻搜索算法校正scRNA-seq批次效应

MNN来源:Batch effects in single-cell RNA sequencing data are corrected by matching mutual nearest neighbors


我本人也是刚接触scRNA-seq,所以写的东西可能比较小白,还请大家多指导。最近阅读的一篇nb上的文章,写一点东西,一方面给自己,一方面大家一起交流,闷着肯定不行。

MNN,英文全称mutual nearest neighbor,互近邻,互就是互相的,近邻就是最近的邻居。这个MNN用在这里还是非常的贴切。MNN主要思想就是找到不同批次中相同的细胞类型,然后计算同种细胞类型的基因表达的差异,这部分东西就是当作批次效应了。文中提到的表达谱信息就是表达矩阵了,通常行为基因,列为细胞。

MNN主要实现步骤:


假如我们有两个批次:批次1(m个细胞)和批次2(n个细胞)的scRNA-seq的基因表达数据

(1)将不同批次的基因表达谱信息按细胞进行余弦标准化(cosine normalization);

(2)依次计算批次1中每个细胞B1i到批次2中所有细胞的欧式距离,其实际等同于表达数据标准化前的余弦距离。这样我们就得到m个向量存放欧式距离,每个向量里存放了n个欧式距离,再保存每个向量中ki个具有最小欧式距离的细胞对(nearest neighbor,NN)。比如批次1中细胞1,计算出n个欧式距离,里面有10个细胞具有最小欧式距离,我们就保存这10个细胞对(NNs)。再依次保存剩下的m-1个中具有最小欧式距离的细胞对(k1_1, k1_2, k1_3, k1_i..., k1_m)。k1_i表示每个欧式距离向量中具有最小的欧式距离的细胞对的数量。

(3)接下来,反过来对批次2,执行相同的步骤(2)。计算批次2中每个细胞到批次1中所有细胞的欧式距离,得到n个向量,每个向量里存放了m个欧式距离。然后,再保存每个欧式距离向量中具有最小欧式距离的细胞对(k2_1, k2_2, k2_3, k2_i, ..., k2_n)。k2_i表示具有最小的欧式距离的细胞对的数量。

(4)这样,我们比较这些配对的细胞,如果发现批次1和批次2中细胞互相配对的时候,那么,嘿嘿嘿,我们就保存这种细胞对,也称作互为邻接对(MNNs)。这种MNN的细胞,在本文中就被认为是同一类型的细胞了。

(5)利用MNN细胞对的表达信息,计算两两细胞间的基因表达差值,得到表达差异向量,也称为配对特异的批次效应校正向量(pair-specific batch convection vector)。同一种细胞,基因的表达模式应该相同或接近,那么这种表达差异向量就源于批次效应了。

(6)计算出来的所有的pair-specific 批次效应校正向量,利用高斯核函数,计算它们的加权平均数作为最后的批次效应校正向量,该向量就是唯一一个,长度为基因的个数。最后将其应用到批次2的所有细胞(不管属不属于MNNs的细胞)中进行批次效应的校正。



最后附上文章的示意图。


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 单细胞测序有着漫长的过去,却只有短暂的历史---谁说的! 说她漫长是因为到如今也有十几年的历史了,说她段短暂是因为...
    周运来就是我阅读 57,425评论 45 124
  • 不知从什么时候开始,我们过起了各种各样的节日,中国的、外国的,没有一个节日是我们不想过的,为什么,因为我们是女生,...
    团子的仙人球阅读 176评论 0 0
  • 残落的影追随月光的美 裙子摆动的纱遮羞缺月 修长的睫毛盖着微眯的眼 殊不知躲下的泪水 早阳的闯入害得窗关上帘 刺透...
    落夜随凝阅读 271评论 2 9