Wie gehe ich mit einem Nullfaktor bei der Berechnung des Naive Bayes-Klassifikators um?


13

Wenn ich einen Trainingsdatensatz habe und einen Naive Bayes-Klassifikator darauf trainiere und einen Attributwert mit der Wahrscheinlichkeit Null habe. Wie gehe ich damit um, wenn ich später die Klassifizierung für neue Daten vorhersagen möchte? Das Problem ist, wenn es eine Null in der Berechnung gibt, wird das gesamte Produkt zu Null, egal wie viele andere Werte ich habe, die vielleicht eine andere Lösung finden würden.

Beispiel:

P(x|speinm=yes)=P(TichmeZÖne=US|speinm=yes)P(GeÖLÖceintichÖn=EU|speinm=yes) ... =0,004

P(x|spam=no)=P(TimeZone=US|spam=no)P(GeoLocation=EU|spam=no) ... =0

Das gesamte Produkt wird zu da in den Trainingsdaten das Attribut TimeZone US in unserem kleinen Trainingsdatensatz immer Ja lautet. Wie kann ich damit umgehen? Sollte ich einen größeren Satz von Trainingsdaten verwenden oder gibt es eine andere Möglichkeit, dieses Problem zu lösen?0


Wenn ein diskreter Attributwert auftritt, kann seine Wahrscheinlichkeit per Definition nicht null sein.
Paul

warum wir 1 in 0 Frequenzproblem hinzufügen, was ist die Logik dahinter, warum wir nicht eine andere Zahl hinzufügen.
Aftab Hussaiin

Antworten:


12

Ein Ansatz zur Überwindung dieses „Null-Frequenz-Problems“ in einer Bayes'schen Einstellung besteht darin, für jede Attributwert-Klassen-Kombination eine zur Anzahl hinzuzufügen, wenn nicht bei jedem Klassenwert ein Attributwert auftritt. Angenommen, Ihre Trainingsdaten sahen folgendermaßen aus:

Spam=yesSpam=noTimeZone=US105TimeZone=EU00

P(TimeZone=US|Spam=yes)=1010=1

P(TimeZone=EU|Spam=yes)=010=0

Dann sollten Sie zu jedem Wert in dieser Tabelle einen hinzufügen, wenn Sie ihn zur Berechnung der Wahrscheinlichkeiten verwenden:

Spam=yesSpam=noTimeZone=US116TimeZone=EU11

P(Zeitzone=US|Spam=yes)=1112

P(Zeitzone=EU|Spam=yes)=112


4
Tatsächlich. Beachten Sie, dass Sie manchmal andere Werte als einen hinzufügen können. Für Details siehe en.wikipedia.org/wiki/Additive_smoothing
DaL
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.