Warum wird ein Bayes-Klassifikator für die Spam-Filterung verwendet?


8

Ich habe über die Bayes'sche Spam-Filterung gelesen und glaube, ich verstehe die Theorie, aber ich verstehe einfach nicht, warum dieser Ansatz erforderlich ist, um die Wahrscheinlichkeit zu berechnen, dass eine Nachricht Spam ist, da sie ein bestimmtes Wort enthält.

Wenn wir eine Reihe von Nachrichten haben, die vom Benutzer bereits als "Spam" oder "Schinken" klassifiziert wurden, und eine neue Nachricht (die das ausgewählte Wort enthält) erhalten, die wir klassifizieren möchten, müssen wir die Zahl sicherlich nur teilen von Spam-Nachrichten, die das Wort enthalten, nach der Gesamtzahl der Nachrichten, die das Wort enthalten ... Warum alle Gleichungen?


3
Poste dies auf CrossValidated - deine Wahrscheinlichkeit, Antworten zu erhalten, ist höher. Sie könnten auch wissen, wie Bayes'sche Filter funktionieren
Ubermensch

2
„Alle Gleichungen“… es gibt genau eine Gleichung in einem Bayes'schen Klassifikator, und sie formalisiert fast genau das, was Sie in Ihrem zweiten Absatz gesagt haben (nur um die vorherige Wahrscheinlichkeit richtig zu berücksichtigen).
Konrad Rudolph

@Ubermensch - Meinst du CrossValidated ? * 8 ')
Mark Booth

Antworten:


15

Okay, zunächst einmal gibt es nicht nur positive, sondern auch negative Beweise. Einige Wörter machen es sehr wahrscheinlich, dass eine E-Mail-Nachricht Spam ist, andere machen es sehr wahrscheinlich, dass sie echt ist. Mit anderen Worten ist es sehr wahrscheinlich, dass eine Nachricht aufgrund ihrer Abwesenheit Spam ist , während andere den gegenteiligen Effekt haben. Wenn Sie beispielsweise Ihren Lebensunterhalt mit Drosophila verdienen und häufig mit Kollegen darüber korrespondieren, ist das Vorhandensein dieses Begriffs fast wie ein Passwort, da keine Massenmail-Kampagne in der Lage ist, ihre Texte so gut an Ihre Gewohnheiten anzupassen - das würde es Zerstören Sie die Skaleneffekte, die Spam überhaupt erst lebensfähig machen.

Außerdem kann die Leistung eines Filters nicht mit nur einer Metrik gemessen werden. Das Erkennen von Spam ist sehr einfach, in der Tat trivial, wenn Sie einfach alles als Spam klassifizieren - aber dann sind die Fehlalarme (Erkennen von E-Mails als Spam) unerträglich hoch. Das Erkennen von nichts löst dieses Problem, aber die falschen Negative (schlechte Proben als gut einzustufen) machen Ihr Leben miserabel. Ein guter Filter muss in beiden Punkten gute Werte erreichen , was ihn viel komplizierter macht als nur einen überempfindlichen Detektor von etwas.

Sie haben also von Anfang an nicht nur eine 'Liste der schlechten Wörter', sondern mindestens vier Listen und nicht nur ein Kriterium, sondern mindestens zwei. Bisher ist die Bayes'sche Filterung wirklich die einfachste Methode, die dies gut macht. Wenn Sie einen besseren finden, lassen Sie es uns auf jeden Fall hören.

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.