Das logistische Regressionsmodell checken
Genauigkeit ist im Allgemeinen kein besonders zuverlässiger Messwert, da sie durch die häufigste Zielklasse verzerrt werden kann.
Es gibt noch zwei weitere nützliche Kennzahlen:
- Präzision und
- zurückrufen.
Schau dir die Folien zu dieser Lektion an, um die passenden Ausdrücke zu finden.
Präzision ist der Anteil der positiven Vorhersagen, die richtig sind. Wie viele der Flüge, die voraussichtlich Verspätung haben, sind tatsächlich verspätet?
Die Recall-Rate ist der Anteil der positiven Ergebnisse, die richtig vorhergesagt wurden. Wie viele der verspäteten Flüge hat das Modell richtig vorhergesagt?
Die Präzision und der Recall werden normalerweise anhand der positiven Zielklasse angegeben. Man kann aber auch gewichtete Versionen dieser Metriken berechnen, die beide Zielklassen berücksichtigen.
Die Teile der Verwechslungsmatrix findest du unter TN
, TP
, FN
und FP
sowie im Objekt „ prediction
”.
Diese Übung ist Teil des Kurses
Maschinelles Lernen mit PySpark
Anleitung zur Übung
- Finde die Genauigkeit und den Rückruf.
- Mach einen Multi-Class-Evaluator und schau dir die gewichtete Genauigkeit an.
- Erstell einen binären Evaluator und berechne den AUC-Wert mit der Metrik „
"areaUnderROC"
“.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
from pyspark.ml.evaluation import MulticlassClassificationEvaluator, BinaryClassificationEvaluator
# Calculate precision and recall
precision = ____
recall = ____
print('precision = {:.2f}\nrecall = {:.2f}'.format(precision, recall))
# Find weighted precision
multi_evaluator = ____
weighted_precision = multi_evaluator.____(prediction, {multi_evaluator.metricName: "____"})
# Find AUC
binary_evaluator = ____
auc = binary_evaluator.____(____, {____})