21
Maschinelles Lernen Bayes‘sche Verfahren (Mitchell Kap. 6), Teil 1

Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Embed Size (px)

Citation preview

Page 1: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Maschinelles Lernen

Bayes‘sche Verfahren (Mitchell Kap. 6), Teil 1

Page 2: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Überblick

• Bayes‘sche Lernverfahren werden in erster Linie für Klassifikation oder Konzept-Lernen verwendet

• Ziel: Abschätzung der Wahrscheinlichkeit mit der ein Objekt E einer Klasse C angehört

• Möglichkeit der Miteinbeziehung von Vorwissen

Page 3: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Grundlagen Wahrscheinlichkeitsrechnung

• Ereignismenge: Ω = Menge aller möglichen (Elementar-)Ereignisse

• Ereignisraum: F = pot(Ω)• Wahrscheinlichkeitsverteilung P: F->[0,1]

– P(Ω) = 1

– Für disjunkte Ai Ω: P(UAi) = ∑P(Ai)

– P(A) ist die Wahrscheinlichkeit von A– Typischerweise: P(A) = |A|/|Ω|

• Bedingte Wahrscheinlichkeit: P(A|B)– Wahrscheinlichkeit von A, unter der Voraussetzung dass B– P(A|B) = P(A ∩ B) / P(B)

Page 4: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Beispiel

• Dreimaliges Werfen einer Münze: Ω = {kkk,kkz,kzk,zkk,kzz,zkz,zzk,zzz}

• A sei „genau 2 mal Kopf“ = {kkz,kzk,zkk}

• P(A) = ?

Page 5: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Beispiel

• Dreimaliges Werfen einer Münze: Ω = {kkk,kkz,kzk,zkk,kzz,zkz,zzk,zzz}

• A sei „genau 2 mal Kopf“ = {kkz,kzk,zkk}

• P(A) = 3/8

• Sei B „1. Wurf Kopf“ = {kkk,kkz,kzk,kzz}

• P(A|B) = ?

Page 6: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Beispiel

• Dreimaliges Werfen einer Münze: Ω = {kkk,kkz,kzk,zkk,kzz,zkz,zzk,zzz}

• A sei „genau 2 mal Kopf“ = {kkz,kzk,zkk}

• P(A) = 3/8

• Sei B „1. Wurf Kopf“ = {kkk,kkz,kzk,kzz}

• P(A|B) = |{kkz,kzk}|/{kkk,kkz,kzk,kzz}| = ½

Page 7: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Bayes‘scher Satz

)(

)()|(

)(

)()|(

AP

BPBAP

AP

ABPABP

Nützlich, wenn P(A), P(B) und P(A|B) einfacher zu berechnen oder abzuschätzen sind als der gesuchte Wert P(B|A).

Page 8: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Bayes‘scher Satz und maschinelles Lernen

• P(h): Wahrscheinlichkeit von Hypothese h• P(T): Wahrscheinlichkeit von Trainingsmenge T• P(T|h): Wahrscheinlichkeit von T unter der Hypothese h• P(h|T): Wahrscheinlichkeit von h unter der

Voraussetzung von T• D.h. gesucht diejenige Hypothese h, unter der P(h|T)

maximal wird

)(

)()|(

)(

)()|(

TP

hPhTP

TP

hTPThP

Page 9: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Bayes‘sches Lernen

• P(h), P(T) werden auch als „a priori“ Wahrscheinlichkeiten bezeichnet

• P(h|T) wird als „a posteriori“ Wahrscheinlichkeit bezeichnet.

• Gesucht also die maximale a posteriori (MAP) Hypothese hMAP

• da P(T) immer konstant genügt für die Bestimmung von hMAP P(D|h)P(h):

)()|(maxarg hPhDPhHh

map

Page 10: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Brute Force Lern-Algorithmus

• Einfacher Lern-Algorithmus:– Für jede Hypothese h H:

• Berechne P(T|h)P(h)

– Gebe hMAP = argmaxhHP(T|h)P(h) aus

• Problem: – hoher Rechenaufwand! – Wie sieht P(T|h) bzw. P(h) aus?

Page 11: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Beispiel

• Konzept-Lernen:• P(h) = 1/|H| (jede Hypothese ist gleich

wahrscheinlich)

• Sei tiT, ti = c(xi), dann: P(T|h) = 1 falls für alle ti in T: h(xi) = ti; 0 sonst

– Dann: • P(h|T) = 0 gdw. h ist nicht konsistent mit T

• sonst P(h|T) = (1 * 1/|H|)/P(T) = 1/VSH,T

– D.h. jede mit T konsistente Hypothese ist MAP Hypothese

Page 12: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Optimaler Bayes Lerner

• Brute Force Bayes: ergibt Hypothese mit der größten Wahrscheinlichkeit gegeben eine Trainingsmenge

• Eigentlich gesucht: wahrscheinlichste Klassifikation für eine neue Instanz

• Warum ist das nicht dasselbe?

Page 13: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Optimaler Bayes Klassifikator

• Beispiel: – seien h1, h2, h3 Hypothesen mit P(h1|T) = 0,4,

P(h2|T) = 0,3, P(h3|T) = 0,3

– h1(x) = 0, h2(x) = 1, h3(x) = 1

– Dann ist h1 die MAP Hypothese

– Die Klassifikation von x als positive Instanz erscheint jedoch wahrscheinlicher

Page 14: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Optimaler Bayes Klassifikator

• Idee: berechne für jede Hypothese die Wahrscheinlichkeit der Klassifikation und gewichte das jeweils gemäß der Wahrscheinlichkeit der Hypothese!

Page 15: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Optimaler Bayes Klassifikator

• Seien vj V die möglichen Werte für eine neue Instanz x

• Dann ist die Wahrscheinlichkeit, dass x den Klassifikationswert vj hat:

– P(vj|T) = ∑hHP(vj|h)P(h|T)

• Die optimale Klassifikation ist also der Wert vj für den P(vj|T) maximal ist

Page 16: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Optimaler Bayes Klassifikator

• Nachteil: sehr aufwendige Berechnung bei großer Hypothesen-Menge!

Hh

iij

ij

ThPhvP

Vv

)|()|(maxarg

Page 17: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Naive Bayes Klassifikator

• Weitest verbreitete Klassifikationsstrategie in der Textklassifikation

• Geeignet für Lernprobleme mit mittleren bis großen Trainingsmengen

• Attributen, die (weitgehend) unabhängig voneinander sind.

• Idee: Wahrscheinlichkeit der Klassifikation lässt sich berechnen aufgrund der Wahrscheinlichkeiten der Attributwerte für bestimmte Klassifikation

Page 18: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Naive Bayes

• Gesucht: wahrscheinlichster Zielwert vMAP

)()|,...,,,(maxarg

),...,,,(

)()|,...,,,(maxarg:Bayesmit

),...,,,|(maxarg

321

321

321

321

jjnVv

n

jjn

VvMAP

njVv

MAP

vPvaaaaP

aaaaP

vPvaaaaPV

aaaavPV

j

j

j

Page 19: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Naive Bayes

• Nehme an, die Attribute a1, a2, ...,an sind voneinander unabhängig, dann:

• Naive Bayes Klassifikator:

i

jijVv

NB vaPvPvj

)|()(maxarg

Page 20: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Naive Bayes und Textklassifikation

• Betrachte als potentielle Attribute das Vokabular

• Treffe geeignete Auswahl, z.B. schließe die 100 frequentesten Wörter und alle Wörter mit einer Frequenz < 3 aus

• Wie realistisch ist die Unabhängigkeitsannahme für die Textklassifikation?

Page 21: Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1

Aufgaben1. Diskutieren Sie die Unabhängigkeitsannahme des Naive Bayes

Klassifikators im Hinblick auf die Textklassifikation2. Implementierung eines Naive Bayes Classifiers. Material für diese

Aufgabe finden Sie finden im Internet unter http://www.cis.uni-muenchen.de/kurse/pmaier/ML_05/material/MaterialBayes.tgz . Wenn Sie diese Datei auspacken, erhalten Sei einen Ordner der Trainingstexte für verschiedene Zeitungs-Ressorts (Ordner mit entsprechenden Ressortbezeichnern) sowie testdaten (Ordner test) enthält.

– Extrahieren Sie für die Trainingsdaten das Vokabular (wie zuvor beschrieben: schließen Sie die 100 frequentesten Wörter und die Wörter mit einer Frequenz < 3 aus)

– Berechnen Sie für jedes Wort w und jede Kategorie c den Wert P(w|c)

– Berechnen Sie für die Testdokumente im Verzeichnis test die wahrscheinlichste Kategorie

– Zeit für die Bearbeitung der 2. Aufgabe: 2 Wochen