Maschinelles Lernen
-
Upload
ainsley-puckett -
Category
Documents
-
view
51 -
download
3
description
Transcript of Maschinelles Lernen
Ü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
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)
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) = ?
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) = ?
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}| = ½
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).
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
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
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?
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
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?
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
Optimaler Bayes Klassifikator
• Idee: berechne für jede Hypothese die Wahrscheinlichkeit der Klassifikation und gewichte das jeweils gemäß der Wahrscheinlichkeit der Hypothese!
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
Optimaler Bayes Klassifikator
• Nachteil: sehr aufwendige Berechnung bei großer Hypothesen-Menge!
Hh
iij
ij
ThPhvP
Vv
)|()|(maxarg
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
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
Naive Bayes
• Nehme an, die Attribute a1, a2, ...,an sind voneinander unabhängig, dann:
• Naive Bayes Klassifikator:
i
jijVv
NB vaPvPvj
)|()(maxarg
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?
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