Evaluasi model menggunakan pembagian train/test
Sekarang Anda akan menguji model mpg_model pada data uji, mpg_test.
Fungsi rmse() dan r_squared() untuk menghitung RMSE dan R-squared telah disediakan untuk memudahkan:
rmse(predcol, ycol)
r_squared(predcol, ycol)
di mana:
- predcol: Nilai prediksi
- ycol: Nilai aktual
Anda juga akan membuat plot prediksi vs. nilai keluaran.
Secara umum, kinerja model lebih baik pada data pelatihan dibandingkan data uji (meskipun terkadang himpunan uji “beruntung”). Perbedaan kecil dalam kinerja tidak masalah; jika kinerja pada pelatihan jauh lebih baik, ada masalah.
Data frame mpg_train dan mpg_test, serta model mpg_model telah dimuat sebelumnya, bersama dengan fungsi rmse() dan r_squared().
Latihan ini adalah bagian dari kursus
Supervised Learning di R: Regresi
Petunjuk latihan
- Prediksi efisiensi bahan bakar dalam kota dari
hwypada datampg_train. Simpan prediksi ke kolompred. - Prediksi efisiensi bahan bakar dalam kota dari
hwypada datampg_test. Simpan prediksi ke kolompred. - Gunakan
rmse()untuk mengevaluasi RMSE pada himpunan uji dan pelatihan. Bandingkan. Apakah kinerjanya serupa? - Lakukan hal yang sama dengan
r_squared(). Apakah kinerjanya serupa? - Gunakan
ggplot2untuk memplot prediksi terhadapctypada datatest.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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()