Đánh giá mô hình bằng cách chia train/test
Giờ bạn sẽ kiểm tra mô hình mpg_model trên dữ liệu kiểm tra mpg_test.
Các hàm rmse() và r_squared() để tính RMSE và R-squared đã được cung cấp sẵn để tiện sử dụng:
rmse(predcol, ycol)
r_squared(predcol, ycol)
trong đó:
- predcol: Giá trị dự đoán
- ycol: Kết quả thực tế
Bạn cũng sẽ vẽ biểu đồ so sánh dự đoán với kết quả.
Nhìn chung, hiệu năng mô hình trên dữ liệu huấn luyện thường tốt hơn dữ liệu kiểm tra (dù đôi khi bộ kiểm tra có thể "gặp may"). Chênh lệch nhỏ là chấp nhận được; nếu hiệu năng trên huấn luyện tốt hơn đáng kể, thì có vấn đề.
Các data frame mpg_train và mpg_test, cùng mô hình mpg_model đã được nạp sẵn, cũng như các hàm rmse() và r_squared().
Bài tập này là một phần của khóa học
Học có giám sát với R: Hồi quy
Hướng dẫn bài tập
- Dự đoán mức tiêu thụ nhiên liệu trong phố (
cty) từhwytrên dữ liệumpg_train. Gán các dự đoán vào cộtpred. - Dự đoán mức tiêu thụ nhiên liệu trong phố từ
hwytrên dữ liệumpg_test. Gán các dự đoán vào cộtpred. - Dùng
rmse()để đánh giá RMSE cho cả tập kiểm tra và tập huấn luyện. So sánh: hiệu năng có tương tự không? - Làm tương tự với
r_squared(). Hiệu năng có tương tự không? - Dùng
ggplot2để vẽ biểu đồ so sánh các dự đoán vớictytrên dữ liệutest.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Examine the objects that have been loaded
ls.str()
# predict cty from hwy for the training set
mpg_train$pred <- ___
# predict cty from hwy for the test set
mpg_test$pred <- ___
# Evaluate the rmse on both training and test data and print them
(rmse_train <- ___)
(rmse_test <- ___)
# Evaluate the r-squared on both training and test data.and print them
(rsq_train <- ___)
(rsq_test <- ___)
# Plot the predictions (on the x-axis) against the outcome (cty) on the test data
ggplot(___, aes(x = ___, y = ___)) +
geom_point() +
geom_abline()