Valuta il Decision Tree
Puoi valutare la qualità del tuo modello misurando quanto bene si comporta sui dati di test. Poiché il modello non è stato addestrato su questi dati, questa è una valutazione oggettiva del modello.
Una confusion matrix fornisce una scomposizione utile tra predizioni e valori noti. Ha quattro celle che rappresentano i conteggi di:
- True Negatives (TN) — il modello predice un esito negativo e l'esito noto è negativo
- True Positives (TP) — il modello predice un esito positivo e l'esito noto è positivo
- False Negatives (FN) — il modello predice un esito negativo ma l'esito noto è positivo
- False Positives (FP) — il modello predice un esito positivo ma l'esito noto è negativo.
Questi conteggi (TN, TP, FN e FP) dovrebbero sommare al numero di record nei dati di test, che è solo un sottoinsieme dei dati sui voli. Puoi confrontare con il numero di record nei dati di test, cioè flights_test.count().
Nota: Queste predizioni sono fatte sui dati di test, quindi i conteggi sono più piccoli di quelli che otterresti facendo predizioni sui dati di training.
Questo esercizio fa parte del corso
Machine Learning con PySpark
Istruzioni dell'esercizio
- Crea una confusion matrix contando le combinazioni di
labeleprediction. Mostra il risultato. - Conta il numero di True Negatives, True Positives, False Negatives e False Positives.
- Calcola l'accuracy.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# 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)