Evaluasi Decision Tree
Anda dapat menilai kualitas model dengan mengevaluasi kinerjanya pada data pengujian. Karena model tidak dilatih pada data ini, evaluasi ini merupakan penilaian objektif terhadap model.
Sebuah confusion matrix memberikan rincian yang bermanfaat antara prediksi dan nilai sebenarnya. Terdapat empat sel yang merepresentasikan jumlah dari:
- True Negatives (TN) — model memprediksi hasil negatif & hasil sebenarnya negatif
- True Positives (TP) — model memprediksi hasil positif & hasil sebenarnya positif
- False Negatives (FN) — model memprediksi hasil negatif tetapi hasil sebenarnya positif
- False Positives (FP) — model memprediksi hasil positif tetapi hasil sebenarnya negatif.
Jumlah ini (TN, TP, FN, dan FP) seharusnya menjumlah ke jumlah rekaman dalam data pengujian, yang merupakan subset dari data penerbangan. Anda dapat membandingkannya dengan jumlah rekaman dalam data pengujian, yaitu flights_test.count().
Catatan: Prediksi ini dibuat pada data testing, sehingga jumlahnya lebih kecil dibandingkan jika prediksi dilakukan pada data pelatihan.
Latihan ini adalah bagian dari kursus
Machine Learning dengan PySpark
Petunjuk latihan
- Buat confusion matrix dengan menghitung kombinasi
labeldanprediction. Tampilkan hasilnya. - Hitung jumlah True Negatives, True Positives, False Negatives, dan False Positives.
- Hitung akurasi.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Create a confusion matrix
prediction.groupBy(____, 'prediction').____().____()
# Calculate the elements of the confusion matrix
TN = prediction.filter('prediction = 0 AND label = prediction').count()
TP = prediction.____('____ AND ____').____()
FN = prediction.____('____ AND ____').____()
FP = prediction.____('____ AND ____').____()
# Accuracy measures the proportion of correct predictions
accuracy = ____
print(accuracy)