SuperAPI AI 工具集

bio-machine-learning-prediction-explanation

数据与分析

查看项目

更新于 10-15 21:55

技能介绍

用途:在组学分类器中解释特征归因,回答“模型实际依赖哪些基因”。参考示例基于 numpy 1.26+、pandas 2.2+、scikit-learn 1.4+、shap 0.44+、lime 0.2+,使用前需核对已安装版本。

主要能力:树模型可用 shap.TreeExplainer(model, data=background, feature_perturbation='interventional');模型无关局部解释可用 lime.lime_tabular.LimeTabularExplainer;模型依赖筛选可用 sklearn.inspection.permutation_importance。核心观点:归因描述的是模型而非生物学,高 SHAP 基因可能只是批次或文库信号的相关物;相关基因模块内排序不构成发现。

使用方式:干预式(需约 100–1000 行 background 样本)让模型未用特征得零分,适合回答“模型用了什么”;条件式(tree_path_dependent,无需 background)适合描述性问题,但不能称为模型依赖。排名前先按共表达模块聚合 |SHAP|。LIME 需固定 random_state,仅用于单个预测,不做全局排名。置换重要性在相关特征下会稀释信号,应先在聚类内保留一个特征,或使用 Strobl 条件置换;评估须在留出数据上。

限制:归因非因果、非有效生物标志物,top-k SHAP 选择无 FDR 与验证;背景/基线选择会改变所有归因;interventional 会外推、条件式会相关泄漏,两者不可兼得;LIME/KernelSHAP 对扰动与种子不稳定。高利害决策宜用本身可解释的稀疏线性或规则模型。版本上:Explanation 绘图 API 约 0.36 引入,feature_perturbation 的 'auto' 默认在 0.47 会随 data= 是否提供而静默改变估计对象,应显式设置。