Entscheidungsbaum bewerten
Du kannst die Qualität deines Modells beurteilen, indem du schaust, wie gut es mit den Testdaten klappt. Da das Modell nicht mit diesen Daten trainiert wurde, ist das eine objektive Bewertung des Modells.
Eine Verwechslungsmatrix zeigt, wie die Vorhersagen im Vergleich zu den bekannten Werten aussehen. Es hat vier Zellen, die Folgendes anzeigen:
- Echte Negativfälle (TN) – das Modell sagt ein negatives Ergebnis voraus und das bekannte Ergebnis ist negativ.
- Echte Positive (TP) – das Modell sagt ein positives Ergebnis voraus und das bekannte Ergebnis ist positiv.
- Falsch negative Ergebnisse (FN) – Das Modell sagt ein negatives Ergebnis voraus, aber das bekannte Ergebnis ist positiv.
- Falsch positive Ergebnisse (FP) – das Modell sagt ein positives Ergebnis voraus, aber das bekannte Ergebnis ist negativ.
Diese Zählungen (TN
, TP
, FN
und FP
) sollten zusammen die Anzahl der Datensätze in den Testdaten ergeben, die nur ein Teil der Flugdaten sind. Du kannst das mit der Anzahl der Datensätze in den Testdaten vergleichen, die du hier findest: flights_test.count()
.
Hinweis: Diese Vorhersagen basieren auf den Testdaten, daher sind die Zahlen kleiner als bei Vorhersagen auf Basis der Trainingsdaten.
Diese Übung ist Teil des Kurses
Maschinelles Lernen mit PySpark
Anleitung zur Übung
- Erstell eine Verwechslungsmatrix, indem du die Kombinationen von „
label
“ und „prediction
“ zählst. Zeig das Ergebnis an. - Zähl die Anzahl der echten Negativen, echten Positiven, falschen Negativen und falschen Positiven.
- Berechne die Genauigkeit.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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)