Melakukan cross-validation pada model durasi penerbangan sederhana
Anda sudah membangun beberapa model untuk memprediksi durasi penerbangan dan mengevaluasinya dengan pembagian train/test sederhana. Namun, cross-validation memberikan cara yang jauh lebih baik untuk mengevaluasi kinerja model.
Dalam latihan ini Anda akan melatih model sederhana untuk durasi penerbangan menggunakan cross-validation. Waktu tempuh biasanya berkorelasi kuat dengan jarak, sehingga menggunakan kolom km saja seharusnya sudah memberikan model yang cukup baik.
Data telah dibagi secara acak menjadi flights_train dan flights_test.
Kelas-kelas berikut sudah diimpor: LinearRegression, RegressionEvaluator, ParamGridBuilder, dan CrossValidator.
Latihan ini adalah bagian dari kursus
Machine Learning dengan PySpark
Petunjuk latihan
- Buat grid parameter kosong.
- Buat objek untuk membangun dan mengevaluasi model regresi linear. Model harus memprediksi kolom "duration".
- Buat objek cross-validator. Sediakan nilai untuk argumen
estimator,estimatorParamMaps, danevaluator. Pilih cross-validation 5-fold. - Latih dan uji model pada beberapa lipatan data pelatihan.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Create an empty parameter grid
params = ____().____()
# Create objects for building and evaluating a regression model
regression = ____(____)
evaluator = ____(____)
# Create a cross validator
cv = ____(estimator=____, estimatorParamMaps=____, evaluator=____, ____)
# Train and test model on multiple folds of the training data
cv = cv.____(____)
# NOTE: Since cross-valdiation builds multiple models, the fit() method can take a little while to complete.