2017-11-07 4 views
-1

Da verlangen, dass die Bayes-Formel lautet:Does Naive Bayes Textklassifikation realen Daten

P(A|B) = (P(B|A) * P(A))/P(B) 

Lassen Sie uns sagen, dass ich will einen Klassifikator trainieren Spam-/Ham zu klassifizieren. Sagen wir auch, dass wir in der realen Welt etwa 1% Spam bekommen. Bei einer Beispieleingabe würden wir etwa 1% Spam erwarten.

Wenn ich meinen Klassifizierer trainiere, sollte ich ihn mit Dokumenten trainieren, die nur 1% Spam enthalten, oder ist es in Ordnung, meinen Klassifikator mit einem viel größeren Prozentsatz an Spam zu trainieren, würde ich erwarten, in der realen Welt zu finden.

Ich frage dies, weil, wenn ich einen viel größeren Prozentsatz von Spam haben, dann wird der Wert für

P(A) 

wird ungewöhnlich groß. Wird dies meinen Klassifikator abstoßen, und würde er in diesem Fall einige "Ham" -Dokumente als "Spam" einstufen?

Antwort

0

Um den Bayesschen Schätzer zu trainieren, müssen Sie die PDFs P (X | H) und P (X | S) lernen, wobei X Ihre aktuelle Beobachtung und H, S für die Spam/Ham-Klasse steht aus Beispielen seiner Klasse, dh P (X | H) wird nur aus Ham-Samples gelernt und P (X | S) wird nur aus Spam-Samples gelernt. Bis zu diesem Punkt spielt es keine Rolle, ob die Anzahl der Spam- oder Ham-Proben die Realität widerspiegelt. Um später eine korrekte Bayessche Schätzung zu erhalten, müssen Sie jedoch die Priors P (H) und P (S) schätzen und diese sollten den Anteil von Spam/Schinken in der Realität erfassen.