R语言学习:modelStudio,模型解释性分析
2022年第08周。
R语言学习,这一周记录如下。
本周学习一个用于模型解释性分析的包——modelStudio。
01
模型解释性分析包modelStudio
modelStudio包采用交互式对模型做解释性分析。
它提供4种重要的模型解释性可视化。
-
1: Feature Importance
-
2: Break Down Plot
-
3: Shapley Values
-
4: Partial Dependence
包modelStudio的测试案例如下。
第一步:加载所需R包
library(modelStudio)
library(DALEX)
library(tidyverse)
library(tidymodels)
第二步:数据准备和加载
使用ggplot2包的mpg数据集。
glimpse(mpg)
data_tbl <- mpg %>%
select(hwy, manufacturer:drv, fl, class)
data_tbl
第三步:模型构建
使用tidymodels做流程化模型构建,包括如下步骤:
-
1 选择模型类型,这里采用树模型
-
2 配置任务模式,这是一个回归任务,目标变量是数值型
-
3 设置工作引擎,使用xgboost算法
-
4 拟合模型
fit_xgboost <- boost_tree(learn_rate = 0.3) %>%
set_mode("regression") %>%
set_engine("xgboost") %>%
fit(hwy ~ ., data = data_tbl)
fit_xgboost
第四步:创建解释器
使用DALEX包。
explainer <- DALEX::explain(
model = fit_xgboost,
data = data_tbl,
y = data_tbl$hwy,
label = "XGBoost"
)
第五步:模型解释性分析
使用modelStudio包。
modelStudio::modelStudio(explainer = explainer)
执行成功,结果如下。
这些图形的结果,如何解释?
点击图形右上角的D按钮,可以查阅这幅图的解释信息;点击x按钮,可以从里面选择需要查阅的其它图形,例如EDA的图形。
以特征重要性图形为例,描述结果如下。
应用拓展:
1 对于自己的模型需要做解释性分析,可以参照上面的步骤,从多个角度对模型的解释性做洞察。
2 若是想了解每个图形是怎么生成的,建议查阅modelStudio包的源代码,甚至基于源代码做修改,进一步满足自己的需求。
学习材料:
https://www.business-science.io/r/2022/02/22/my-4-most-important-explainable-ai-visualizations-modelstudio.html
我创建了R语言群,你可以添加我微信,备注:姓名-入群,我邀请你加入群,大家一起学习和讨论。
如果你想学习数据科学与人工智能,请关注下方公众号~
2021年R语言学习专辑:
请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!