SuperAPI AI 工具集

omicverse-single-cell-cytotrace2

编程与开发

查看项目

更新于 10-16 02:38

技能介绍

用途:对单细胞 AnnData 运行 OmicVerse 的 CytoTRACE2 发育潜能预测。核心流程是先检查 adata.X 是否包含待打分表达矩阵、基因符号是否与声明的物种匹配,必要时用 ov.pp.preprocess(...) 做标准化和 HVG 注释,再确保预训练权重目录就绪,然后调用 ov.single.cytotrace2(...) 推理,最后校验输出列与结果表。

主要能力:ov.pp.preprocess(adata, mode='shiftlog|pearson', target_sum=500000.0, n_HVGs=2000, organism='human', no_cc=False, batch_key=None, identify_robust=True) 添加 counts 层、稳健基因过滤和 HVG 注释,mode 为两段分支:第一段控制标准化(shiftlog 或 pearson),第二段控制 HVG 选择(pearson 或 seurat)。ov.single.cytotrace2(adata, use_model_dir, species='mouse', batch_size=10000, smooth_batch_size=1000, disable_parallelization=False, max_cores=None, max_pcs=200, seed=14, output_dir='cytotrace2_results') 在 adata.X 上运行预训练打分。成功运行会向 adata.obs 写入 CytoTRACE2_Score、CytoTRACE2_Potency、CytoTRACE2_Relative、preKNN_CytoTRACE2_Score、preKNN_CytoTRACE2_Potency,并返回含这些列的结果表;结果表与中间文件写入 output_dir。

使用方式:确保预训练权重目录存在后再推理;species 至少支持 mouse 和 human,实现会在基因符号大小写与声明物种不符时告警。disable_parallelization 与 max_cores 控制并行;batch_size 控制预测分块,smooth_batch_size 控制 KNN 平滑分块,取值不应超过数据集大小。可选可视化用 ov.utils.embedding(...) 叠加 CytoTRACE2_Score、CytoTRACE2_Potency 或 CytoTRACE2_Relative 到已有嵌入(如 X_umap),该步骤仅为展示,非核心任务。

适用场景与限制:适合把 CytoTRACE2 notebook 流程复用为技能,只围绕潜能预测,不吸收无关的轨迹推断、注释或通用预处理内容。CytoTRACE2 本身不要求嵌入。当前实现对某分块少于 100 个细胞的情况会失败(跳过平滑路径则不会生成后续 CytoTRACE2_Score 列),因此避免过小数据集用于生产。若只验证了小规模 CPU 冒烟路径,应明确说明,不要声称完成了大规模复现。