【论文分享】EpiFoundation-单细胞ATAC-seq基础模型
个人推荐指数:⭐️⭐️⭐️⭐️⭐️
EpiFoundation 简介
EpiFoundation 是首个专门为单细胞 ATAC-seq(scATAC-seq)数据设计的基础模型,通过创新的峰-基因对齐(peak-to-gene alignment)预训练策略,学习细胞的表观基因组表示。该模型由加州大学圣克鲁兹分校(UC Santa Cruz)、杜克大学(Duke University)和哥伦比亚大学(Columbia University)的研究团队开发,发表于 bioRxiv(2025年9月)。
EpiFoundation 的核心能力包括:
- 高效处理高维稀疏的 scATAC-seq 数据:仅处理非零峰集合,提高数据密度
- 跨模态预训练:利用配对的基因表达数据监督峰-基因关联学习
- 多任务支持:细胞类型注释、批次校正、基因表达预测等下游任务
- 最先进性能:在多个组织和任务上超越现有方法
scATAC-seq 技术通过测量单细胞水平的染色质可及性,能够识别活跃的调控元件(如启动子、增强子、转录因子结合位点),为理解基因调控和表观基因组异质性提供了前所未有的分辨率。然而,scATAC-seq 数据面临两大挑战:
- 峰数量巨大(通常 10⁵-10⁶ 个),导致计算成本高昂
- 数据极度稀疏(二倍体细胞每条染色体仅有两个 DNA 拷贝)
EpiFoundation 通过创新的技术设计有效解决了这些挑战。
方法原理
核心思想
EpiFoundation 的核心创新在于两个关键技术:
非零峰建模:只处理表达的峰(非零峰),而不是所有峰
- 传统方法需要编码所有 10⁵-10⁶ 个峰,计算成本不可接受
- EpiFoundation 认为”哪些峰被表达”这一信息足以构建细胞表示
- 大多数细胞的非零峰数量远小于总峰数(通常 < 12,000)
- 显著提高了输入数据中细胞特异性信息的密度
峰-基因对齐:利用配对的基因表达数据作为监督信号
- 传统 RNA-seq 基础模型使用掩码语言模型(MLM)学习基因-基因关联
- EpiFoundation 使用基因表达预测作为预训练目标,学习峰-基因关联
- 确保细胞表示与表型(通常由转录组数据定义)准确关联
数据集:MiniAtlas
为了训练和验证 EpiFoundation,研究团队构建了 MiniAtlas 数据集:
- 超过 100,000 个单细胞
- 配对的 scRNA-seq 和 scATAC-seq 数据(10X Multiome)
- 覆盖 19 种组织和 56 种细胞类型
- 统一的峰调用(peak calling),确保样本间可比性
测试集包括:
- BMMC(骨髓单核细胞)
- Kidney(肾脏)
- PBMC(外周血单核细胞)
- ALLTissue(所有组织的综合测试集)
模型架构
EpiFoundation 采用 Transformer 架构,包含以下核心组件:
输入嵌入(Input Embedding)
输入嵌入由两部分组成:
非零峰嵌入:
- 对于细胞 i,提取其非零峰集合 P⁺ᵢ = {pₖ | Aᵢ,ₖ = 1}
- 通过峰嵌入层 Eₚₑₐₖ 将非零峰映射到嵌入空间
- Zᵢᵖᵉᵃᵏ = Eₚₑₐₖ(P⁺ᵢ) ∈ ℝ|P⁺ᵢ|×dₘ
- 如果非零峰数量超过最大序列长度 Lₚₑₐₖ(设为 12,000),则随机采样
染色体嵌入:
- 为每个非零峰找到其对应的染色体
- 通过染色体嵌入层 Eᶜʰʳ 编码染色体信息
- Zᵢᶜʰʳ = Eᶜʰʳ(Rᵢ) ∈ ℝ|P⁺ᵢ|×dₘ
- 支持 22 条常染色体和 X、Y 性染色体
最终输入嵌入:
- Zᵢ = Zᵢᵖᵉᵃᵏ + Zᵢᶜʰʳ
细胞表示(Cell Representation)
Transformer 编码:
- 在输入序列开头添加 [CLS] token
- 通过 Nₗ 层 Transformer blocks 处理输入嵌入
- 提取 [CLS] token 的最终嵌入作为细胞表示 zᵢᶜ ∈ ℝᵈᵐ
批次校正:
- 引入独立的批次嵌入 zᵢᵇ = Eᵦₐₜᶜₕ(bᵢ)
- 将细胞表示与批次嵌入拼接:z̃ᵢᶜ = zᵢᶜ ⊗ zᵢᵇ
- 批次信息仅在预训练时使用,确保下游任务中的细胞表示无偏
峰-基因对齐(Peak-to-Gene Alignment)
预训练目标是预测二值化的基因表达:
基因采样:
- 从总共 Nɢ 个基因中随机采样 Lɢₑₙₑ = 8,000 个基因
- 确保采样的基因中表达和不表达的基因数量相等(避免训练偏差)
基因表达预测:
- 获取基因嵌入:Zᵢᵍᵉⁿᵉ = Eɢₑₙₑ(Gᵢ) ∈ ℝᴸᵍᵉⁿᵉ×ᵈᵐ
- 将细胞表示广播并与基因嵌入拼接
- 通过解码器预测二值表达:êᵢᵇⁱⁿᵃʳʸ = Dₚᵣₑ(Z̃ᵢᶜ ⊗ Zᵢᵍᵉⁿᵉ)
损失函数:
- 使用交叉熵损失:ℒₚᵣₑ = CE(eᵢᵇⁱⁿᵃʳʸ, êᵢᵇⁱⁿᵃʳʸ)
下游任务
EpiFoundation 支持三类下游任务:
1. 细胞类型注释
- 使用预训练的细胞表示 zᵢᶜ
- 训练细胞类型解码器:t̂ᵢ = Dᶜᵉˡˡ(zᵢᶜ)
- 损失函数:ℒᶜᵉˡˡ = CE(tᵢ, t̂ᵢ)
2. 批次校正
- 直接使用预训练的细胞表示 zᵢᶜ(不包含批次信息)
- 作为无偏的细胞表示用于批次整合
3. 基因表达预测
- 在预训练基础上进一步微调
- 预测细粒度的基因表达值(而非二值表达)
- 将原始基因表达计数归一化并分类为 Nᵦᵢₙ = 10 个表达水平
- 使用分类交叉熵损失进行微调
技术实现细节
模型配置
Transformer 架构:
- 嵌入维度 dₘ:512
- Transformer 层数 Nₗ:12
- 注意力头数:8
- 前馈网络维度:2048
- Dropout:0.1
输入配置:
- 最大峰序列长度 Lₚₑₐₖ:12,000(覆盖 95% 以上细胞的所有非零峰)
- 基因采样数量 Lɢₑₙₑ:8,000
- 总峰数 Nₚ:约 500,000(根据数据集而定)
- 总基因数 Nɢ:约 20,000
数据预处理
scATAC-seq 数据:
- 使用 10x Cell Ranger ARC(版本 2.0.1)处理原始 FASTQ 文件
- 比对到人类 GRCh38 基因组
- 使用 MACS2(版本 2.2.7.1)在所有样本上统一调用峰
- 使用 Signac(版本 1.8.0)计算峰-细胞计数矩阵
- 二值化:将计数 > 0 的设为 1
scRNA-seq 数据:
- 使用 Cell Ranger ARC 生成基因-细胞计数矩阵
- 使用 Seurat 的 NormalizeData 函数归一化和对数转换
- 二值化用于预训练:表达 > 0 设为 1
细胞类型注释:
- 使用 Seurat 的 FindMultiModalNeighbors 基于 RNA 和 ATAC 数据聚类
- 计算聚类与 DISCO 数据库中细胞类型表达谱的 Spearman 相关系数
- 为每个聚类分配细胞类型标签
训练配置
预训练:
- 优化器:AdamW
- 学习率:1e-4,使用余弦退火调度
- 批次大小:32
- 训练轮数:100
- 权重衰减:0.01
- 梯度裁剪:1.0
- 硬件:8 × NVIDIA A100 GPU
微调:
- 学习率:5e-5(细胞类型注释)、1e-4(基因表达预测)
- 批次大小:64
- 训练轮数:50(细胞类型注释)、30(基因表达预测)
- 早停策略:验证集损失连续 10 轮不下降
性能评估
细胞类型注释
在多个组织的测试集上,EpiFoundation 在细胞类型注释任务中表现优异
EpiFoundation 在所有测试集上均显著优于现有方法,平均准确率提升 5-10%。
批次校正
使用多个指标评估批次校正效果:
评估指标:
- Batch ASW(Average Silhouette Width):批次混合度,越接近 0 越好
- Cell Type ASW:细胞类型分离度,越接近 1 越好
- kBET:批次效应去除程度,越接近 1 越好
- LISI(Local Inverse Simpson’s Index):局部多样性指标
EpiFoundation 在批次校正任务中表现最佳,能够有效去除批次效应同时保持细胞类型的生物学结构。
基因表达预测
EpiFoundation 与 Gene Activity(Signac 中的标准方法)比较:
评估指标:
- Pearson 相关系数:预测值与真实值的相关性
- Spearman 相关系数:秩相关性
- MSE(均方误差):预测误差
EpiFoundation 在基因表达预测任务中显著优于传统方法,平均相关系数提升约 30%。
可视化分析
使用 UMAP 可视化 EpiFoundation 学习的细胞表示:
- 不同组织的细胞形成清晰的聚类
- 同一细胞类型在不同批次中聚集在一起
- 细胞类型之间的边界清晰,反映了生物学差异
- 发育轨迹和细胞状态转换得到良好保持
安装和使用
安装方法
1 | # 克隆仓库 |
数据准备
下载 MiniAtlas 数据集:
1 | # MiniAtlas 数据集托管在 Hugging Face |
准备自己的数据:
1 | import scanpy as sc |
使用预训练模型
加载预训练模型:
1 | from epifoundation import EpiFoundation |
提取细胞表示:
1 | # 提取细胞嵌入 |
细胞类型注释
1 | from epifoundation import CellTypeAnnotator |
批次校正
1 | # 使用 EpiFoundation 嵌入进行批次校正 |
基因表达预测
1 | from epifoundation import GeneExpressionPredictor |
应用案例
案例 1:跨组织细胞类型图谱构建
研究团队使用 EpiFoundation 构建了跨 19 种组织的细胞类型图谱:
- 整合了超过 100,000 个细胞的 scATAC-seq 数据
- 识别了 56 种细胞类型
- 揭示了组织特异性的染色质可及性模式
- 发现了跨组织保守的调控元件
案例 2:发育轨迹分析
使用 EpiFoundation 分析造血细胞的发育轨迹:
- 准确捕捉了从造血干细胞到成熟血细胞的分化过程
- 识别了关键的转录因子结合位点
- 揭示了染色质可及性在细胞命运决定中的动态变化
- 预测了调控网络的时序变化
案例 3:疾病相关调控元件识别
应用 EpiFoundation 识别疾病相关的调控元件:
- 比较健康和疾病状态下的染色质可及性
- 识别了疾病特异性的开放染色质区域
- 预测了疾病相关基因的表达变化
- 为精准医疗提供了表观基因组学层面的见解
优势与局限
优势
- 专为 scATAC-seq 设计:首个专门针对 scATAC-seq 数据的基础模型
- 高效处理稀疏数据:非零峰建模策略显著提高计算效率
- 跨模态学习:峰-基因对齐确保表观基因组与转录组的关联
- 多任务支持:一个模型支持多种下游任务
- 最先进性能:在多个基准测试中超越现有方法
- 可解释性强:学习的细胞表示保持生物学结构
局限
- 需要配对数据:预训练需要配对的 scRNA-seq 和 scATAC-seq 数据
- 计算资源需求:预训练需要多个 GPU 和较长时间
- 物种限制:当前模型仅在人类数据上训练
- 峰调用依赖:性能依赖于峰调用的质量
- 批次效应:虽然有批次校正机制,但极端批次效应仍可能影响性能
与其他方法的比较
| 特性 | EpiFoundation | scVI | SCALE | BAVARIA | MultiVI |
|---|---|---|---|---|---|
| 专为 scATAC-seq 设计 | ✓ | ✗ | ✓ | ✓ | ✓ |
| 基础模型 | ✓ | ✗ | ✗ | ✗ | ✗ |
| 峰-基因对齐 | ✓ | ✗ | ✗ | ✗ | ✓ |
| 细胞类型注释 | ✓ | ✓ | ✓ | ✓ | ✓ |
| 批次校正 | ✓ | ✓ | ✓ | ✓ | ✓ |
| 基因表达预测 | ✓ | ✗ | ✗ | ✗ | ✓ |
| 预训练策略 | 跨模态 | VAE | VAE | VAE | VAE |
| 性能(细胞注释) | 最优 | 良好 | 中等 | 良好 | 良好 |
EpiFoundation 的独特优势在于其作为基础模型的设计理念和专门针对 scATAC-seq 数据的技术创新。
代码可用性
EpiFoundation 的代码已在 GitHub 上开源:
- GitHub 仓库:https://github.com/UCSC-VLAA/EpiFoundation
- 许可证:MIT License
- 预训练模型:https://huggingface.co/UCSC-VLAA/EpiFoundation
- MiniAtlas 数据集:https://huggingface.co/datasets/UCSC-VLAA/MiniAtlas
代码结构:
epifoundation/:核心模型代码prepare_data.py:数据预处理脚本train.py:模型训练脚本evaluate.py:模型评估脚本notebooks/:使用示例和教程
总结
EpiFoundation 是单细胞表观基因组学领域的重要突破,作为首个专门为 scATAC-seq 数据设计的基础模型,它通过创新的技术设计有效解决了高维稀疏数据的建模挑战。其主要创新点包括:
- 非零峰建模:只处理表达的峰,显著提高计算效率和数据密度
- 峰-基因对齐:利用配对的基因表达数据监督预训练,确保表观基因组与转录组的关联
- MiniAtlas 数据集:构建了高质量的多组织配对数据集,为模型训练和评估提供了坚实基础
- 多任务支持:一个模型支持细胞类型注释、批次校正和基因表达预测等多种任务
- 最先进性能:在多个基准测试中显著优于现有方法
EpiFoundation 为单细胞表观基因组学研究提供了强大的工具,特别适合以下场景:
- 大规模 scATAC-seq 数据的细胞类型注释
- 跨批次、跨实验室的数据整合
- 从染色质可及性预测基因表达
- 探索表观基因组调控机制
- 构建细胞类型图谱和发育轨迹
随着单细胞表观基因组学技术的发展,EpiFoundation 有望在理解基因调控、细胞命运决定和疾病机制等方面发挥重要作用。