zl程序教程

您现在的位置是:首页 >  其它

当前栏目

转录组比对番外篇:aligner 与 mapping 区别

区别 转录 Mapping 番外篇
2023-06-13 09:15:17 时间

导读

考虑到在转录组比对时,有许多软件可以使用,但很少有介绍它们之间的差别。因此,本文主要介绍 STAR, KALLISTO, SALMON 之间的区别。

1. 定义

  • STARaligner
  • Kallisto/salmonmapping

2. aligner vs. mapping

那么alignermapping区别[1]是什么呢?

2.1. aligner

当我们比对一个 read 时,我们不仅要询问它可能在基因组中的位置,还要询问碱基与碱基的确切对应关系。例如,我们想要得到类似这样的信息,“read foo 可能起源于 chr1 位置 123 到 140。前 7 个碱基是 foo 和参考之间的精确匹配,然后是 3 个碱基插入,然后其余碱基匹配 foo 和参考。”

2.2. mapping

当我们 mapping 一个 read 时,我们只是在问,“它是从哪里来的?”不过,我们不一定关心 read 与其来源之间的对齐情况。

直到最近,alignmentmapping 几乎是同义词。像 KallistoSalmon 这样的工具改变了这一点,因为它们可以将 reads 分配给基因/特征/任何东西,而无需查看精确的比对。由于这更快并且我们实际上通常不关心对齐结果,这在某些应用程序中是一个巨大的优势。

3. 区别

3.1. STAR

STAR[2] 是一款aligner。它的工作是找出每个测序读数在基因组中的位置,这就是(主要)它输出的内容 - 读数列表及其在基因组上的坐标(以 BAM 文件的形式)。它非常关心每个碱基正确的位置。

为了进行表达分析,您需要将这些位置转换为基因表达值。有几种方法可以做到这一点,但最简单的就是计算来自基因组中与每个基因重叠的位置的读数的数量(执行此操作的程序示例是 featureCounts)。另一种方法是使用统计模型将读数分配给可能的转录本(其中多个转录本可能在基因组上重叠)。执行此操作的程序示例是 RSEM

3.2. Kallisto&Salmon

KallistoSalmon 都是定量工具 —它们采用包含测序读数的文件并输出基因表达水平。当然,找出这些 reads 在转录组中的来源是这个过程的第一步。在找到后,他们使用统计模型将其转化为转录表达水平,考虑 reads 来自哪个转录本。

看起来 KallistoSalmon 做得更多,所以他们应该花更长的时间,但事实并非如此——事实证明他们要快得多。这一代工具最初是基于,即如果你正在量化基因,你会更关心读数可能来自的转录本集,而不是它在转录本/基因组中的精确位置。他们以不同的方式做到这一点——Kallisto 使用“伪对齐”,而最新版本的 Salmon 使用一种叫做“选择性对齐”的东西,它介于 STARKallisto 之间(据我所知),尽管旧版本称为 quasi-alignment

4. 优缺点

  1. STAR + 单独定量相比,KallistoSalmon 更快且内存占用更少。
  2. 它们提供转录水平的表达信息(其中 STAR + 计数仅提供基因水平,尽管 STAR + RSEM 提供转录)。
  3. 处理读取映射到多个转录本或基因的情况。
  4. 通常 SalmonKallisto 只绘制转录组(细胞产生的转录物序列)而不是基因组。


参考资料

[1]

difference: https://www.biostars.org/p/180986/#180993

[2]

difference2: https://www.biostars.org/p/400009/#400017