Naive Bayes, Text Klassifikation

Werbung
Klassifikation
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
0
Überblick
•
•
•
•
•
•
•
•
•
•
Grundkonzepte
Entscheidungsbäume
Evaluierung von Klassifikatoren
Lernen von Regeln
Klassifikation mittels Assoziationsregeln
Naïver Bayescher Klassifikator
Naïve Bayes für Text Klassifikation
Support Vektor Maschinen
Ensemble-Methoden: Bagging und Boosting
Zusammenfassung
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
1
Bayesche Klassifikation
• Probabilistische Sicht: Überwachtes Lernen kann auf
elegante Weise probabilistisch formuliert werden.
• Seien A1 bis Ak diskrete Attribute. Das Klassenattribut sei
C.
• Gegeben sei ein Testbeispiel d mit den beobachteten
Attributwerten a1 bis ak.
• Die Klassifikation besteht darin die folgende AposterioriWahrscheinlichkeit zu berechnen. Die Vorhersage ist die
Klasse cj s.d.
maximal wird
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
2
Anwendung von Bayes’ Regel
Pr(C = c j | A1 = a1 ,..., A| A| = a| A| )
=
=
Pr( A1 = a1 ,..., A| A| = a| A| | C = c j ) Pr(C = c j )
Pr( A1 = a1 ,..., A| A| = a| A| )
Pr( A1 = a1 ,..., A| A| = a| A| | C = c j ) Pr(C = c j )
|C |
∑ Pr( A = a ,..., A
1
1
| A|
= a| A| | C = cr ) Pr(C = cr )
r =1
„
Pr(C=cj) ist die Klasse Prior-Wahrscheinlichkeit:
leicht aus den Trainingsdaten zu schätzen.
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
3
Berechnung der Wahrscheinlichkeiten
• Der Nenner ist irrelevant für Entscheidung ,
da er für jede Klasse gleich ist.
• Nur P(A1=a1,...,Ak=ak | C=ci) wird gebraucht,
was umgeformt werden kann als
Pr(A1=a1|A2=a2,...,Ak=ak, C=cj)* Pr(A2=a2,...,Ak=ak |C=cj)
• Der zweite Faktor kann rekursiv auf die
gleiche Weise weiter zerlegt werden.
• Jetzt kommt noch eine Annahme.
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
4
Bedingte
Unabhängigkeitsannahme
• Alle Attribute sind bedingt unabhängig bei
gegebener Klasse C = cj.
• Formal wird angenommen,
Pr(A1=a1 | A2=a2, ..., A|A|=a|A|, C=cj) = Pr(A1=a1 | C=cj)
und so weiter für A2 bis A|A|. d.h.,
| A|
Pr( A1 = a1 ,..., A| A| = a| A| | C = ci ) = ∏ Pr( Ai = ai | C = c j )
i =1
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
5
Naïver Bayescher Klassifikator
Pr(C = c j | A1 = a1 ,..., A| A| = a| A| )
| A|
=
Pr(C = c j )∏ Pr( Ai = ai | C = c j )
|C |
i =1
| A|
r =1
i =1
∑ Pr(C = cr )∏ Pr( Ai = ai | C = cr )
• Wie wird P(Ai = ai| C=cj) geschätzt?
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
6
Klassifikation einer Testinstanz
• Wenn die wahrscheinlichsten Klasse
vorhergesagt wird, braucht nur der Zähler
berechnet werden, da der Nenner für alle
Klassen gleich ist.
• Für ein gegebenes Testbeispiel, wird das
folgende berechnet
| A|
c = arg max Pr(c j )∏ Pr( Ai = ai | C = c j )
cj
i =1
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
7
Beispiel
„
Berechne alle benötigten
Wahrscheinlichkeiten für
die Klassifikation
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
8
Beispiel, Fortsetzung
• Für C = t, ergibt sich
2
1 2 2 2
Pr(C = t )∏ Pr( A j = a j | C = t ) = × × =
2 5 5 25
j =1
• Für Klasse C = f, ergibt sich
2
1 1 2 1
Pr(C = f ) Pr( A j = a j | C = f ) = × × =
2 5 5 25
j =1
∏
• C = t ist wahrscheinlicher. t ist deshalb die
Vorhersage.
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
9
Probleme
• Numerische Attribute: Naïves Bayesches
Lernen nimmt an, dass alle Attribute kategorisch
sind. Numerische Attribute müssen diskretisiert
werden.
• Anzahl=Null: Ein bestimmter Attributwert taucht
unter Umständen nicht mit einer Klasse
gemeinsam auf. Abhilfe durch Glättung.
Pr( Ai = ai | C = c j ) =
nij + λ
n j + λni
• Fehlende Werte: werden ignoriert
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
10
Diskussion zum naïven
Bayesches Klassifikator
• Vorteile:
– Leicht zu implementieren
– Sehr effizient
– Liefert gute Ergebnisse bei vielen Anwendungen
• Nachteile
– Annahme: Klassen sind bedingt unabhängig,
deshalb geht Vorhersagegenauigkeit verloren,
wenn diese Annahme stark verletzt wird. (z.B. bei
stark korrellierten Daten)
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
11
Überblick
•
•
•
•
•
•
•
•
•
•
Grundkonzepte
Entscheidungsbäume
Evaluierung von Klassifikatoren
Lernen von Regeln
Klassifikation mittels Assoziationsregeln
Naïver Bayescher Klassifikator
Naïve Bayes für Text Klassifikation
Support Vektor Maschinen
Ensemble-Methoden: Bagging und Boosting
Zusammenfassung
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
12
Text Klassifikation/Kategorisierung
• Weil die Anzahl elektronischer Dokumente stark
steigt, wird automatische Dokumentklassifikation
immer wichtiger.
• Die bisher vorgestellten Techniken können zwar
angewendet werden, sind aber nicht so effektiv
wie die nachfolgenden Methoden.
• Heute wird eine naïve Bayesche Methode
diskutiert, die speziell für Texte zugeschnitten ist,
und Text-spezifische Eigenschaften nutzt.
• Die Ideen sind ähnlich zu naïve Bayes.
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
13
Probabilistischer Rahmen
•
•
Generatives Modell: Jedes Dokument wird
durch eine parametrisierte Verteilung
erzeugt, die von versteckten Parametern
beeinflußt ist.
Das generative Modell macht zwei
Annahmen
– Die Daten (oder Textdokumente) werden von
einem Mischmodell erzeugt,
– Zwischen den Komponenten der
Mischverteilund und den Dokumentklassen
gibt es eine eins-zu-eins Beziehung.
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
14
Mischmodell
• A Mischmodell beschreibt die Daten
durch mehrere statistische Verteilungen.
– Jede Verteilung korrespondiert zu einem
Daten-Cluster und die Parameter der
Verteilung sind eine Beschreibung des
Clusters.
– Jede Verteilung im Mischmodell wird auch
Mischkomponente genannt.
• Eine Verteilung/Komponente kann von
beliebiger Art sein
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
15
Beispiel
• Die Abbildung zeigt eine Wahrscheinlichkeitsdichtefunktion einer 1-dimensionale Datenmenge
(mit zwei Klassen) erzeugt durch
– eine Mischung von zwei Gauss-Verteilungen,
– eine pro Klasse, deren Parameter (beschrieben durch θi)
der Durchschnitt (µi) und die Standardabweichung (σi),
d.h., θi = (µi, σi).
Klasse 1
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
Klasse 2
16
Mischmodell (Fortsetzung …)
• Sei K die Anzahl der Mischkomponenten (oder
Verteilungen) in einem Mischmodell.
• Die jte Verteilung hat die Parameter θj.
• Sei Θ die Menge der Parameters alle
Komponenten, Θ = {ϕ1, ϕ2, …, ϕK, θ1, θ2, …, θK},
wobei ϕj das Mischgewicht (oder Prior
Wahrscheinlichkeit) eine Mischekomponente j
sei und θj die Parameter der Komponente j.
• Wie erzeugt das Modell die Dokumente?
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
17
Dokumenterzeugung
• Wegen der eins-zu-eins Beziehung zwischen Klassen
und Mischkomponenten sind die Mischgewichte die
Klassen-Prior-Wahrscheinlichkeiten, d.h., ϕj = Pr(cj|Θ).
• Das Mischmodell erzeugt ein Dokument di durch:
– Auswahl der Mischkomponente (oder Klasse) bezüglich der
Klassen-Prior.-Wahrscheinlichkeiten (d.h., der Mischgewichte), ϕj
= Pr(cj|Θ).
– Nachdem eine Komponente (cj) gewählt ist, wird ein Dokument di
bezüglich der Parameter mit der Verteilung Pr(di|cj; Θ) erzeugt,
oder genauer Pr(di|cj; θj).
|C |
Pr( d i | Θ ) =
∑ Pr( c
j
| Θ ) Pr( d i | c j ; Θ )
(23)
j =1
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
18
Modellierung von Textdokumenten
• Der naïve Bayes-Klassifikator behandelt jedes
Dokument als “bag of words”.
• Das erzeugende Modell macht weitere
Annahmen:
– Wörter werden bei gegebener Klasse unabhängig von
einander erzeugt (wie beim naïven Bayes).
– Die Wahrscheinlichkeit eines Wortes ist unabhänigi
von seiner Position im Dokument. Die Dokumentlänge
wird unabhängig von der Klasse gewählt.
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
19
Multinomiale Verteilung
• Wegen der bisherigen Annahmen, kann eine
Dokument durch eine Multinomial-Verteilung
erzeugt werden.
• D.h. jedes Dokument wird aus einer MultinomialVerteilung von Worten gezogen, die Anzahl der
Versuche entspricht der Dokumentlänge.
• Die Worte sind aus einem gegeben Vokabular
V = {w1, w2, …, w|V|}.
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
20
Verteilungsfunktion einer
Multinomial-Verteilung
|V |
∏
Pr(di | cj; Θ) = Pr(| di |) | di |!
t =1
Pr( wt | cj; Θ) Nti
Nti!
(24)
wobei Nti ist die Anzahl des Auftretens von
Wort wt in Dokument di und
|V |
|V |
∑
t =1
Nit =| di |
∑
Pr( wt | cj; Θ) = 1.
(25)
t =1
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
21
Parameter-Schätzung
• Parameter werden durch empirische Anzahlen
| D|
geschätzt.
N ti Pr(c j | d i )
∑
=
i
1
ˆ)=
(26)
Pr( wt | c j ; Θ
.
|V |
| D|
∑s =1 ∑i =1 N si Pr(c j | di )
• Um 0 Anzahlen für seltene Worte, die nicht in
der Trainingsmenge aber in der Testmenge
auftauchen, wird die Wahrscheinlichkeitsschätzung geglättet. Lidstone Glättung, 0 ≤ λ ≤ 1
| D|
λ + ∑i=1 Nti Pr(c j | di )
ˆ)=
(27)
Pr(wt | c j ; Θ
.
|V |
|D|
λ | V | +∑s=1 ∑i=1 Nsi Pr(c j | di )
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
22
Parameter-Schätzung (Fortsetzung…)
• Klassen-Prior-Wahrscheinlichkeiten,
welche die Mischgewichte ϕj sind können
leicht aus den Trainingsdaten geschätzt
werden
| D|
∑
ˆ
Pr(c | Θ) =
j
i =1
Pr(cj | di )
(28)
|D|
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
23
Klassifikation
• Gegeben eine Test-Dokument di, mit den Gleichungen
(23) (27) und (28)
ˆ
ˆ
Pr(
j | Θ) Pr( di | cj ; Θ)
c
ˆ)=
Pr(cj | di; Θ
ˆ)
Pr(di | Θ
=
|d i |
ˆ
ˆ)
Pr(cj | Θ)∏k =1 Pr( wd i ,k | cj; Θ
|d i |
ˆ
∑r =1 Pr(cr | Θ)∏k =1 Pr(wdi ,k | cr ; Θˆ )
|C |
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
24
Diskussion
• Die meisten Annahmen beim naïven BayesKlassifikator werden zu einem gewissen Grad in
der Praxis verletzt.
• Trotzdessen, ergibt der naïve Bayes
Klassifikator brauchbare Modelle.
– Die Hauptannahme ist die der Mischverteilung. Wenn
diese Annahme stark verletzt wird, kann die
Klassifikationsgenauigkeit rapide sinken.
• Der naïve Bayes-Klassifikator ist sehr effizient.
A. Hinneburg, Web Data Mining
MLU Halle-Wittenberg, SS 2007
25
Herunterladen