如何解决使用带有映射功能的嵌套 GBM 的 PDP
我有一个嵌套的 GBM,我想提取部分依赖,尝试使用以下查询:
library(rsample) # data splitting
library(gbm) # basic implementation
library(xgboost) # a faster implementation of gbm
library(caret) # an aggregator package for performing many machine learning models
library(h2o) # a java-based platform
library(pdp) # model visualization
basic_gbm <- function(data) {
mymodel <- gbm(formula = mpg ~ .,distribution = "gaussian",data = data,n.minobsinnode = 1,bag.fraction = 1
)
return(mymodel)
}
blah_model <- mtcars %>%
group_by() %>%
nest() %>%
mutate(model = map(data,basic_gbm))
blah_summary <- mtcars %>%
group_by() %>%
nest() %>%
mutate(model = map(data,basic_gbm)) %>%
mutate(summary = map(model,summary)) %>%
mutate(all_data = pmap(list(data,summary),.f =left_join,by = character())) %>%
select(cols=c(all_data)) %>%
unnest(cols = c(cols)) %>%
ungroup()
blah_model %>%
left_join(blah_summary,by = character()) %>%
mutate(pred = map(model,partial,pred.var = var,n.trees = model$n.trees,train = data)) -- this does not work
这确实有效,并且是我想要的每个 var 的嵌套 df:
coeffs <- blah_model$model[[1]] %>%
partial(pred.var = 'disp',n.trees = blah_model$model[[1]]$n.trees,train = blah_model$data[[1]])
然而,它说它没有在训练数据中找到变量——我传递的数据是训练数据。地图中的变量来自汇总函数 - 这些是预测变量。
我举了一个更好的例子
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。