5 折交叉驗證
在本課程中,你會使用各式各樣的資料集,來體驗 caret 套件的高度彈性。這裡你會使用知名的 Boston 房價資料集,目標是預測波士頓各郊區的房價中位數。
你可以沿用上一個練習的程式碼,只需要把模型使用的資料集換掉即可:
model <- train(
medv ~ .,
Boston, # <- new!
method = "lm",
trControl = trainControl(
method = "cv",
number = 10,
verboseIter = TRUE
)
)
接著,你可以把交叉驗證的折數從 10 改成 5,只要在 trainControl() 的 number 參數設定為 5:
trControl = trainControl(
method = "cv",
number = 5,
verboseIter = TRUE
)
本練習屬於課程
使用 R 的 caret 進行 Machine Learning
練習說明
- 對
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