Frage

Ich verwende das Ruby-Klassifikator-Juwel , dessen Klassifizierungsmethode die Ergebnisse für eine bestimmte Zeichenfolge zurückgibt, die anhand des trainierten Modells klassifiziert wurde.

Ist die Punktzahl ein Prozentsatz?Wenn ja, beträgt die maximale Differenz 100 Punkte?

War es hilfreich?

Lösung

Es ist der Logarithmus einer Wahrscheinlichkeit.Bei einem großen trainierten Satz sind die tatsächlichen Wahrscheinlichkeiten sehr kleine Zahlen, sodass die Logarithmen leichter zu vergleichen sind.Theoretisch reichen die Werte von infinitesimal nahe Null bis negativ unendlich.10**score * 100.0 gibt Ihnen die tatsächliche Wahrscheinlichkeit an, die tatsächlich eine maximale Differenz von 100 aufweist.

Andere Tipps

Um die Wahrscheinlichkeit eines typischen naiven Bayes-Klassifikators zu berechnen, bei dem b die Basis ist, ist dies b ^ score / (1 + b ^ score). Dies ist das inverse Logit (http://en.wikipedia.org/wiki/Logit). Angesichts der Unabhängigkeitsannahmen des NBC sind diese Scores jedoch tendenziell zu hoch oder zu niedrig, und die auf diese Weise berechneten Wahrscheinlichkeiten häufen sich an den Grenzen . Es ist besser, die Punktzahlen in einem Holdout-Set zu berechnen und eine logistische Regression der Genauigkeit (1 oder 0) der Punktzahl durchzuführen, um ein besseres Gefühl für die Beziehung zwischen Punktzahl und Wahrscheinlichkeit zu erhalten.

Aus einer Zeitung von Jason Rennie: 2.7 Naive Bayes-Ausgaben sind oft überlastet Textdatenbanken haben häufig 10.000 bis 100.000 verschiedene Vokabeln; Dokumente enthalten oft 100 oder mehr Begriffe. Daher besteht eine große Möglichkeit zur Vervielfältigung. Um ein Gefühl dafür zu bekommen, wie viel Duplizierung vorhanden ist, haben wir einen MAP Naive Bayes trainiert Modell mit 80% der 20 Newsgroups-Dokumente. Wir produzierten p (cjd; D) (posterior) Werte für die verbleibenden 20% der Daten und zeigen Statistiken zu maxc p (cjd; D) in Tabelle 2.3. Die Werte sind stark überkonditioniert. 60% der Testdokumente sind zugeordnet ein posterior von 1, wenn auf 9 Dezimalstellen gerundet. Im Gegensatz zur logistischen Regression ist Naive Bayes ist nicht optimiert, um vernünftige Wahrscheinlichkeitswerte zu erzeugen. Logistische Regression führt eine gemeinsame Optimierung der linearen Koeffizienten durch und konvergiert zu den entsprechenden Wahrscheinlichkeitswerte mit erfolgreichen Trainingsdaten. Naive Bayes optimiert die Koeffizienten Einer nach dem anderen. Es liefert nur dann realistische Ergebnisse, wenn die Unabhängigkeit angenommen wird gilt wahr. Wenn die Funktionen wichtige doppelte Informationen enthalten (wie üblich) der Fall mit Text) sind die von Naive Bayes zur Verfügung gestellten Posterioren stark überfordert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top