原标题:R语言机器学习:caret包使用及其黑箱模型解释(连续变量预测)
作者:黄天元,复旦大学博士在读,目前研究涉及文本挖掘、社交网络分析和机器学习等。希望与大家分享学习经验,推广并加深R语言在业界的应用。
caret包是R语言通用机器学习包之一,能够在统一框架下使用各种不同的模型,从预处理、建模到后期的预测、评估都有非常友好的函数封装。新近学习的DALEX包是给黑箱提供模型解释性的利器。事实上,它不仅仅针对黑箱模型,它能够面向所有模型给出表现的评估、变量的重要性等有价值的信息。本文依照官方文档,尝试习得通用的DALEX解释caret包生成模型的套路。
1 包的载入与数据导入
安装三个包。
library(pacman)
p_load(DALEX,caret,tidyverse)
观察我们要使用的目标数据:
apartments %>% as_tibble
# A tibble: 1,000 x 6
m2.price construction.year surface floor no.rooms district
1 5897 1953 25 3 1 Srodmiescie
2 1818 1992 143 9 5 Bielany
3 3643 1937 56 1 2 Praga
4 3517 1995 93 7 3 Ochota
5 3013 1992 144 6 5 Mokotow
6 5795 1926 61 6 2 Srodmiescie
7 2983 1970 127 8 5 Mokotow
8 2346 1985 105 8 4 Ursus
9 4745 1928 145 6