LoslegenKostenlos loslegen

Ermittle eine Confusion Matrix

Wie du im Video gesehen hast, ist eine Confusion Matrix ein sehr nützliches Werkzeug, um die Ausgabe eines Modells zu kalibrieren und alle möglichen Ergebnisse deiner Vorhersagen zu betrachten (True Positive, True Negative, False Positive, False Negative).

Bevor du deine Confusion Matrix erstellst, musst du deine vorhergesagten Wahrscheinlichkeiten an einem gegebenen Schwellenwert „abschneiden“, um Wahrscheinlichkeiten in einen Faktor mit Klassenvorhersagen umzuwandeln. Kombiniere ifelse() mit factor() wie folgt:

pos_or_neg <- ifelse(probability_prediction > threshold, positive_class, negative_class)
p_class <- factor(pos_or_neg, levels = levels(test_values))

confusionMatrix() in caret erweitert table() aus Base R, indem es zusätzlich zu den Grundraten in der Tabelle viele nützliche Begleitstatistiken hinzufügt. Du kannst die Confusion Matrix (und die zugehörigen Statistiken) mithilfe der vorhergesagten Ergebnisse sowie der tatsächlichen Ergebnisse berechnen, z. B. so:

confusionMatrix(p_class, test_values)

Diese Übung ist Teil des Kurses

Maschinelles Lernen mit caret in R

Kurs anzeigen

Anleitung zur Übung

  • Verwende ifelse(), um einen Character-Vektor m_or_r zu erstellen, der die positive Klasse "M" enthält, wenn p größer als 0.5 ist, und sonst die negative Klasse "R".
  • Wandle m_or_r in einen Faktor p_class um, dessen Levels dieselben sind wie die von test[["Class"]].
  • Erstelle eine Confusion Matrix mit confusionMatrix(), und übergib p_class sowie die Spalte "Class" aus dem test-Datensatz.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# If p exceeds threshold of 0.5, M else R: m_or_r


# Convert to factor: p_class


# Create confusion matrix
Code bearbeiten und ausführen