5 折交叉验证
在本课程中,您将使用多种数据集来体验 caret 包的强大与灵活性。这里,您将使用著名的 Boston 房价数据集,目标是在不同波士顿郊区中预测房屋的中位数价格。
您可以复用上一练习的代码,只需将模型使用的数据集替换为:
model <- train(
medv ~ .,
Boston, # <- new!
method = "lm",
trControl = trainControl(
method = "cv",
number = 10,
verboseIter = TRUE
)
)
接下来,您可以通过在 trainControl() 的 number 参数中设置为 5,将交叉验证折数从 10 减少为 5:
trControl = trainControl(
method = "cv",
number = 5,
verboseIter = TRUE
)
本练习是课程的一部分
在 R 中使用 caret 的机器学习
练习说明
- 拟合一个针对
Boston房价数据集的lm()模型,使medv为响应变量,其他所有变量为解释变量。 - 使用 5 折交叉验证,而不是 10 折交叉验证。
- 将模型打印到控制台并检查结果。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Fit lm model using 5-fold CV: model
model <- train(
___,
___,
method = "lm",
trControl = trainControl(
method = "cv",
number = ___,
verboseIter = TRUE
)
)
# Print model to console