Beim maschinellen Lernen geht es darum, Modelle zu erstellen, die genaue Vorhersagen treffen. Bewertungsmetriken bieten eine Möglichkeit, die Effizienz eines Modells zu messen, was es uns ermöglicht, Algorithmen basierend auf Leistungsergebnissen zu verfeinern oder sogar zu wechseln.
Das Konzept der „Wahrscheinlichkeit“ ist für viele dieser Metriken von zentraler Bedeutung. Es misst, wie gut die Vorhersagen eines Modells mit beobachteten Daten übereinstimmen. Daher spielt es eine entscheidende Rolle bei der Modellschulung und -bewertung.
Ein Modell mit höherer Wahrscheinlichkeit legt beispielsweise nahe, dass die beobachteten Daten unter den Annahmen des gegebenen Modells wahrscheinlicher sind.
Tech-Tools wie TensorFlow und PyTorch verwenden häufig wahrscheinlichkeitsbasierte Metriken, insbesondere bei Aufgaben wie Klassifizierung oder Sequenzvorhersage. Solche Tools, ausgestattet mit auf diese Metriken zugeschnittenen Funktionen und Bibliotheken, machen die Aufgabe der Modellevaluierung zugänglich und hocheffizient.
Das Verständnis der Wahrscheinlichkeit und der damit verbundenen Metriken ist für jeden, der sich mit maschinellem Lernen beschäftigt, von entscheidender Bedeutung. Es ermöglicht uns, die Grundlage für die Modellbewertung und -verbesserung zu schaffen.
Im Folgenden werfen wir einen genaueren Blick auf drei wichtige Bewertungsmetriken, um zu sehen, wie sie beim maschinellen Lernen funktionieren und miteinander in Beziehung stehen.
Crossentropy bewertet die Varianz zwischen zwei Wahrscheinlichkeitssätzen und stellt dabei häufig reale Datenmuster den prognostizierten Ergebnissen eines Modells gegenüber. Mathematisch ist die Kreuzentropie H(p, q)
für diskrete Verteilungen p
und q
gegeben durch:
H(p, q) = -\sum p(x) \log(q(x))
Dabei ist \( p(x) \) die wahre Wahrscheinlichkeit des Eintretens eines Ereignisses x
und q(x)
die geschätzte Wahrscheinlichkeit desselben Ereignisses gemäß dem Modell.
Es wird hauptsächlich bei Klassifizierungsproblemen angewendet, insbesondere in Szenarien, in denen die Ausgabe zu mehreren Klassen gehören kann. Es wird verwendet, weil es ein klares Maß dafür liefert, wie weit die Vorhersagen eines Modells von den tatsächlichen Ergebnissen abweichen. Je niedriger die Kreuzentropie, desto besser stimmen die Vorhersagen des Modells mit den wahren Werten überein.
Mehrere Softwarebibliotheken sind für Berechnungen mit Kreuzentropie ausgestattet. Vor allem:
tf.nn.softmax_cross_entropy_with_logits
, die die Kreuzentropie für Klassifizierungsprobleme direkt berechnen.
torch.nn.CrossEntropyLoss
, die für Klassifizierungsaufgaben mit mehreren Klassen geeignet sind.
log_loss
. Logloss, die Abkürzung für logarithmischer Verlust, misst die Genauigkeit eines Klassifikators, indem es falsche Klassifizierungen bestraft. Für eine binäre Klassifizierung mit echter Bezeichnung y
und vorhergesagter Wahrscheinlichkeit p
ist der Logloss gegeben durch:
L(y, p) = -y \log(p) - (1 - y) \log(1 - p)
Logloss ist im Wesentlichen die Kreuzentropie zwischen den wahren Bezeichnungen und den Vorhersagen für binäre Klassifizierungsprobleme. Bei der Erweiterung auf die Klassifizierung mehrerer Klassen fasst Logloss die Kreuzentropiewerte für jede Klasse zusammen, wodurch die beiden Metriken eng miteinander verknüpft werden.
Es wird hauptsächlich bei binären und Mehrklassen-Klassifizierungsproblemen eingesetzt. Seine Stärke liegt in seiner Fähigkeit, die Unsicherheit der Vorhersagen anhand der Abweichung von den tatsächlichen Bezeichnungen zu quantifizieren.
Ein perfektes Modell hätte einen Logloss von 0, in der Praxis liegen die Werte jedoch tendenziell darüber.
Eine Vielzahl von Softwarebibliotheken ermöglicht uns die Berechnung von Logloss:
Scikit-lernen . Als weit verbreitete Bibliothek für maschinelles Lernen bietet scikit-learn die Funktion log_loss
, die sowohl für binäre als auch für Klassifizierungsszenarien mit mehreren Klassen geeignet ist.
TensorFlow und PyTorch. Während sich diese Frameworks hauptsächlich auf neuronale Netze und Deep Learning konzentrieren, berechnen sie von Natur aus Logloss, wenn sie Kreuzentropieverlustfunktionen für Klassifizierungsaufgaben verwenden.
LightGBM und XGBoost. Diese Gradienten-verstärkenden Frameworks, die für ihre hohe Leistung bei tabellarischen Datenwettbewerben bekannt sind, enthalten auch Funktionen zur Berechnung des Logloss, die besonders nützlich sind, wenn die Modellleistung bei Klassifizierungsherausforderungen bewertet wird.
Dies ist ein Maß dafür, wie gut die Wahrscheinlichkeitsverteilung oder das Wahrscheinlichkeitsmodell eine Stichprobe vorhersagt.
Gegeben von:
Perplexity(P) = 2^{H(P)}
wobei H(P)
die Kreuzentropie der Verteilung P
ist, stellt Perplexität effektiv die gewichtete durchschnittliche Anzahl von Wahlmöglichkeiten dar, die ein Modell an jedem Entscheidungspunkt zu haben glaubt.
Im Kontext der Kreuzentropie entspricht ein höherer Kreuzentropiewert einer höheren Verwirrung, was darauf hindeutet, dass das Modell unsicherer in seinen Vorhersagen ist.
Die bemerkenswerteste Anwendung von Perplexity sind Sprachmodelle, bei denen gemessen wird, wie gut ein Modell eine Wortfolge vorhersagt. Ein Modell mit geringerer Perplexität gilt als überlegen, da es weniger durchschnittliche Verzweigungsfaktoren aufweist, oder einfacher ausgedrückt, es ist sicherer über das nächste Wort in einer Sequenz.
Abgesehen von Sprachmodellen kann Ratlosigkeit auch eine relevante Metrik in anderen Wahrscheinlichkeitsmodellen sein, bei denen die Vorhersagequalität über Sequenzen oder Verteilungen entscheidend ist.
Mehrere Tools und Plattformen helfen bei der Berechnung und Interpretation von Ratlosigkeit:
NLTK . Das Natural Language Toolkit bietet Dienstprogramme zum Erstellen probabilistischer Sprachmodelle und berechnet Perplexität zur Bewertung dieser Modelle.
TensorFlow und PyTorch. Für Deep-Learning-basierte Sprachmodelle bieten beide Frameworks Funktionen zur Berechnung der Kreuzentropie, die dann mithilfe der obigen Formel in Perplexität übersetzt werden kann.
Gensim . Gensim ist vor allem für die Themenmodellierung bekannt und enthält auch Methoden zur Berechnung der Perplexität, die besonders nützlich sind, wenn die Kohärenz der generierten Themen bewertet wird.
Kreuzentropie, Logloss und Perplexität sind allesamt Metriken, die in der Informationstheorie und der probabilistischen Modellierung verwurzelt sind. Ihr Hauptzweck besteht darin, die Qualität von Vorhersagen zu bewerten, sei es zur Klassifizierung oder zur Schätzung der Wahrscheinlichkeitsverteilung. Auf hohem Niveau:
Als universelle Metrik eignet sich die Kreuzentropie gut für Probleme, bei denen das Ziel darin besteht, eine bestimmte Wahrscheinlichkeitsverteilung anzunähern oder abzugleichen. Es glänzt bei Klassifizierungsaufgaben mit mehreren Klassen. Beispiele hierfür sind die Bildklassifizierung, bei der jedes Bild zu einer von mehreren Kategorien gehören könnte, oder die Vorhersage der Art der Krankheit, an der ein Patient möglicherweise aufgrund seiner Symptome leidet.
Logloss ist auf die Klassifizierung zugeschnitten und wird zur bevorzugten Metrik für Binär- und Mehrklassenprobleme, wobei sichere falsche Vorhersagen stark bestraft werden. Seine Stärke liegt in seiner Sensibilität für genaue probabilistische Vorhersagen.
Zum Beispiel bei der Spam-Erkennung (Spam oder nicht Spam), der Vorhersage der Kundenabwanderung (wird abwandern oder nicht) oder der Vorhersage, ob eine bestimmte Transaktion betrügerisch ist.
Schließlich wird Perplexität hauptsächlich bei der Sprachmodellierung verwendet und beurteilt, wie gut ein Modell Sequenzen vorhersagt. Niedrigere Werte weisen auf ein Modell hin, dessen sequentielle Vorhersagen sicherer sind. Es kann für Textgenerierungsaufgaben, maschinelle Übersetzung oder Spracherkennung verwendet werden, bei denen das Modell das nächste Wort oder die nächste Phrase in einer Sequenz vorhersagt.
Während sich alle drei Metriken mit der Bewertung probabilistischer Modelle befassen, unterscheidet sich ihre Anwendbarkeit je nach Art der Aufgabe: Verteilungsabgleich, Klassifizierung oder Sequenzvorhersage.
Ein erfahrener Experte für maschinelles Lernen wählt die für die Aufgabe am besten geeignete Metrik aus, um eine möglichst aussagekräftige Bewertung der Modellleistung zu gewährleisten.
Das Erkennen der Nuancen von Bewertungsmetriken wie Kreuzentropie, Logloss und Ratlosigkeit hat direkten Einfluss auf die fundierte Entscheidungsfindung in maschinellen Lernprojekten. Jede dieser Metriken hat mit ihren eigenen Merkmalen und Verwendungszwecken großen Einfluss auf die Präzision und Vertrauenswürdigkeit von Vorhersagemodellen.
In ML erleichtert die Verwendung von Plattformen wie TensorFlow, Scikit-learn und NLTK die Berechnung von Metriken und verbessert die Modellbewertungen. Stellen Sie immer sicher, dass die gewählte Metrik mit den Projektzielen übereinstimmt, um das beste Ergebnis zu erzielen.
Natürlich ist es einfach, bekannte Tools so anzuwenden, wie Sie es gewohnt sind, aber sie wirklich zu verstehen, kann am Ende von größerem Nutzen sein. Lernen Sie weiter und wählen Sie für jede Aufgabe, vor der Sie stehen, die richtige Metrik aus.