Evaluasi Decision Tree
Anda dapat menilai kualitas model dengan mengevaluasi kinerjanya pada data pengujian. Karena model tidak dilatih pada data ini, penilaian ini bersifat objektif.
Sebuah confusion matrix memberikan rincian yang berguna antara prediksi dan nilai yang diketahui. Terdapat empat sel yang merepresentasikan jumlah:
- True Negatives (TN) — model memprediksi hasil negatif dan hasil yang diketahui juga negatif
- True Positives (TP) — model memprediksi hasil positif dan hasil yang diketahui juga positif
- False Negatives (FN) — model memprediksi hasil negatif tetapi hasil yang diketahui positif
- False Positives (FP) — model memprediksi hasil positif tetapi hasil yang diketahui negatif.
Jumlah ini (TN, TP, FN, dan FP) harus menjumlah hingga sama dengan jumlah rekaman pada data pengujian, yang merupakan subset dari data penerbangan. Anda dapat membandingkannya dengan jumlah rekaman pada data uji, yaitu flights_test.count().
Catatan: Prediksi ini dibuat pada data pengujian, sehingga jumlahnya lebih kecil daripada jika prediksi dibuat pada data pelatihan.
Latihan ini merupakan bagian dari kursus
Machine Learning dengan PySpark
Instruksi 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 langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# 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)