TECHNISCHE UNIVERSITÄT DARMSTADT Naive Bayes for Ranking Dieter Schuller Seminar aus maschinellem...
-
Upload
anne-appel -
Category
Documents
-
view
105 -
download
2
Transcript of TECHNISCHE UNIVERSITÄT DARMSTADT Naive Bayes for Ranking Dieter Schuller Seminar aus maschinellem...
TECHNISCHEUNIVERSITÄTDARMSTADT
Naive Bayes for Ranking
Dieter Schuller
Seminar aus maschinellem Lernen
Fachbereich 20InformatikKnowledge Engineering
2
Die Klassifikation eines Trainingsbeispiels E mithilfe des Naive Bayes Algorithmuserfolgt dahingehend, dass das Beispiel derjenigen Klasse c zugeordnet wird, beider die Wahrscheinlichkeit maximal ist:
Naive Bayes AlgorithmusHerleitung
Formel von Bayes1:
|
|P A B P B
P B AP A
argmax |NBc
C E p c E
|p c E
1 Vgl. [LW00].
3
Naive Bayes AlgorithmusHerleitung
1
1
|argmax
, , |argmax
argmax , , |
NBc
n
c
nc
p E c p cC E
p E
p c p a a c
p E
p c p a a c
(1)
(2)
(3)
E wird durch Realisierungen der Attribute charakterisiert. Die Attributmenge A lässt sich beschreiben durch:
1, , nA A A
4
Naive Bayes AlgorithmusFormel
1
argmax |n
NB ic i
C E p c p a c
Eigenschaften• Lässt sich leicht berechnen• Naive Bayes (NB) erbringt gute Resultate bei Klassifikation2
• Wahrscheinlichkeitsschätzungen sind jedoch nicht genau2
• Keine guten Resultate bei Verwendung für Regressionsprobleme3
Unter der Annahme der Unabhängigkeit der Attribute:
,| ia ci
c
np a c
n , 1
| ia ci
c i
np a c
n v
Anzahl der Beispiele der Klasse c mit A i = ai
Anzahl der Beispiele der Klasse cvi = Anzahl möglicher Werte für Ai
2 Vgl. [DP97].3 Vgl. [FTHW00].
8
Ranking
In manchen Anwendungen ist eine Klassifikation nicht ausreichend Ranking wird benötigt
Ordnen der Beispiele nach ihrer Wahrscheinlichkeit, einer bestimmten Klasse anzugehören
9
RankingRanking im Fall von zwei Klassen – Beispiel
Beispiel:10 Trainingsbeispiele: 5 gehören zu der Klasse der positiven Beispiele; 5 gehören zur Klasse der negativen Beispiele
5E
4E
3E
2E
1E
5E
4E
3E
2E
1E
Wahrscheinlichkeiten:
1
2
3
4
5
| 0,86
| 0,58
| 0,92
| 0,74
| 0,64
p E
p E
p E
p E
p E
1
2
3
4
5
| 0, 24
| 0,65
| 0,59
| 0,35
| 0, 46
p E
p E
p E
p E
p E
+
-
-
-
-
-
+
+
+
+
Ranking
10
vorhergesagt positiv
vorhergesagt negativ
Positives Beispiel
true positive (TP)
false negative (FN)
Total positive
(Pos)
Negatives Beispiel
false positive (FP)
true negative (TN)
Total negative
(Neg)
TP
PosY-Achse:
X-Achse:FP
Neg
Für die zu erstellende ROC Kurve gilt:
Quelle: [FLA04].
Um Rankings verschiedener Klassifikationssalgorithmen vergleichen zu können, wird die ROC (Reciever Operating Characteristics) Kurve benötigt.
ROC
11 0,25 0,5
0,25
0,75
0,75
0,5
0 1
1
ROCKlassifizierung
TP
Pos
FP
Neg
NB
C4.5
SVM
Ripper
CN2
Darstellung in Anlehnung an [FLA04]
Vergleich zweier Klassifikations-algorithmen erfolgt anhand ihrer Position im ROC Graph in Abhängigkeit einer Kostenfunktion
Je weiter „oben links“ sich ein Algorithmus befindet, desto besser ist er.
Allgemein:
12 0,25 0,5
0,25
0,75
0,75
0,5
0 1
1
Ranking im Fall zweier KlassenAUC
TP
Pos
FP
Neg
AUC
Andere Sichtweise: Erstellung der ROC Kurve für einen Algorithmus anhand des von diesem Algorithmus erstellten Rankings
AUC = Area Under the ROC Curve
13
Ranking im Fall zweier KlassenAUC – Beispiel
5E
4E
3E
2E
1E
5E
4E
3E
2E
1E
+
-
-
-
-
-
+
+
+
+
Ranking
0,25 0,5
0,25
0,75
0,75
0,5
0 1
1TP
Pos
FP
Neg
AUC
14
Die Güte des Rankings eines Klassifikators wird mithilfe des AUC (Area Under the ROC Curve) evaluiert:
Je größer der AUC Wert, desto besser ist das Ranking
Berechnung von AUC5:
0 0 0
0 1
112
S n nA
n n
0n
1n
Anzahl der positiven Beispiele
Anzahl der negativen Beispiele
0 iS rir Rang des i-ten positiven
Beispiels
5 Vgl. [ZJS05].
Ranking im Fall zweier KlassenAUC – Berechnung
15
C4.4 ist ein Entscheidungsbaumalgorithmus analog C4.5, aber
Glättung der geschätzten Wahrscheinlichkeiten durch Laplace Korrektur (wird für diesen Vergleich auch bei NB durchgeführt) Kein „pruning“
Eigenschaften von Entscheidungsbaumalgorithmen:
• einfache und effektive Lernalgorithmen• Schätzung der Wahrscheinlichkeit p(c|E) erfolgt anhand der Anzahl der Beispiele der Klasse c in dem Blatt, in das E fällt, relativ zur Gesamtanzahl an Beispielen, die sich in diesem Blatt befinden
Alle Beispiele in einem Blatt haben die gleiche Wahrscheinlichkeit, zur Klasse c zu gehören
Ranking im Fall zweier KlassenVergleich der AUC von NB mit C4.4
16
Ranking im Fall zweier KlassenVergleich der AUC von NB mit C4.4 – Ergebnisse
15 Datensets aus dem UCI Repository6
Berechnung der AUC über:10-fold stratified cross validation
Vergleich auf signifikante Unterschiede mithilfe eines Zweistichproben t-Tests zum Niveau 1-α = 95%
Quelle: [ZS04]
Ergebnis:4:3:8
6 Vgl. [MMA97]
17
Ranking im Fall zweier KlassenVergleich der AUC von NB mit C4.4 – Mögliche Erklärungen
• Bei Entscheidungsbaumalgorithmen haben sämtliche Beispiele eines Blattes dieselbe Wahrscheinlichkeit p(c|E), zur Klasse c zu gehören
daher erfolgt das Ranking der Beispiele innerhalb eines Blattes zufällig
• Entscheidungsbaumalgorithmen „neigen“ dazu, kleine Entscheidungsbäume (mit wenigen Blättern) zu lernen
viele Beispiele haben dieselbe Wahrscheinlichkeit
• Falls „größere“ Bäume gelernt werden, fallen weniger in ein Blatt Wahrscheinlichkeitsschätzungen werden schlechter (was zu schlechteren Rankings führt)
20
Naive BayesOptimalität – Definitionen
8 Vgl. [ZS04].
Definition 1:8
Als lokal optimal wird ein Klassifikator für das Ranking eines Beispiels E bezeichnet,1) wenn E ein positives Beispiel ist, und kein negatives Beispiel nach E eingestuft
wird, oder2) wenn E ein negatives Beispiel ist, und kein positives Beispiel vor E eingestuft wird.
Definition 2:8
Als global optimal wird ein Klassifikator für das Ranking bezeichnet, wenn er für jedesBeispiel des Beispielraumes eines gegebenen Problems lokal optimal ist.
Definition 3:8
Ein Wert ai eines Attributes Ai wird als indikativ zur Klasse c bezeichnet, wenn p(Ai = ai | c) ≥ p(Ai = āi | c ) gilt, wobei āi ein anderer Wert des Attributes Ai ist (ai ≠ āi).
21
Naive BayesOptimalität – Definitionen
Zu Definition 1:
NB wäre für das Beispiel E+ optimal beim Ranking, wenn kein anderes Beispiel E- nach E+ in der Rangordnung auftritt:
| |NB NBp E p E
Zu Definition 3:
Bei binären Attributen wäre der Attributwert ai+ des Attributes Ai
indikativ zur Klasse +, wenn:
| |i ip a p a
+
-
-
-
-
-
+
+
+
+
Ranking
22
Naive BayesLokale Optimalität
Theorem9
Naive Bayes ist für das Beispiel E = {a1, a2, …, an} optimal beim Ranking, wenn jeder Attributwert von E indikativ zur Klasse + ist.
Beweis9
Induktion über die Anzahl an vollständigen Abhängigkeiten i zwischen den Attributen.
(eine Abhängigkeit zwischen Ai und Aj ist vollständig, wenn Ai = Aj gilt)
9 Vgl. [ZS04].
28
Naive BayesErweiterungen
Einsatz zahlreicher Techniken zur Verbesserung der Klassifikationsgenauigkeit von NB:
SBC (Selective Bayesian Classifier) Selektion einer Untermenge der Attribute Ai, die bedingt unabhängig sind Realisierung dieser Selektion mithilfe einer vorwärtsgerichteten „greedy“ Suche
29
Naive BayesErweiterungen
TAN (Tree Augmented Naive Bayes)
Jedes Attribut kann von maximal einem anderen Attribut abhängig sein
Vergleich dazu NB
Keine Abhängigkeiten zwischen den Attributen
C
A3 A4A2A1
C
A3 A4A2A1
Quelle: [ZJS05]Quelle: [ZJS05]
Einsatz zahlreicher Techniken zur Verbesserung der Klassifikationsgenauigkeit von NB:
30
Naive BayesErweiterungen
ANB (general Augmented Naive Bayes)
C
A3 A4A2A1
Keine Beschränkung in Bezug auf die Abhängigkeiten von Attributen, solange kein gerichteter Zyklus entsteht
Einsatz zahlreicher Techniken zur Verbesserung der Klassifikationsgenauigkeit von NB:
31
Naive BayesErweiterungen
NBTreeKombination eines Entscheidungsbaumes mit NB
An jedem Blatt ist ein lokaler NB vorhanden Klassifikation eines Beispiels erfolgt anhand des NB in dem Blatt, in das das Beispiel fällt
Einsatz zahlreicher Techniken zur Verbesserung der Klassifikationsgenauigkeit von NB:
32
Naive BayesErweiterungen
Boosted Naive BayesEnsemble Methode
aus einer Trainingsmenge werden mehrere Theorien trainiert durch Erhöhung der Gewichte von Beispielen, die in der letzten Theorie falsch klassifiziert wurden
Einsatz zahlreicher Techniken zur Verbesserung der Klassifikationsgenauigkeit von NB:
33
Naive BayesErweiterungen
AODE (Averaged One-Dependence Estimators)Ensemble von Klassifikatoren
Erstellung eines „one-dependence“ Klassifikators für jedes Attribut Klassifikation erfolgt durch Aggregation der Vorhersagen der einzelnen „one-dependence“ Klassifikatoren
Einsatz zahlreicher Techniken zur Verbesserung der Klassifikationsgenauigkeit von NB:
34
Naive BayesErweiterungen
Einführung eines neuen Modells zur Erstellung genauer Rankings:
HNB (Hidden Naive Bayes)10
Ähnliches Konzept wie TAN und ANB
1 21
, , , , | ,i
n
n i ai
p A A A C p C p A p C
iap
Bei ANB:
Menge der Eltern von Ai
Zwei Probleme bei ANB:1) Schwierigkeit, Menge der Eltern für alle Ai zu bestimmen2) Hohe Varianz bei begrenzten Trainingsdatensets
| , , , , ,i j k l s tp a a a a a a cz.B.:
10 Vgl. [ZJS05]
35
Naive BayesErweiterungen
Bei HNB: 1 21
, , , , | ,i
n
n i hpi
p A A A C p C p A A C
1,
| , | ,i
n
i hp ij i jj j i
p A A C W p A A C
1,
; |
; |
P i j
ij n
P i jj j i
I A A CW
I A A C
, ,
, |; | , , log
| |Px y z
p x y zI X Y Z p x y z
p x z p y z
1,
1n
ijj j i
W
wobei gilt:
^
Bildung eines versteckten Elternteils aus den gewichteten Einflüssen aller anderen Attribute
1,
| , | ,i
n
i hp ij i jj j i
p A A C W p A A C
Berechnung der Gewichte über bedingt wechselseitige Information (conditional mutual information)
36
Naive BayesErweiterungen
Lösung zu den Problemen mit ANB:
1) Vermeidung von Strukturlernen, da
1) Vermeidung einer hohen Varianz durch Approximation von
1 1 1, , , , ,ia i i np A A A A
| , | ,i
j ai
i a ij i jA p
p A p C W p A A C
| ,i jp a a cledigliche Berechnung von z.B.:
37
Ranking im Fall mehrerer KlassenAUC – Berechnung
AUC wird mittels „M-measure“11 berechnet:
11 Vgl. [HT01]
, ,
|
1i j C i j
A i j
Ml l
1, , ,lC c c 2l
38
Ranking im Fall mehrerer KlassenAUC – Berechnung
Vergleich zum Beispiel mit zwei Klassen:
0 0 0
0 1
112
S n nA
n n
1
2
3
4
5
| 0,86
| 0,58
| 0,92
| 0,74
| 0,64
p E
p E
p E
p E
p E
1
2
3
4
5
| 0, 24
| 0,65
| 0,59
| 0,35
| 0, 46
p E
p E
p E
p E
p E
AUC
TP
Pos
FP
Neg
|A
0,88+
-
-
-
-
-
+
+
+
+
Ranking
AUC ist die Wahrscheinlichkeit, dass ein zufällig gewähltes Beispiel der Klasse „-“ eine geringere Wahrscheinlichkeit hat, zur Klasse „+“ zu gehören, als ein zufällig gewähltes Beispiel der Klasse „+“.12
12 Vgl. [ZJS05]
3 41 1 15 5 0,885
39
Ranking im Fall mehrerer KlassenAUC – Berechnung
Vergleich zum Beispiel mit zwei Klassen:
0 0 0
0 1
112
S n nA
n n
1
2
3
4
5
| 0,14
| 0, 42
| 0,08
| 0, 26
| 0,36
p E
p E
p E
p E
p E
1
2
3
4
5
| 0,76
| 0,35
| 0, 41
| 0,75
| 0,54
p E
p E
p E
p E
p E
AUC
TN
Neg
FN
Pos
|A
0,88-
+
+
+
+
+
-
-
-
-
Ranking
AUC ist die Wahrscheinlichkeit, dass ein zufällig gewähltes Beispiel der Klasse „+“ eine geringere Wahrscheinlichkeit hat, zur Klasse „-“ zu gehören, als ein zufällig gewähltes Beispiel der Klasse „-“.13
13 Vgl. [ZJS05]
3 41 1 15 5 0,885
40
Ranking im Fall mehrerer KlassenAUC – Berechnung
Im Allgemeinen gilt aber:
Daher Summation über alle Paare i, j:
, ,
|
1i j C i j
A i j
Ml l
1, , ,lC c c 2l
| | ,A i j A j i da | 1 |i jp c E p c E
41
Ranking im Fall mehrerer KlassenVergleich der AUC – Ergebnisse
36 Datensets aus dem UCI Repository14
14 Vgl. [BM00]
Berechnung der AUC über 10-fold cross validation
Quelle:[ZJS05]
42
Ranking im Fall mehrerer KlassenVergleich der AUC – Ergebnisse
Vergleich auf signifikante Unterschiede mithilfe eines Zweistichproben t-Tests zum Niveau 1-α = 95%
Quelle: [ZJS05]
43
Naive Bayes für RankingFazit
Fazit:
• Wahrscheinlichkeitsschätzungen von NB sind nicht sehr genau dennoch arbeitet NB gut bei Klassifikation und Ranking
• Vergleich der Qualität des Rankings von C4.4 mit NB verläuft „zugunsten“ von NB
NB hat bei der Berechnung verschiedener Wahrscheinlichkeiten Vorteile
• NB schneidet beim Ranking besser ab als mache Erweiterungen von NB
• HNB erzielt beim Ranking die besten Ergebnisse
44
Literaturverzeichnis
[BM00] BLAKE, C. ; MERZ, C. J.: UCI repository of machine learning databases. In: Dept of ICS, University of California, Irvine (2000). http://www.ics.uci.edu/~mlearn/MLRepository.html.
[DP97] DOMINGOS, P. ; PAZZANI, M.: Beyond Independence: Conditions for the Optimality of the Simple Bayesian Classifier. In: Machine Learning, 29 (1997), S. 103-130.
[FLA04] FLACH, P. A.: The many faces of ROC analysis in machine learning. Presented on the 21st International Conference on Machine Learning, Banff, Alberta, Canada, 2004. http://www.cs.bris.ac.uk/~flach/ICML04tutorial/
[HT01] HAND, D. J. ; TILL, R. J.: A simple generalisation of the area under the ROC curve for multiple class classification problems. In: Machine Learning, 45 (2001), S. 171-186.
[LW00] LEHN, J. ; WEGMANN, H.: Einführung in die Statistik. 3. Auflage. Stuttgart: B. G. Teubner, 2000.
[MMA97] MERZ, C. J. ; MURPHY, P. ; AHA, D.: UCI repository of machine learning databases. In: Dept of ICS, University of California, Irvine (1997). http://www.ics.uci.edu/~mlearn/MLRepository.html.
[ZJS05] ZHANG, H. ; JIANG, L. ; SU, J.: Augmenting Naive Bayes for Ranking. In: Proceedings of the 22nd International Conference on Machine Learning, Bonn, Germany. ACM (2005), S. 1025-1032.
[ZS04] ZHANG, H. ; SU, J.: Naive Bayesian classifiers for ranking. In: Proceedings of the 15th European Conference on Machine Learning, Springer (2000).
[FTHW00] FRANK, E. ; TRIGG, L. ; HOLMES, G. ; WITTEN, I. H.: Naive Bayes for Regression. In: Machine Learning, 41 (2000), S. 5-15.
Vielen Dank für Ihre Aufmerksamkeit!