1. 空间转录组学简介与BayesSpace概述
1.1 空间转录组学是什么
空间转录组学,说白了就是在组织切片上测量基因表达,同时保留细胞的空间位置信息。你想想看,传统的 bulk RNA-seq 把组织磨碎了测,得到的是平均值;单细胞 RNA-seq 虽然能分辨细胞类型,但细胞的原位位置丢了。空间转录组正好补上这一环——哪个基因在哪类细胞里表达,这些细胞又分布在组织的哪个区域,一目了然。
我个人觉得,空间转录组最吸引人的地方,是它让我们能看到“细胞在组织里的社交网络”。比如肿瘤组织里,免疫细胞是怎么浸润的,肿瘤细胞和基质细胞之间有没有空间互作——这些信息,没有空间位置是看不出来的。
1.2 主流技术平台
目前主流的空间转录组技术平台有好几种,各有各的脾气。
| 技术平台 | 分辨率 | 通量 | 基因检测 | 特点 |
|---|---|---|---|---|
| 10x Visium | ~55 μm (spot) | 高 | 全转录组 | 最常用,商业化成熟 |
| MERFISH | ~100 nm (单分子) | 中 | 靶向 ~100–1000 基因 | 分辨率极高,单分子精度 |
| Slide-seq | ~10 μm (bead) | 高 | 全转录组 | 分辨率接近单细胞 |
| ST (Spatial Transcriptomics) | ~100 μm (spot) | 中 | 全转录组 | 早期技术,spot 较大 |
在实际项目中,选哪个平台主要看你想回答什么问题。如果要做全转录组发现,10x Visium 是最稳的选择。如果目标是看特定基因的精细空间定位,MERFISH 更适合。我记得有一次项目,客户想同时看全转录组和高分辨率,我们最后用了 Slide-seq,虽然数据稀疏性是个挑战。
1.3 空间数据分析的核心挑战
拿到空间转录组数据后,问题就来了——怎么分析?这里有几个绕不开的坑。
- 稀疏性:每个 spot 检测到的基因数有限,很多基因是 dropout。说白了就是信号很弱,噪声很大。
- 分辨率限制:10x Visium 一个 spot 直径 55 μm,里面可能混着好几个细胞。聚类结果其实是“混合信号”的聚类。
- 空间自相关性:相邻 spot 的基因表达本来就相似,怎么利用这个信息?传统聚类方法完全不管空间位置。
嗯,这里要注意,空间自相关性既是挑战也是机遇。用好了,它能帮你提升聚类精度;用不好,它就是噪声来源。我在项目中遇到过好几次,直接拿普通聚类方法处理空间数据,结果聚类边界特别碎,组织学上完全解释不通。
1.4 BayesSpace 的核心思想
BayesSpace 就是为解决上面这些问题来的。它的核心思路,说白了就一句话:把空间位置信息融入到聚类过程中。
具体怎么做?BayesSpace 是一个基于贝叶斯统计的模型。它假设相邻 spot 的基因表达谱是相似的,所以它们更可能属于同一个聚类。这个“相邻相似”的假设,通过一个马尔可夫随机场(MRF)先验来建模。然后利用 MCMC 采样来推断每个 spot 的聚类归属。
BayesSpace 的三个核心优势:
- 空间感知:聚类时主动利用 spot 间的空间邻接关系
- 分辨率增强:可以对 spot 内部进行亚 spot 级别的聚类,提升有效分辨率
- 不确定性量化:贝叶斯框架天然给出聚类置信度,不像 K-means 只给硬分类
我建议新手从 BayesSpace 入手,原因很简单——它把空间聚类这件事包装得很干净。你不需要自己写 MRF 模型,也不需要调 MCMC 的参数,一个函数调用就搞定。
1.5 BayesSpace 的工作流程
下面这张图展示了 BayesSpace 的完整工作流程:
流程大致分几步:
- 输入数据:空间转录组表达矩阵 + spot 坐标信息
- 预处理:对数归一化、PCA 降维、构建邻接矩阵
- 贝叶斯建模:设置 MRF 先验,定义似然函数
- MCMC 采样:迭代更新聚类标签和模型参数
- 结果输出:聚类标签 + 亚 spot 分辨率增强 + 不确定性估计
安装 BayesSpace 非常简单,直接用 BiocManager:
if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("BayesSpace")
小提示:BayesSpace 目前在 Bioconductor 上,安装前确保你的 R 版本在 4.0 以上。建议用 R 4.2 或更高版本,避免依赖包冲突。
注意:MCMC 采样在数据量大时可能比较慢。我建议先在小数据集上跑通流程,再扩展到大样本。如果在服务器上跑,注意内存占用——我曾经在 16 GB 内存的机器上跑 10 万 spot 的数据,差点崩了。
1.6 什么时候用 BayesSpace
不是所有空间数据都适合用 BayesSpace。我个人习惯看几个条件:
- 数据有清晰的组织结构(比如脑组织分层、肿瘤分区)——BayesSpace 的空间先验能帮上大忙
- spot 分辨率不足以区分精细结构——BayesSpace 的分辨率增强功能正好补上
- 你关心聚类的不确定性——贝叶斯框架给的置信度很有价值
反过来说,如果你的数据 spot 之间空间关联很弱,或者组织结构本身就没有明确的分区,那 BayesSpace 的优势就不太能发挥出来。
好了,关于空间转录组学和 BayesSpace 的基本概念,就先聊到这儿。记住一句话:空间转录组带来了“位置”这个维度,而 BayesSpace 是帮你用好这个维度的利器。