SuperAPI AI 工具集

alterlab-arboreto

通用与其它

查看项目

更新于 10-15 19:56

技能介绍

用途:Arboreto 用于从基因表达数据推断转录因子(TF)到靶基因的调控网络,适用于 bulk 或单细胞表达矩阵,也是 SCENIC/pySCENIC 流程中 GRN 推断步骤的核心组件。

主要能力:提供两种算法——GRNBoost2(基于梯度提升,速度快,适合 1 万以上观测的大数据集,为默认推荐)和 GENIE3(基于随机森林的经典多元回归方法,适合对比或验证)。支持按转录因子列表过滤、设置随机种子保证可复现,并可通过 Dask 从本地多核扩展到远程集群。输出为包含 TF、target、importance 三列的调控关系表。

使用方式:安装命令为 uv pip install arboreto,依赖 scipy、scikit-learn、numpy、pandas、dask、distributed。基本调用为 from arboreto.algo import grnboost2,传入以基因为列的 DataFrame 即可。脚本入口需包裹在 if name == 'main': 中,因为 Dask 会重新导入模块。可通过 LocalCluster/Client 控制本地资源,或连接远程 Dask 调度器。

适用场景:单细胞 RNA-seq 调控网络推断、bulk RNA-seq 结合 TF 过滤、多条件比较分析,以及作为 pySCENIC 的上游步骤。

限制与注意:importance 是无界相对分数,不是概率或相关系数,不应使用 0.5 之类的绝对阈值,建议按每个靶基因取 Top N 或按分位数筛选,在 SCENIC 流程中可保留全部连接交由下游 cisTarget 基序剪枝。GRNBoost2 具有随机性,单一种子不能保证稳健性,构建共识网络需多次运行并保留重复出现的边。Arboreto 0.1.6 发布于 2021 年,内部使用 dask.delayed 等 API,若在 dask 内部报错,建议在隔离环境中固定匹配的 dask/distributed 版本。内存不足时可过滤低方差基因或改用分布式计算。其他功能、收费与平台支持情况暂未提供。