如何解决提取inbag信息gbm包R
当 bag.fraction $p$ 小于 1 时,gbm 将一棵树 $t$ 拟合到数据集中的 $p$ x $N$ 个案例,并使用这些 $p$ X $N$ 个案例来计算终端节点预测。
有人知道是否可以提取有关哪个案例用于拟合的信息吗?例如,randomForest-function 有选项 keep.inbag=TRUE,gbm 包中有类似的东西吗?
在这个例子中(取自这里:https://stats.stackexchange.com/questions/237582/interpretation-of-gbm-single-tree-prediction-in-pretty-gbm-tree)$p$ 是一
# random data:
x <- seq(0,1,length.out = 6)
y <- c(0,1)
dfs <- data.frame(x = x,y = y)
dfs
# fit a single tree with gbm:
M <- gbm::gbm(y ~ x,data = df,distribution="gaussian",n.trees = 1,bag.fraction = 1.0,n.minobsinnode = 1,shrinkage = 1.0)
gbm::predict.gbm( M,data = dfs,single.tree = TRUE )
[1] -0.5 -0.5 -0.5 0.5 0.5 0.5
看到前三个对象属于终端节点 1,后三个对象属于节点 2,预测是 $y$ - $M_y$ 的平均值(其中 $M_y$ 是 $y$ 的平均值) .
然而,在这个例子中,$p$ 是 0.8 并且预测与终端节点中对象的平均值不同:
set.seed(12354)
M <- gbm::gbm(y ~ x,bag.fraction = 0.8,single.tree = TRUE )
[1] -0.5 -0.5 0.5 0.5 0.5 0.5
有没有办法找出六个对象中的哪一个用于拟合树并计算预测?
提前致谢! 斯蒂芬
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。