gpt4 book ai didi

r - xgboost 模型的预测函数的列顺序

转载 作者:行者123 更新时间:2023-12-04 17:52:26 24 4
gpt4 key购买 nike

有谁知道 R 预测函数中 newdata 中的列是否需要与使用 xgboost 构建预测模型的训练数据完全相同?如果新数据有额外的列,这是一个问题吗?在下面的示例中,似乎不同的顺序/额外的列给出了不同的预测。

data(mtcars)
mtcars <- subset(mtcars, select = c(qsec, mpg, drat))
mtcars <- as.matrix(mtcars)
dtrain <- xgb.DMatrix(data = mtcars[,c(2:3)], label=mtcars[,1])
mod <- xgboost(data = dtrain, nrounds = 10)
nd1 <- data.frame(mpg=20, drat=3)
nd2 <- data.frame(drat=3, other=100, mpg=20)
nd3 <- data.frame(drat=3, mpg = 20)
nd4 <- data.frame(mpg=20, other=100, drat=3)

predict(mod, as.matrix(nd1))
# 16.4753
predict(mod, as.matrix(nd2))
# 14.3291
predict(mod, as.matrix(nd3))
# 14.3291
predict(mod, as.matrix(nd4))
# 15.71044

最佳答案

是的,为了获得正确的结果,应该以完全相同的顺序保持列。它在以下链接中提到
test set column order

关于r - xgboost 模型的预测函数的列顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43592825/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com