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:
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?
Antworten:
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:
Dann sollten Sie zu jedem Wert in dieser Tabelle einen hinzufügen, wenn Sie ihn zur Berechnung der Wahrscheinlichkeiten verwenden:
quelle