news 2026/7/6 2:57:23

模型可解释性:特征重要性/SHAP/LIME

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
模型可解释性:特征重要性/SHAP/LIME

模型可解释性:特征重要性/SHAP/LIME

1. 特征重要性

fromsklearn.ensembleimportRandomForestClassifierimportpandasaspd# 树模型内置特征重要性rf=RandomForestClassifier(n_estimators=100,random_state=42)rf.fit(X_train,y_train)importance=pd.Series(rf.feature_importances_,index=feature_names)print(importance.nlargest(10))# XGBoost 特征重要性importxgboostasxgb xgb_clf=xgb.XGBClassifier().fit(X_train,y_train)xgb.plot_importance(xgb_clf,max_num_features=10)

2. SHAP 值

importshap# 计算 SHAP 值explainer=shap.TreeExplainer(rf)shap_values=explainer.shap_values(X_test)# 摘要图shap.summary_plot(shap_values[1],X_test,feature_names=feature_names)# 单样本解释shap.force_plot(explainer.expected_value[1],shap_values[1][0],X_test.iloc[0])# 依赖图shap.dependence_plot('feature_name',shap_values[1],X_test)

3. LIME

fromlime.lime_tabularimportLimeTabularExplainer explainer=LimeTabularExplainer(X_train.values,feature_names=feature_names,class_names=['class_0','class_1'],mode='classification')# 解释单个样本exp=explainer.explain_instance(X_test.iloc[0].values,rf.predict_proba,num_features=10)exp.show_in_notebook()

总结

方法适用模型粒度计算速度
特征重要性树模型全局
SHAP任意模型全局+局部
LIME任意模型局部
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/6 2:57:18

IDEA集成GitHub

简介 GitHub官网:GitHub Change is constant. GitHub keeps you ahead. GitHub GitHub作为远程库 配置远程仓库 打开gitHub官网(GitHub Change is constant. GitHub keeps you ahead. GitHub),点击右上角的“+”号,创建一个新仓库 在本地添加远程库 git remote -v …

作者头像 李华
网站建设 2026/7/6 2:56:32

Java语言JVM

一、Java介绍编译型语言(源代码需要通过编译器编译):(面向过程)C;(面向过程&面向对象)C;(面向对象)Java,Go,C#解释型语…

作者头像 李华
网站建设 2026/7/6 2:56:11

管理Linux软件包和进程

Linux软件包管理:从源码编译到YUM仓库,再到进程管理 —— 原理与实战 前言 在Linux系统中,软件包管理是运维人员最常打交道的操作之一。无论是安装Web服务器,还是部署数据库环境,都离不开它。但你有没想过:…

作者头像 李华
网站建设 2026/7/6 2:55:35

GraphRAG 实战:工程实践里的常见坑

《GraphRAG 实战:工程实践里的常见坑》看起来是个大话题,但真落到项目里,常常就是几个具体选择。下面我尽量按实际开发时会遇到的问题来讲。摘要这篇面向需要构建企业知识库和复杂问答系统的开发者,但不会把“GraphRAG 实战&#…

作者头像 李华