XGBoost R代码
时间: 2024-06-03 12:04:46 浏览: 170
XGBoost是一种梯度提升算法,它在处理结构化数据方面表现出色,并且在很多机器学习竞赛中都获得了第一名。XGBoost提供了多种语言的API,包括R语言。下面是一个简单的XGBoost R代码示例,用于训练一个分类器:
```R
# 加载数据
data(iris)
train_data <- iris[, 1:4]
train_label <- as.numeric(iris[, 5])
# 定义XGBoost参数
params <- list(
booster = "gbtree",
objective = "multi:softmax",
num_class = 3,
eta = 0.1,
max_depth = 6,
subsample = 0.7,
colsample_bytree = 0.7,
min_child_weight = 1,
silent = 1
)
# 训练模型
library(xgboost)
xgb_model <- xgboost(data = as.matrix(train_data), label = train_label, params = params, nrounds = 50)
# 对测试集进行预测
test_data <- train_data[1:10, ]
pred <- predict(xgb_model, as.matrix(test_data))
# 输出预测结果
cat("Predictions:", pred, "\n")
# 相关问题:
# 1. XGBoost的原理是什么?
# 2. XGBoost与传统GBDT有什么不同?
# 3. XGBoost有哪些重要的参数需要设置?
阅读全文