scvi-tools 是面向单细胞基因组学的 Python 概率建模框架,基于 PyTorch 与 PyTorch Lightning,采用变分推断与深度生成模型分析多种单细胞数据模态。
用途:适用于 scRNA-seq 的降维、批次校正与整合;scATAC-seq 或染色质可及性分析;多模态数据整合(CITE-seq、multiome、配对/非配对数据集);空间转录组分析(反卷积、空间映射);单细胞差异表达分析;细胞类型注释与迁移学习;以及甲基化、流式/质谱流式、RNA 速率等专用模态分析,也可用于构建自定义概率模型。
主要能力按模态组织:RNA-seq 方向的 scVI(无监督降维与批次校正)、scANVI(半监督细胞类型注释与整合)、AUTOZI、VeloVI、contrastiveVI;ATAC-seq 方向的 PeakVI、PoissonVI、scBasset;多模态方向的 totalVI、MultiVI、MrVI;空间转录组方向的 DestVI、Stereoscope、Tangram、scVIVA;专用方向包括 MethylVI/MethylANVI、CytoVI、Solo、CellAssign。
使用方式:所有模型遵循统一 API,先以 AnnData 格式导入并预处理数据,调用 setup_anndata 注册数据(指定 layer、batch_key、分类与连续协变量),再创建模型并 train() 训练,随后通过 get_latent_representation() 与 get_normalized_expression() 提取潜在表示和归一化表达,结果存入 AnnData 供 scanpy 下游分析。差异表达可用 differential_expression(),模型可用 save() 与 load() 持久化。
安装:pip install scvi-tools;GPU 支持:pip install scvi-tools[cuda]。
限制与注意事项:模型期望未归一化的原始计数数据;建议先过滤低表达基因并选择高变基因;需在 setup_anndata 中注册已知技术因素;大样本可启用 GPU 加速;建议保存训练好的模型避免重训。官方文档、教程与 API 参考地址见资料。具体模型超参数与性能表现暂未提供。