Die Receiver-Operating-Characteristic-Kurve (ROC Kurve) ist eine weit verbreitete Bewertungsmetrik beim maschinellen Lernen und bei statistischen Klassifizierungsaufgaben. Sie ist eine grafische Darstellung der Leistung eines binären Klassifizierungssystems, wenn die Unterscheidungsschwelle variiert wird. Sie bietet eine umfassende Bewertung des Kompromisses zwischen der Rate der echten positiven Ergebnisse (TPR) und der Rate der falschen positiven Ergebnisse (FPR) über alle möglichen Klassifizierungsschwellen hinweg.
Dieser Artikel soll ein detailliertes Verständnis der ROC-Kurve, ihrer Interpretation und ihrer Anwendungen in verschiedenen Bereichen vermitteln.
Wie beurteilt man eine Klassifikation?
Im einfachsten Fall besteht eine Klassifikation aus zwei Zuständen. Nehmen wir an, wir wollen untersuchen, wie gut Corona-Tests den Infektionsstatus eines Patienten wiedergeben. In diesem Fall dient der Corona-Test als Klassifikator für insgesamt zwei Zustände: infiziert oder nicht-infiziert.
Diese beiden Klassen können zu insgesamt vier Zuständen führen, je nachdem, ob die Klassifizierung des Tests wirklich richtig war:
- Wahr positiv: Der Schnelltest stuft die Person als infiziert ein und ein anschließender PCR-Test bestätigt dieses Ergebnis. Der Schnelltest war also richtig.
- Falsch positiv: Der Schnelltest stuft eine Person als positiv ein, aber ein anschließender PCR-Test zeigt, dass die Person tatsächlich nicht infiziert, also negativ ist.
- Richtig Negativ: Der Schnelltest ist negativ und die Person ist tatsächlich nicht infiziert.
- Falsch-negativ: Der Corona-Schnelltest stuft die getestete Person als gesund, d. h. negativ, ein, die Person ist jedoch infiziert und müsste daher einen positiven Schnelltest aufweisen.
Was ist die ROC Kurve und wie ist sie zu interpretieren?
Die ROC Kurve ist eine grafische Darstellung der Leistung eines binären Klassifikators über einen Bereich von Schwellenwerten. Sie wird in der Regel als ein Diagramm dargestellt, in dem die Wahr-Positiv-Rate (TPR) auf der y-Achse gegen die Falsch-Positiv-Rate (FPR) auf der x-Achse aufgetragen wird.
Die ROC Kurve ist ein nützliches Instrument zur Bewertung der Leistung eines Klassifikators, da sie es uns ermöglicht, den Kompromiss zwischen der TPR und der FPR bei verschiedenen Schwellenwerten zu bewerten. Durch Variieren des Schwellenwerts können wir das Gleichgewicht zwischen den beiden Werten anpassen. Wenn wir beispielsweise die Falsch-Positiv-Rate minimieren wollen, können wir einen Schwellenwert wählen, der eine hohe Rate an echten Positiven und eine niedrige Falsch-Positiv-Rate ergibt.
Der ideale Klassifikator hätte eine TPR von 1 und eine FPR von 0, was einem Punkt in der oberen linken Ecke des Diagramms entsprechen würde. In der Praxis sind Klassifikatoren jedoch nie perfekt, und die ROC-Kurve wird irgendwo zwischen der diagonalen Linie (die dem zufälligen Raten entspricht) und der oberen linken Ecke liegen. Je näher die Kurve an der oberen linken Ecke liegt, desto besser ist die Leistung des Klassifizierers.

Die Fläche unter der ROC Kurve (AUC) wird häufig als zusammenfassende Statistik für die Gesamtleistung eines Klassifikators verwendet. Die Werte reichen von 0 bis 1, wobei ein Wert von 0,5 einer zufälligen Schätzung entspricht und ein Wert von 1 eine perfekte Klassifizierung anzeigt. Ein Klassifikator mit einem AUC-Wert von 0,8 oder höher wird im Allgemeinen als leistungsfähig angesehen, während ein Wert von weniger als 0,5 darauf hinweist, dass der Klassifikator schlechter abschneidet als zufälliges Raten.
Die Interpretation der ROC Kurve und des AUC-Wertes kann schwierig sein, insbesondere wenn die Leistung verschiedener Klassifikatoren verglichen wird. Es ist wichtig zu bedenken, dass die Kurve und der Wert nichts über die tatsächliche Leistung des Klassifikators bei bestimmten Datenpunkten aussagen. Vielmehr geben sie einen Überblick über die Gesamtleistung des Klassifikators in einem Bereich von Schwellenwerten. Daher ist es wichtig, andere Metriken wie Präzision, Recall und F1-Score in Verbindung mit diesen Maßen zu verwenden, um ein vollständigeres Bild von der Leistung des Klassifikators zu erhalten.
Was ist der Bereich unter der Kurve?
Die ROC-Kurve bietet eine nützliche Visualisierung des Kompromisses zwischen der Rate der echten Positiven und der Rate der Falsch-Positiven, aber es kann schwierig sein, Klassifizierer allein anhand der Form der Kurve zu vergleichen. Um ein quantitativeres Maß für die Klassifikatorleistung zu erhalten, wird häufig die Fläche unter der ROC-Kurve (AUC) verwendet.
Die Wert der Area under the Curve reicht von 0 bis 1, wobei ein Wert von 0,5 für einen zufälligen Klassifikator und ein Wert von 1 für einen perfekten Klassifikator steht. Sie gibt die Wahrscheinlichkeit an, dass eine zufällig ausgewählte positive Instanz vom Klassifikator höher eingestuft wird als eine zufällig ausgewählte negative Instanz.
Ein AUC-Wert von 0,5 bedeutet, dass der Klassifikator nicht besser ist als der Zufallswert, während ein Wert von mehr als 0,5 bedeutet, dass der Klassifikator besser ist als der Zufallswert. Ein Wert nahe bei 1 deutet darauf hin, dass der Klassifikator sehr gut zwischen positiven und negativen Instanzen unterscheidet.
Ein Vorteil der Area under the Curve als Leistungsmaß ist, dass er unabhängig von der Klassenverteilung und der Auswahl der Schwellenwerte ist. Außerdem kann sie als die Wahrscheinlichkeit interpretiert werden, dass der Klassifikator eine positive Instanz höher einstuft als eine negative Instanz, was in vielen Anwendungen nützlich sein kann.
Wie kann man die ROC Kurve bei Klassifizierungen mit mehreren Kategorien verwenden?
Die ROC Kurve wird in der Regel für binäre Klassifizierungsprobleme verwendet, sie kann aber genauso auf Mehrklassenprobleme ausgedehnt werden. Bei der Mehrklassenklassifikation gibt es mehrere Klassen, die vorhergesagt werden müssen, was sie komplexer macht als die binäre Klassifikation. Um eine ROC Kurve für Mehrklassenprobleme zu erstellen, müssen wir einen Eins-gegen-Alle (OVA)-Ansatz verwenden. Das bedeutet, dass wir jede Klasse als die positive Klasse behandeln und die verbleibenden Klassen als die negative Klasse zusammenfassen. Anschließend berechnen wir die ROC-Kurve für jede Klasse und kombinieren sie zu einer Mehrklassen-Kurve.
Die Mehrklassen-ROC-Kurve wird in der Regel mit Hilfe einer Mikro- oder Makro-Mittelwertbildung dargestellt. Bei der Mikro-Mittelwertbildung werden die echten positiven, falsch-positiven und falsch-negativen Ergebnisse für alle Klassen kombiniert und eine einzige Kurve berechnet. Bei diesem Ansatz werden alle Klassen, unabhängig von ihrer Größe, gleich gewichtet. Beim Ansatz der Makro-Mittelwertbildung wird für jede Klasse eine eigene Kurve berechnet und dann der Durchschnitt der Kurven gebildet. Bei diesem Ansatz werden alle Klassen, unabhängig von ihrer Größe, gleich gewichtet.
Der AUC für Mehrklassen-ROC-Kurven kann genauso mit dem Ansatz der Mikro-Mittelung oder der Makro-Mittelung berechnet werden. Beim Ansatz der Mikro-Mittelwertbildung wird die AUC durch Kombination der wahren positiven, falsch positiven und falsch negativen Ergebnisse aller Klassen berechnet. Bei der Makro-Mittelwertbildung wird die AUC für jede Klasse berechnet und dann der Durchschnitt der AUC-Werte ermittelt.
Insgesamt bietet die ROC-Kurve für Mehrklassen-Klassifizierungsprobleme eine nützliche visuelle Darstellung der Leistung eines Klassifizierers für alle Klassen. Der AUC ist ein wertvolles Maß für die Gesamtleistung des Klassifikators, das zum Vergleich der Leistung verschiedener Klassifikatoren für denselben Datensatz verwendet werden kann.
Wie sieht es im Vergleich zu anderen Bewertungsmetriken aus?
Die ROC-Kurve ist eine weit verbreitete Bewertungskennzahl für binäre Klassifizierungsprobleme. Es ist jedoch zu beachten, dass sie nicht die einzige verfügbare Evaluierungsmetrik ist und dass sie nicht immer die am besten geeignete Metrik ist.
In bestimmten Szenarien können andere Bewertungsmetriken wie Präzision, Recall und F1-Score relevanter sein. Bei einigen medizinischen Diagnoseanwendungen kann es beispielsweise wichtiger sein, eine hohe Trefferquote (d. h. die korrekte Identifizierung aller positiven Fälle) zu erzielen, obwohl ein gewisses Maß an Präzision geopfert werden muss (d. h., dass einige falsch-positive Fälle enthalten sind).
Außerdem ist zu beachten, dass die ROC-Kurve die Unausgewogenheit der Klassen im Datensatz nicht direkt berücksichtigt. In stark unausgewogenen Datensätzen, in denen eine Klasse viel häufiger vorkommt als die andere, liefert die Kurve möglicherweise keine genaue Darstellung der Leistung des Klassifikators. In solchen Fällen kann es sinnvoller sein, Metriken wie die Precision-Recall-Kurve zu verwenden, die für unausgewogene Datensätze besser geeignet sind.
Insgesamt ist die ROC-Kurve zwar eine nützliche und weit verbreitete Bewertungsmetrik, sie sollte jedoch in Verbindung mit anderen Bewertungsmetriken verwendet werden, um die Leistung eines Klassifikators in verschiedenen Szenarien vollständig zu beurteilen.
Kann man sie bei unausgewogenen Datensätzen verwenden?
Die ROC-Kurve ist ein nützliches Instrument zur Bewertung der Leistung von Klassifikatoren, insbesondere im Zusammenhang mit unausgewogenen Datensätzen. In unausgewogenen Datensätzen ist die Anzahl der Instanzen einer Klasse viel größer als die der anderen, was es schwierig macht, die Minderheitsklasse genau zu klassifizieren. In solchen Fällen ist die Genauigkeit kein zuverlässiger Maßstab für die Bewertung der Leistung des Klassifikators, da sie aufgrund der hohen Anzahl von Instanzen der Mehrheitsklasse irreführend sein kann.
Die ROC-Kurve ist in solchen Szenarien besonders nützlich, da sie eine visuelle Darstellung des Kompromisses zwischen der Rate der echten positiven Ergebnisse und der Falsch-Positiv-Rate bei verschiedenen Schwellenwerten bietet. Durch die Auswahl eines geeigneten Schwellenwerts können die Kosten für falsch-positive Ergebnisse gegen die Kosten für falsch-negative Ergebnisse abgewogen werden.
Darüber hinaus ist die AUC-Metrik besonders nützlich bei unausgewogenen Datensätzen, da sie die Leistung der ROC-Kurve über alle möglichen Schwellenwerte zusammenfasst. Ein hoher Wert zeigt an, dass der Klassifikator gut zwischen positiven und negativen Klassen unterscheiden kann, selbst wenn der Datensatz unausgewogen ist.
Es ist jedoch zu bedenken, dass die ROC-Kurve keine Informationen über die Prävalenz oder die Kosten der verschiedenen Fehlertypen liefert. In einigen Fällen können andere Kennzahlen wie Präzision und Recall besser geeignet sein, insbesondere wenn die Kosten einer bestimmten Fehlerart hoch sind. Daher ist es wichtig, bei der Bewertung der Leistung des Klassifikators den Kontext und die spezifischen Anforderungen des Problems zu berücksichtigen.
Das solltest Du mitnehmen
- Die Receiver Operating Characteristic (ROC)-Kurve ist eine grafische Darstellung der Leistung eines binären Klassifizierungssystems.
- Sie wird erstellt, indem die Wahr-Positiv-Rate (TPR) gegen die Falsch-Positiv-Rate (FPR) bei verschiedenen Schwellenwerteinstellungen aufgetragen wird.
- Der Schwellenwert bestimmt den Kompromiss zwischen TPR und FPR und hat Auswirkungen auf die Leistung des Klassifikators.
- Die Kurve kann auf der Grundlage ihrer Steigung und Form interpretiert werden.
- Die Fläche unter der Kurve (Area Under the Curve, AUC) ist eine häufig verwendete Metrik, um die Leistung des Klassifikators zusammenzufassen.
- Das Diagramm kann auf Mehrklassen-Klassifizierungsprobleme ausgedehnt werden, aber die Interpretation ist komplexer.
- Die ROC-Kurve bietet einen nützlichen Vergleich mit anderen Bewertungsmetriken wie Präzision und Recall und kann im Zusammenhang mit unausgewogenen Datensätzen zur Bewertung der Leistung eines Klassifizierers nützlich sein.
Andere Beiträge zum Thema ROC Kurve
Scikit-Learn bietet leistungsstarke Funktionen und Module, um diese Maße und Diagramme zu erstellen. Die Dokumentation findest Du hier.