Naive Bayesian Flashcards
Probabilistic Framework?
Ansätze, die Wahrscheinlichkeiten nutzen, um Unsicherheiten zu modellieren
Naive Bayesian Grundidee
Es wird die Bedingte Wahrscheinlichkeit berechnet. Also wird die Wahrscheinlichkeit berechnet, dass ein Datenelement zu einer bestimmten Klasse gehört unter der Voraussetzung, dass das Element bestimmte Eigenschaften hat (bestimmte Attributwerte vorliegen).
Warum der Algorithmus „naive“ ist?
Der Algorithmus wird auch naive genannt, da davon ausgegangen wird, dass alle Inputattribute vollkommen unabhängig voneinander sind. Dann spielt die Kombination der Attributwerte keine Rolle mehr. Das bedeutet, dass die Wahrscheinlichkeit für eine Klasse nicht von der Kombination der Attributwerte, sondern nur von den einzelnen Attributwerten abhängt. Also wird die Gesamtwahrscheinlichkeit aus den Einzelwahrscheinlichkeiten pro Attribut berechnet.
Naive Bayesian Berechnung, Problem?
zählen, wie oft für welche Attributwertkombination welche Klasse vorkommt und daraus die Wahrscheinlichkeit pro Klasse berechnen. Ein Problem hierbei ist, dass die Formel voraussetzt, dass es hinreichend viele Datenelemente mit genau dieser Attributausprägung gibt. Zudem wäre diese Berechnung extrem aufwendig für alle Kombinationen.
Bayes’rule
Unter einer bedingten Unabhängigkeitsannahme (alle Attribute sind bedingt unabhängig = Naive Bayes vereinfacht die Berechnung, indem es annimmt, dass alle Merkmale unabhängig voneinander sind, wenn wir die Klasse kennen) kann die wahrscheinlichste Klasse berechnet werden
Zero Counts?
Wenn für eine bestimmte Klasse und ein bestimmtes Merkmal im Trainingsdatensatz keine Beispiele vorhanden sind. Dies führt zu einer bedingten Wahrscheinlichkeit von null, was problematisch sein kann, da es die gesamte Posterior-Wahrscheinlichkeit auf null setzt, selbst wenn alle anderen Merkmale stark auf diese Klasse hinweisen
Beispiel Zero Counts?
Angenommen, wir haben zwei Klassen C1 und C2, und ein Merkmal kann die Werte x1 und x2 annehmen. Wenn x2 nie in Verbindung mit C2 im Trainingsdatensatz vorkommt, ist P(X=x2∣C2)=0
Wenn wir die Posterior-Wahrscheinlichkeit berechnen, wird das Produkt der bedingten Wahrscheinlichkeiten verwendet: P(C∣X)∝P(C)⋅P(X1∣C)⋅P(X2∣C)⋅…⋅P(Xn∣C)P(C|X) Wenn eine der bedingten Wahrscheinlichkeiten null ist, wird das gesamte Produkt null, was bedeutet, dass die Klasse C unabhängig von den anderen Merkmalen als unmöglich betrachtet wird
Lösung Zero Counts?
Um dieses Problem zu vermeiden, wird oft die Laplace-Glättung (auch additive Glättung genannt) verwendet. Dabei wird zu jeder Zählung ein kleiner Wert (normalerweise 1) hinzugefügt, um sicherzustellen, dass keine bedingte Wahrscheinlichkeit null wird.
Diskussion Naive Bayesian?
- Ist in der Praxis davon auszugehen, dass Inputattribute vollkommen unkorreliert sind? Natürlich nicht.
–> Formal gesehen, wäre dann die Anwendung des Naive Bayes nicht erlaubt. ABER es zeigt sich, dass der Algorithmus recht robust auf Verletzungen seiner Eingangsbedingung reagiert.
Dennoch, je mehr die Kombinationen von Attributwerten eine Rolle spielen, desto weniger ist der Naive Bayes geeignet (und es wäre vielleicht ein Entscheidungsbaum besser)
- sehr effizient, da Wahrscheinlichkeiten in einem einzigen Scan der Daten berechnet werden können
- erziehlt hohe Genauigkeit
- Robust gegenüber Verletzungen dieser Unabhängigkeitsannahme
- Weniger geeignet, wenn viele Kombinationen von Attributwerten eine Rolle spielen –> dann eher Entscheidungsbäume
Stellen fehlende Werte ein Problem dar?
Fehlende Werte stellen kein Problem dar, diese können einfach ignoriert werden.
Naive Bayesian Textklassifikation, Wie funktionierts?
- Klassifizierungsmodell auf der Grundlage einer Sammlung vorklassifizierter Dokumente erlernen
- Anwenden des Klassifizierungsmodells zur Klassifizierung neuer Dokumente
Naive Bayesian Textklassifikation Grundidee
Die Grundidee hierbei ist, jedes Dokument als einen Wortvektor (bag of words) darzustellen. Der Satzbau oder die Reihenfolge der Wörter spielt hierbei keine Rolle. Es wird nur geprüft, ob oder wie häufig ein Wort in dem Text vorkommt.
Naive Bayesische Textklassifikation Formel
Man berechnet für jedes Wort des Dokuments, die Wahrscheinlichkeit, dass es in einem Dokument der Klasse auftauchen würde und multipliziert dies für alle Wörter des Dokuments. Dadurch erhält man einen Fit. Diesen Fit vergleicht man mit dem Fit des Dokuments für alle anderen Klassen.
Naive Bayesische Prinzip bei der Textklassifikation
Für jedes Wort aus dem Vokabular wird eine Verteilung für die Wahrscheinlichkeit angegeben, wie oft dieses Wort in einem Dokument in einer bestimmten Klasse vorkommt. Die Wahrscheinlichkeit wird für jedes pre-classified Dokument der Klasse berechnet. Und aus den Wahrscheinlichkeiten für alle Dokumente eine Verteilung berechnet. Aus diesen Verteilungen für alle Klassen kann man dann die Klasse eines neuen Dokuments berechnen.
Naive Bayesische Textklassifikation Zusammenfassung
Der Wortvektor gibt also an, wie häufig ein Wort in einem Dokument vorkommt und Naive Bayes ermittelt dann, welche Wörter mit welcher Wahrscheinlichkeit dazu beitragen, dass ein Text zu einer bestimmten Klasse gehört.
Bedingte Unabhängigkeitsannahme bei Textklassifikation
Die Wahrscheinlichkeit des Wortauftretens ist unabhängig von der konkreten Position und dem Kontext innerhalb des Dokuments