UMI技术基础
什么是UMI
UMI,全称Unique Molecular Identifier,中文叫“唯一分子标识符”。
说白了,它就是一段随机序列——通常是4到12个碱基——在文库构建时被加到每个原始RNA或DNA分子上。每个分子获得一个随机的标签,就像给每个分子发一张身份证。
我刚开始接触单细胞测序时,看到数据里的UMI序列,第一反应是:这跟普通的细胞barcode有什么区别?后来踩过坑才明白——细胞barcode标记的是“哪个细胞”,而UMI标记的是“哪个原始分子”。前者解决细胞身份归属,后者解决分子身份归属。
举个简单的例子:
原始RNA分子1 → 反转录后获得 UMI: ATCG
原始RNA分子2 → 反转录后获得 UMI: GCTA
就算这两个分子序列完全一样,只要UMI不同,就说明它们来自不同的原始分子。这在PCR扩增后尤其重要——一个分子被扩增成1000个副本,UMI都一样,我们就可以把它们“归并”回一个分子。
分子条形码原理
分子条形码(Molecular Barcoding)是UMI背后的核心技术。它的原理非常简单:
- 随机合成:在合成接头时掺入随机碱基,生成数百万种不同的短序列。
- 物理连接:每个原始分子只连接一个UMI,一对一绑定。
- 伴随扩增:UMI随模板一起被PCR扩增,每个原始分子的所有扩增副本共享同一个UMI。
- 回溯去重:测序后,根据UMI+基因组位置将相同UMI的reads聚簇,每个簇代表一个原始分子。
你想想看,如果不用UMI,我们怎么区分PCR duplicate和真正的重复分子?靠reads的起始位置、比对质量?位置一样就认为是duplicate?错,两个不同的原始分子完全可能在同一个位点被剪切、反转录,起点一样。我在一个项目中就遇到过这种情况,用位置去重把真实的两个分子误杀了一个,表达量直接砍半。
UMI的本质,是把“测序错误”和“PCR偏差”这两种噪声彻底分开。测序错误会影响碱基序列,但不会改变UMI;PCR偏差会放大某些分子,但UMI能帮我们把扩增倍数还原回1。
核心公式(心理模型):
原始分子数量 = 唯一UMI组合数(在相同基因组坐标下)
等号成立的条件:UMI长度足够、测序深度足够、UMI错误率可控。
UMI在单细胞测序中的作用
单细胞测序里,UMI干三件大事:
- 消除PCR偏差:每个细胞里的RNA分子数量很少(几万到几十万),PCR会随机放大某些分子。有了UMI,我们才能得到真正的分子计数,而不是扩增副本计数。
- 提高定量准确性:丢掉UMI,你就只能用reads count估计表达量,那玩意受GC偏好、基因长度、扩增效率影响巨大。换成UMI count后,数据更接近真实分子数。
- 降低假阳性:同一个分子因为测序错误变成两个不同序列,如果没有UMI,你会以为有两个分子在表达。UMI让我能识别出这些“孪生兄弟姐妹”其实来自同一源头。
我记得第一次用10x Genomics的数据做差异表达分析,不用UMI去重时,高表达基因的p值小得离谱,结果里一堆假阳性。后来加上UMI去重,排名直接洗牌。嗯,这个坑我算记牢了。
UMI vs 细胞Barcode
| 特征 | UMI | 细胞Barcode |
|---|---|---|
| 目的 | 标记原始分子 | 标记细胞来源 |
| 序列生成 | 随机合成(无固定序列) | 固定序列库(白名单) |
| 长度 | 8-12 bp | 10-16 bp |
| 去重方式 | 按UMI+基因组位置聚簇 | 按序列匹配白名单 |
| 错误容忍 | 通常允许1-2 bp错配 | 严格匹配或纠错算法 |
这张表能帮你快速区分两者。实际分析流程里,你经常需要同时处理它们:先用barcode拆分细胞,再用UMI去重分子。
UMI工作流程概览
下面这张图展示了一个典型的UMI从分子到最终计数的流程。我自己画的时候,把“反转录加UMI”和“PCR扩增”串成一条线,重点突出“同一个UMI的reads最后归并成一个分子”。
总结一下:UMI不是花架子,它是单细胞定量精度的地基。理解UMI的定义、原理和它解决的问题,才能在后面积设定计数阈值时做出合理的决策。