linkedin logo xing logo Alessio Analytics E-mail Icon

Confusion Matrix

 ∗∗∗ 31. Juli 2019 ∗∗∗ Kategorien: Data Science as a Service ∗∗∗ Schlagwörter: , , , ,

 ∗∗∗ 31. Juli 2019 ∗∗∗ Kategorien: Data Science as a Service ∗∗∗ Schlagwörter: , , , ,

Die Leistung eines Machine Learning Klassifikationsalgorithmus zu bestimmen ist kein leichtes Unterfangen. Schließlich werden hier Vorhersagen auf Basis von tausenden von Daten getroffen, die wiederum selbst eine Vielzahl an Features enthalten. In der Regel trennt man beim Erstellen von Trainings- und Test- und Validierungsdaten aus einer vorhandenen Datenquelle zwischen 70%, 20% und 10%. Somit würde ein Datensatz mit 100.000 Einträgen in 70.000 Trainings-, 20.000 Test- und 10.000 Validierungsdateneinträgen aufgeteilt werden. Solch eine Menge auf ihre Qualität zu überprüfen würde ohne Hilfsmittel überaus kompliziert sein. An dieser Stelle manuell einen stumpfen empirischen Vergleich zwischen Vorhersage und Realwerten durchzuführen ist aufgrund der riesigen Datenmenge keine Option.

Auch ein klassischer Accuracy Score, der die Anzahl der korrekten Vorhersagen mit der Anzahl aller Daten abgleicht, ist nicht zwingend aussagekräftig. Existiert beispielsweise eine Klasse, die häufiger in der Datenbasis vertreten ist und unabhängig von den Daten stetig vorhergesagt wird, erhalten diese Predictions einen hohen Score. So kann es im Fall eines Recommendersystems sein, dass ein Kunde 99% der vorhandenen Produkte nicht gekauft hat. Hierdurch erhält eine Vorhersage, die besagt dass kein Produkt gekauft wird, einen hohen Score, der in diesem Fall nichts über die Qualität des Algorithmus aussagt. Dieses Ergebnis geht folglich nicht tiefer auf die vorhandenen Daten ein.

Um Machine Learning Algorithmen tiefergehend zu evaluieren, sollte man eine Confusion Matrix herananziehen.

Grundlagen der Confusion Matrix

Grundlegend ist eine Confusion Matrix eine Tabelle mit vier Feldern. Diese vier Felder bilden sowohl die Vorhersagen des Machine Learning Algorithmus, als auch die tatsächlichen Ergebnisse aus dem Testdatenset, ab. In diesem Sinne werden die Vorhersagen als Positive und Negative abgebildet, während die tatsächlichen Daten als True und False bezeichnet werden. Beide Informationen werden dann zusammengeführt um die vier möglichen Szenarien abzubilden:

Folglich behandelt die Confusion Matrix die Möglichkeiten eines binär definierten Falls, wie er durch Wahrheitswerte ausgedrückt wird, und bildet diesen in Form einer Matrix ab.

Die Berechnung

Letztendlich gibt die vorgestellte Matrix jedoch nicht die finalen Zahlenwerte, anhand derer die Performance bewertet wird, zurück. Die Performance kann man anschließend, durch die für die Evaluation eines Machine Learning Algorithmus relevanten Werte, berechnen. Diese sind Precision, Recall und der F-Score.

Die Precision trifft Aussagen darüber wie präzise die getätigten Vorhersagen sind. Dies bedeutet, dass Zahl der eingetroffenen positiven Vorhersagen mit der aller positiven Vorhersagen abgeglichen wird. In anderen Worten: Man dividiert die Anzahl der eingetroffenen positiven Vorhersagen durch die Summe der eingetroffenen positiven Vorhersagen und der nicht eingetroffenen positiven Vorhersagen.

Recall hingegen setzt die wahren Vorhersagen in Relation zu den falschen Vorhersagen. Folglich überprüft der Recall wie viele Entscheidungen wirklich vorhergesagt wurden. Dieser Wert wird berechnet, indem man die Anzahl aller wahren positiven Vorhersagen durch die Summe der wahren positiven Vorhersagen und der falschen negativen Vorhersagen teilt.

Ergänzend hierzu dient der F-Score dem Zweck Precision und Recall eines Falls zusammenfassend zu betrachten. Hierfür müssen folglich zunächst beide Werte berechnet sein. Im Prinzip handelt es sich hierbei jedoch lediglich um die Berechnung der harmonischen Mittels beider Werte.

Um ideale Ergebnisse anzuzeigen sollten diese Werte besonders hoch sein. Weiterhin ist hierbei zu beachten, dass auf Basis ihrer Natur keine dieser Berechnungen einen höheren Wert als 1 zurückgeben sollte.

Fazit

Die Confusion Matrix erweist sich als ein sehr gutes und leicht verständliches Mittel zur Evaluierung der Vorhersagen eines Machine Learning Klassifikationsalgorithmus. Schließlich werden für diese Bewertung die Präzision (precision) und Trefferquote (recall) der Vorhersagen untersucht und nicht einfach nur die relative Häufigkeit der richtigen Vorhersagen.