SuperAPI AI 工具集

alterlab-scvi-tools

通用与其它

查看项目

更新于 10-15 19:56

技能介绍

用途:scvi-tools 是一个用于单细胞基因组学概率模型的 Python 框架,基于 PyTorch 与 PyTorch Lightning,使用变分推断的深度生成模型,处理多种单细胞数据模态。适用于 scRNA-seq 的降维、批次校正与整合;ATAC-seq/染色质可及性;多模态数据整合(CITE-seq、multiome、配对/非配对);空间转录组(反卷积、空间映射);单细胞差异表达;细胞类型注释与迁移学习;甲基化、流式/质谱细胞术、RNA 速率等专门模态;以及构建自定义概率模型。

主要能力(按模态):1)scRNA-seq:scVI(无监督降维与批次校正)、scANVI(半监督注释与整合)、AUTOZI(零膨胀检测)、VeloVI(RNA 速率)、contrastiveVI(扰动效应分离)。2)染色质可及性:PeakVI、PoissonVI、scBasset。3)多模态/多组学:totalVI、MultiVI、MrVI。4)空间转录组:DestVI、Stereoscope、Tangram、scVIVA。5)专门模态:MethylVI/MethylANVI、CytoVI、Solo(双细胞检测)、CellAssign(基于标记的注释)。

使用方式:模型遵循统一 API(setup → train → extract)。以 AnnData 为中心。示例:adata = scvi.data.heart_cell_atlas_subsampled();sc.pp.filter_genes(adata, min_counts=3);sc.pp.highly_variable_genes(adata, n_top_genes=1200);scvi.model.SCVI.setup_anndata(adata, layer="counts", batch_key="batch", categorical_covariate_keys=["donor"], continuous_covariate_keys=["percent_mito"]);model = scvi.model.SCVI(adata);model.train();latent = model.get_latent_representation();normalized = model.get_normalized_expression(library_size=1e4),并将结果存入 adata.obsm["X_scVI"]、adata.layers["scvi_normalized"],再用 scanpy 做 neighbors/UMAP/Leiden。差异表达使用 model.differential_expression(groupby=..., group1=..., group2=..., mode="change", delta=0.25),显著性看 proba_de(后验概率),不是 p 值。模型持久化:model.save("./model_directory", overwrite=True);scvi.model.SCVI.load("./model_directory", adata=adata)。

安装:uv pip install scvi-tools;uv pip install "scvi-tools[cuda]"(CUDA 12;CUDA 13 用 [cuda13]);uv pip install "scvi-tools[metal]"(Apple silicon MPS);uv pip install "scvi-tools[autotune]"(Ray Tune 超参搜索)。版本提示(2026-09):scvi-tools 1.5 完全移除 JAX 后端,Jax 前缀模型不再存在,全部运行于 PyTorch/Lightning(Apple silicon 有 mlxSCVI 变体);Tangram 在 1.5.0 也转为 PyTorch 后端,结果可能与 JAX 时代略有差异,建议重跑而非混用新旧输出。

最佳实践与限制:需使用原始未归一化计数(raw counts);分析前过滤低表达基因(如 min_counts=3);在 setup_anndata 中登记已知技术因素;使用高变基因;保存训练好的模型;大数据集启用 GPU(accelerator="gpu");将输出存回 AnnData 以便下游分析。官方文档:https://docs.scvi-tools.org/en/stable/;教程:https://docs.scvi-tools.org/en/stable/tutorials/index.html;API:https://docs.scvi-tools.org/en/stable/api/index.html。其他细节暂未提供。