Download - Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Transcript
Page 1: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Mathematische Grundlagen IIIMaschinelles Lernen I: Klassifikation mit Naive Bayes

Vera Demberg

Universitat des Saarlandes

7. Juli 2014

Vera Demberg (UdS) Mathe III 7. Juli 2014 1 / 39

Page 2: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Reminder to self: Hiwi positions

Hiwi Stellen zu vergeben. Interessenten bitte bei mir noch diese Wochemelden. ([email protected])

Vera Demberg (UdS) Mathe III 7. Juli 2014 2 / 39

Page 3: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Inhaltsverzeichnis

1 Was bedeutet Maschinelles Lernen?

2 Frequentisten vs. Bayes’sche Statistik

3 Naive Bayes

4 Fallbeispiel: WortbedeutungsdisambiguierungNaive Bayes

Vera Demberg (UdS) Mathe III 7. Juli 2014 3 / 39

Page 4: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Inhaltsverzeichnis

1 Was bedeutet Maschinelles Lernen?

2 Frequentisten vs. Bayes’sche Statistik

3 Naive Bayes

4 Fallbeispiel: WortbedeutungsdisambiguierungNaive Bayes

Vera Demberg (UdS) Mathe III 7. Juli 2014 4 / 39

Page 5: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Definition of Learning

Aus Mitchell (1997: 2):A computer program is said to learn from experience E with respect tosome class of tasks T and performance measure P, if its performance attasks in T, as measured by P, improves with experience E.

Aus Witten und Frank (2000: 6):things learn when they change their behavior in a way that makes themperform better in the future.

Vera Demberg (UdS) Mathe III 7. Juli 2014 5 / 39

Page 6: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Maschinelles Lernen

Kunstliche Generierung von Wissen aus Erfahrung

Erkennung komplexer Muster und Regelmaßigkeiten in vorhandenenDaten

Ziel: Verallgemeinerung (Generalisierung)

Uber das Nachschlagen bereits gesehener Beispiele hinausgehenBeurteilung unbekannter Daten

Beispiele:

Die Gleichung einer Geraden anhand zweier Punkten bestimmen.Die Bedeutung eines Wortes in einem neuen Text basierend auf derBedeutung des Wortes in anderen Texten bestimmen.

Vera Demberg (UdS) Mathe III 7. Juli 2014 6 / 39

Page 7: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Beispiel

Der Manager eines Golf-Clubs mochte wissen, wann er viele Kunden zu erwartenhat, damit er Studenten als Aushilfe einstellen kann, und wann keiner spielen will,damit er seinen Angestellten freigeben kann.

Zwei Wochen lang fuhrt er Buch daruber, wie das Wetter ist und ob er viele oderwenige Kunden an dem Tag hat.

Er schreibt sich auf:

ob das Wetter heiter, bewolkt oder regnerisch ist,

wie warm es ist,

wieviel Luftfeuchtigkeit es gibt,

ob der Wind stark weht oder nicht,

ob er viele Kunden er an dem Tag hat

Vera Demberg (UdS) Mathe III 7. Juli 2014 7 / 39

Page 8: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Beispieldatensatz

Wir wollen lernen, bei welchen Wetterkonditionen gespielt wird.

outlook temp. humidity windy play

sunny hot high false nosunny hot high true noovercast hot high false yesrainy mild high false yesrainy cool normal false yesrainy cool normal true noovercast cool normal true yessunny mild high false nosunny cool normal false yesrainy mild normal false yessunny mild normal true yesovercast mild high true yesovercast hot normal false yesrainy mild high true no

Vera Demberg (UdS) Mathe III 7. Juli 2014 8 / 39

Page 9: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Beispiel: Ein numerischer Datensatz

Outlook Temp. Humidity Windy # Cust.sunny 85 85 false 12sunny 80 90 true 10overcast 83 86 false 30rainy 70 96 false 15rainy 68 80 false 16rainy 65 70 true 5overcast 64 65 true 24sunny 72 95 false 10sunny 69 70 false 18rainy 75 80 false 20sunny 75 70 true 25overcast 72 90 true 18overcast 81 75 false 32rainy 71 91 true 8

Vera Demberg (UdS) Mathe III 7. Juli 2014 9 / 39

Page 10: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Terminologie

Instanz: Ein einzelnes Beispiel aus dem Datensatz.Beispiel: eine Zeile aus der Tabelle von der letzten Folie.

Attribut / Feature: Eine Eigenschaft einer Instanz.Beispiel: outlook, temperature, humidity, windy.

Wert: Wert eines Attributs,Beispiel: sunny, overcast, rainy fur Attribut outlook.

Konzept: das was wir lernen wollen,Beispiel: eine Klassifikation von Instanzen in spielen und nicht spielen.

Vera Demberg (UdS) Mathe III 7. Juli 2014 10 / 39

Page 11: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Regeln lernen

Beispiel fur Regeln, die man aus dem Beispieldatensatz lernen konnte:

if outlook = sunny and humidity = high then play = noif outlook = rainy and windy = true then play = noif outlook = overcast then play = yesif humidity = normal then play = yesif none of the above then play = yes

(Dies ist eine Entscheidungsliste: von oben nach unten werden die Regeln

durchgegangen, bis eine anwendbare Regel gefunden wird, die dann ausgefuhrt wird.)

Diese Regeln sind Klassifikationsregeln(eine neue Instanz, wie z.B. “outlook=sunny, temp.=hot, humidity=low,windy=true” konnte damit in spielen oder nicht spielen klassifiziertwerden).

Vera Demberg (UdS) Mathe III 7. Juli 2014 11 / 39

Page 12: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Was wollen wir lernen?

Klassifikation ist nur eine Art von maschinellem Lernen.

Maschinelles Lernen kann in folgende Kategorien von Lernzielen unterteiltwerden:

Klassifikation: Instanzen einer vordefinierten Klasse zuordnen. (sieheerster Datensatz)

Clustering: Klassen von Instanzen, die zusammengehoren, entdecken.

Assoziation: Relationen zwischen Attributen lernen

Numerische Vorhersage (Regression): Eine numerische Große(anstelle einer Klasse) fur eine Instanz vorhersagen. (siehe zweiterDatensatz)

Vera Demberg (UdS) Mathe III 7. Juli 2014 12 / 39

Page 13: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Beispieldatensatz 1

outlook temp. humidity windy play

sunny hot high false nosunny hot high true noovercast hot high false yesrainy mild high false yesrainy cool normal false yesrainy cool normal true noovercast cool normal true yessunny mild high false nosunny cool normal false yesrainy mild normal false yessunny mild normal true yesovercast mild high true yesovercast hot normal false yesrainy mild high true no

Vera Demberg (UdS) Mathe III 7. Juli 2014 13 / 39

Page 14: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Was wollen wir lernen?

Klassifikation ist nur eine Art von maschinellem Lernen.

Maschinelles Lernen kann in folgende Kategorien von Lernzielen unterteiltwerden:

Klassifikation: Instanzen einer vordefinierten Klasse zuordnen. (sieheerster Datensatz)

Clustering: Klassen von Instanzen, die zusammengehoren, entdecken.

Assoziation: Relationen zwischen Attributen lernen

Numerische Vorhersage (Regression): Eine numerische Große(anstelle einer Klasse) fur eine Instanz vorhersagen. (siehe zweiterDatensatz)

Vera Demberg (UdS) Mathe III 7. Juli 2014 14 / 39

Page 15: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Was bedeutet Maschinelles Lernen?

Beispiel 2: Ein numerischer Datensatz

Outlook Temp. Humidity Windy # Cust.sunny 85 85 false 12sunny 80 90 true 10overcast 83 86 false 30rainy 70 96 false 15rainy 68 80 false 16rainy 65 70 true 5overcast 64 65 true 24sunny 72 95 false 10sunny 69 70 false 18rainy 75 80 false 20sunny 75 70 true 25overcast 72 90 true 18overcast 81 75 false 32rainy 71 91 true 8

Vera Demberg (UdS) Mathe III 7. Juli 2014 15 / 39

Page 16: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Frequentisten vs. Bayes’sche Statistik

Inhaltsverzeichnis

1 Was bedeutet Maschinelles Lernen?

2 Frequentisten vs. Bayes’sche Statistik

3 Naive Bayes

4 Fallbeispiel: WortbedeutungsdisambiguierungNaive Bayes

Vera Demberg (UdS) Mathe III 7. Juli 2014 16 / 39

Page 17: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Frequentisten vs. Bayes’sche Statistik

Wiederholung Satz von Bayes

In der Statistik gibt es zwei Hauptansatze:

Frequenzen (Maximum Likelihood Estimate)

argmaxm

P(d |µm) =C (Kopf )

N= 0.8

Bayes’scher Ansatz

argmaxm

P(µm|d) =P(d |µm) ∗ P(µm)

P(d)< 0.8

P(µm) : Prior – hier konnen wir unsereEinschatzung, dass die Munze normal aussiehteinfließen lassen, und wie sicher wir uns unsererEinschatzung sind.

Beispiel: Munzwurf

10 Wurfe

8 mal Kopf

die Munze siehtnormal aus

Notation

µ = modeld = dataC() = count()

Vera Demberg (UdS) Mathe III 7. Juli 2014 17 / 39

Page 18: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Frequentisten vs. Bayes’sche Statistik

Bayes

Bayes’scher Satz:

P(µ|d) =P(d |µ) ∗ P(µ)

P(d)

P(µ) = a-priori Wahrscheinlichkeit

P(d |µ) = Likelihood

P(d) = Wahrscheinlichkeit der Daten

P(µ|d) = a-posteriori Wahrscheinlichkeit

Bayes’sche Entscheidungsregel:

Entscheide fur Model µ′ falls P(µ′|d) > P(µi |d) fur alle µi 6= µ′

Vera Demberg (UdS) Mathe III 7. Juli 2014 18 / 39

Page 19: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Frequentisten vs. Bayes’sche Statistik

Maximum-a-posteriori (Map)

Maximum-a-posteriori (Map) Wir wollen fur das beste Model µgegeben der Daten d finden:

µmap = argmaxm

P(µm|d) Bayes’scher Satz

= argmaxm

P(µm)P(d |µm)

P(d)P(d) fallt weg, weiles konstant und un-abhangig von derHypothese ist

= argmaxm

P(µm)P(d |µ)

Vera Demberg (UdS) Mathe III 7. Juli 2014 19 / 39

Page 20: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Frequentisten vs. Bayes’sche Statistik

Maximum Likelihood

Jetzt nehmen wir an, dass wir kein Vorwissen haben. Dann brauchen wireinen einformigen Prior P(µi ) = P(µj) fur alle µi , µj ∈ µ.

Damit vereinfacht sich die Berechnung der a-posteriori-Wahrscheinlichkeitdeutlich:

µML = argmaxm

P(d |µm)

Dieses Model nennt man die Maximum Likelihood Hypothese.

Vera Demberg (UdS) Mathe III 7. Juli 2014 20 / 39

Page 21: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Inhaltsverzeichnis

1 Was bedeutet Maschinelles Lernen?

2 Frequentisten vs. Bayes’sche Statistik

3 Naive Bayes

4 Fallbeispiel: WortbedeutungsdisambiguierungNaive Bayes

Vera Demberg (UdS) Mathe III 7. Juli 2014 21 / 39

Page 22: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Klassifikation mit Naive Bayes

Bei einer Klassifikationsaufgabe mussen Instanzen einer Klasse czugeordnet werden.

Wir brauchen also vordefinierte Klassen c

Wir brauchen ein Trainingsset von Instanzen (bestehend ausAttributen a), die den verschiedenen Klassen zugeordnet sind.

Zur Klassifikation konnen wir die Naive Bayes Methode verwenden.

Vera Demberg (UdS) Mathe III 7. Juli 2014 22 / 39

Page 23: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Naive Bayes Annahme

Naive Bayes Annahme:

Attribute a sind alle voneinander unabhangig!

cmap = argmaxc∈C P(c|a1, a2, · · · , an)

= argmaxc∈CP(a1,a2,··· ,an|c)P(c)

P(a1,a2,··· ,an) Bayes′scher Satz

= argmaxc∈C P(a1, a2, · · · , an|c)P(c) Normalisierung entfallt

= argmaxc∈Cn∏

i=1P(ai |c)P(c) Unabhangigkeit

P(a|c): Relative Haufigkeit des Attributs a unter den Instanzen, dieKategorie c angehoren

In NLP sind die Attribute haufig Worter – die Unabhangigkeits-annahme ist also tatsachlich sehr naiv.

Allerdings brauchen wir diese Annahme, da wir sonst nicht genugBeobachtungen haben um Wahrscheinlichkeiten sinnvoll abschatzenzu konnen.Vera Demberg (UdS) Mathe III 7. Juli 2014 23 / 39

Page 24: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Naive Bayes Klassifizierer

Beispiel

Klassifizierung von Instanz outlook = sunny , temperature = cool ,humidity = high, windy = true:

cmap = argmaxc∈yes,no P(c) ·∏

i P(ai |c)

= argmaxc∈yes,no P(c) · P(outlook = sunny |c)· P(temperature = cool |c)· P(humidity = high|c)· P(windy = true|c)

Berechnung der relativen Haufigkeit von P(sunny |yes):

Insgesamt gibt es 9 Instanzen mit play = yes,davon 2 bei denen outlook = sunny ,also ist P(sunny |yes) = 2

9

Vera Demberg (UdS) Mathe III 7. Juli 2014 24 / 39

Page 25: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Naive Bayes Klassifizierer

Vorgehen

Zuerst die Wahrscheinlichkeit jeder Kategorie in den Trainingsdatenberechnen

Gesamthaufigkeiten fur “play”: yes = 9, no = 5

Wahrscheinlichkeiten: yes = 914 , no = 5

14

Fur jede Kategorie die Wahrscheinlichkeit der einzelnen Attributeberechnen

freq. P

yes no yes no

Outlook sunny 2 3 29

35

overcast 4 0 49 0

rainy 3 2 39

25∑

9 5 1 1

Temperature . . .

Humidity . . .

Windy . . .Vera Demberg (UdS) Mathe III 7. Juli 2014 25 / 39

Page 26: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Naive Bayes Klassifizierer

Vorgehen, Teil 2

Wahrscheinlichkeit jeder Kategorie fur dievorliegende Instanz berechnen

P(yes) · P(sunny |yes) · P(cool |yes) · P(high|yes) · P(true|yes)= 9

14 ∗29 ∗

39 ∗

39 ∗

39 = 0.0053

P(no) · P(sunny |no) · P(cool |no) · P(high|no) · P(true|no)= 5

14 ∗35 ∗

15 ∗

45 ∗

35 = 0.0206

Kategorie zuweisen

cmap = argmaxc∈yes,no

P(c) ·∏i

P(ai |c)

= no

Vera Demberg (UdS) Mathe III 7. Juli 2014 26 / 39

Page 27: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Naive Bayes Klassifizierer

Textklassifikation

Bei der Klassifikation von Dokumenten werden die Worter des Textes alsAttribute eingesetzt:

cmap = argmaxc

P(c)P(d |c)

= argmaxc

P(c)∏i

P(wi |c)

P(wi |c) : Wahrscheinlichkeit, dass Wort wi in einemDokument mit Klasse c vorkommt

Vera Demberg (UdS) Mathe III 7. Juli 2014 27 / 39

Page 28: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Klassifikation nach Bayes

Anwendung: Spam herausfiltern

Datensatz:Ein Korpus von E-Mail-Nachrichten, annotiert als “Spam” vs “Ham”

Aufgabe: Eine neue Nachricht als “Spam” oder “Ham” klassifizieren

Attribute: Vokabular der E-Mail-Nachrichten im Trainingskorpus

Bsp.: Eine E-Mail mit dem Inhalt “Get rich fast!!!”

cmap = argmaxc∈spam,ham

P(c) ·∏i

P(ai |c)

= argmaxc∈spam,ham

P(c) · P(get|c) · P(rich|c) · P(fast|c) · P(!!!|c)

Vera Demberg (UdS) Mathe III 7. Juli 2014 28 / 39

Page 29: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Klassifikation nach Bayes

Anwendung: Spam herausfiltern

Datensatz:Ein Korpus von E-Mail-Nachrichten, annotiert als “Spam” vs “Ham”

Aufgabe: Eine neue Nachricht als “Spam” oder “Ham” klassifizieren

Attribute: Vokabular der E-Mail-Nachrichten im Trainingskorpus

Bsp.: Eine E-Mail mit dem Inhalt “Get rich fast!!!”

cmap = argmaxc∈spam,ham

P(c) ·∏i

P(ai |c)

= argmaxc∈spam,ham

P(c) · P(get|c) · P(rich|c) · P(fast|c) · P(!!!|c)

Vera Demberg (UdS) Mathe III 7. Juli 2014 28 / 39

Page 30: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Anwendung: Spam Herausfiltern

Problem: was passiert, wenn wir “rich” und “!!!” nie in Ham-E-Mailsgesehen haben?

Null-Werte fuhren dazu, dass Kategorien ununterscheidbar werdenP(ham) · P(get|ham) · P(rich|ham) · P(fast|ham) · P(!!!|ham)

= P(ham) · P(get|ham) · 0 · P(fast|ham) · 0 = 0 !

Mogliche Losung: Kleine Werte zu Zahler und Nenner hinzufugen,damit beide ungleich null werden (smoothing)

P(ax |c) =nx + 1

k

n + 1

n : Anzahl Instanzen in Kategorie cnx : Anzahl Instanzen in Kategorie c, bei denen a = xk : Anzahl Werte, die Attribut a annehmen kann

Vera Demberg (UdS) Mathe III 7. Juli 2014 29 / 39

Page 31: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Anwendung: Spam Herausfiltern

Problem: was passiert, wenn wir “rich” und “!!!” nie in Ham-E-Mailsgesehen haben?

Null-Werte fuhren dazu, dass Kategorien ununterscheidbar werdenP(ham) · P(get|ham) · P(rich|ham) · P(fast|ham) · P(!!!|ham)

= P(ham) · P(get|ham) · 0 · P(fast|ham) · 0 = 0 !

Mogliche Losung: Kleine Werte zu Zahler und Nenner hinzufugen,damit beide ungleich null werden (smoothing)

P(ax |c) =nx + 1

k

n + 1

n : Anzahl Instanzen in Kategorie cnx : Anzahl Instanzen in Kategorie c, bei denen a = xk : Anzahl Werte, die Attribut a annehmen kann

Vera Demberg (UdS) Mathe III 7. Juli 2014 29 / 39

Page 32: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Anwendung: Spam Herausfiltern

Problem: was passiert, wenn wir “rich” und “!!!” nie in Ham-E-Mailsgesehen haben?

Null-Werte fuhren dazu, dass Kategorien ununterscheidbar werdenP(ham) · P(get|ham) · P(rich|ham) · P(fast|ham) · P(!!!|ham)

= P(ham) · P(get|ham) · 0 · P(fast|ham) · 0 = 0 !

Mogliche Losung: Kleine Werte zu Zahler und Nenner hinzufugen,damit beide ungleich null werden (smoothing)

P(ax |c) =nx + 1

k

n + 1

n : Anzahl Instanzen in Kategorie cnx : Anzahl Instanzen in Kategorie c, bei denen a = xk : Anzahl Werte, die Attribut a annehmen kann

Vera Demberg (UdS) Mathe III 7. Juli 2014 29 / 39

Page 33: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Eigenschaften von Naive Bayes Klassifizierern

Inkrementalitat: bei jedem neuen Trainingsbeispiel konnen diea-priori-Wahrscheinlichkeit und die likelihood neu geschatzt werden:flexibel und robust.

Kombiniert Vorwissen mit beobachteten Daten:A-priori-Wahrscheinlichkeit wird multipliziert mit derWahrscheinlichkeit des Models gegeben den Trainingsdaten.

Probabilistische Hypothesen: generiert nicht nur Klassifikationsondern auch Wahrscheinlichkeitsverteilung uber die verschiedenenmoglichen Klassen.

Meta-Klassifikation: die Ausgaben mehrerer Klassifizierer konnenkombiniert werden (z.B. durch Multiplikation derWahrscheinlichkeiten die die verschiedenen Klassifizierer fur einebestimmte Klasse vorhersagen).

Vera Demberg (UdS) Mathe III 7. Juli 2014 30 / 39

Page 34: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Naive Bayes

Zusammenfassung Naive Bayes Klassifikation

Der Naive Bayes Klassifizierer kombiniert Vorwissen mit beobachtetenDaten.

Berechnet die maximum a posterior (MAP) Hypothese oder diemaximum likelihood (ML) hypothesis (wie MAP aber mit uniformemPrior).

Der Naive Bayes Klassifizierer nimmt Unabhangigkeit zwischen denAttributen an, und weist einer neuen Instanz die Klasse mit MAPWahrscheinlichkeit zu.

Wahrscheinlichkeiten konnen von Frequenzen geschatzt werden.Problem: seltene / ungesehene Ereignisse → smoothing.

Vera Demberg (UdS) Mathe III 7. Juli 2014 31 / 39

Page 35: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Fallbeispiel: Wortbedeutungsdisambiguierung

Inhaltsverzeichnis

1 Was bedeutet Maschinelles Lernen?

2 Frequentisten vs. Bayes’sche Statistik

3 Naive Bayes

4 Fallbeispiel: WortbedeutungsdisambiguierungNaive Bayes

Vera Demberg (UdS) Mathe III 7. Juli 2014 32 / 39

Page 36: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Fallbeispiel: Wortbedeutungsdisambiguierung

Wortbedeutungsdisambiguierung

Viele Worte sind mehrdeutig

Intuition: bessere Ergebnisse, wenn wir die Mehrdeutigkeit auflosen.

Maschinelle UbersetzungFragebeantwortungSucheAutomatische Zusammenfassungund viele andere

Beispiele

Bank → Geldinstitut oder Parkbank?Decke → Bettdecke oder Zimmerdecke?Angeln → Anglerwerkzeug? Aktivitat Fische zu fangen? Turangeln?

Vera Demberg (UdS) Mathe III 7. Juli 2014 33 / 39

Page 37: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Fallbeispiel: Wortbedeutungsdisambiguierung

Mehrdeutige Worter

mehrdeutige Worter mit total unterschiedlichen Bedeutungen wie“Bank” oder “Decke” sind eher untypisch

oft haben Worter mehrere ahnliche Bedeutungen

Beispiel zum Mitmachen

Welche Bedeutungen von “Titel” fallen Ihnen ein?

viele Bedeutungen sind schwer zu unterscheiden

Worterbucher sind weder vollstandig noch konsistent

manachmal kann ein Wort auch verschiedene Wortarten haben(z.B. “vor” – Praposition oder Verbpartikel?)

wird uber POS-tagging gelostProbleme recht unterschiedlichPOS tagging: lokaler Kontext umgebender Wortarten hilft weiter.Bedeutung von anderen Wortern im Textabschnitt hilft weiter.

Vera Demberg (UdS) Mathe III 7. Juli 2014 34 / 39

Page 38: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Fallbeispiel: Wortbedeutungsdisambiguierung

Mehrdeutige Worter

mehrdeutige Worter mit total unterschiedlichen Bedeutungen wie“Bank” oder “Decke” sind eher untypisch

oft haben Worter mehrere ahnliche Bedeutungen

Beispiel zum Mitmachen

Welche Bedeutungen von “Titel” fallen Ihnen ein?

viele Bedeutungen sind schwer zu unterscheiden

Worterbucher sind weder vollstandig noch konsistent

manachmal kann ein Wort auch verschiedene Wortarten haben(z.B. “vor” – Praposition oder Verbpartikel?)

wird uber POS-tagging gelostProbleme recht unterschiedlichPOS tagging: lokaler Kontext umgebender Wortarten hilft weiter.Bedeutung von anderen Wortern im Textabschnitt hilft weiter.

Vera Demberg (UdS) Mathe III 7. Juli 2014 34 / 39

Page 39: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Fallbeispiel: Wortbedeutungsdisambiguierung

Training

Wir betrachten heute vorallem uberwachte Lernverfahren.

Fur uberwachtes Lernen braucht man Trainingsdaten.

Ausreichend große Textmenge mit Wortbedeutungen zu annotieren istteuer.

Pseudoworte als Training (Gale et al. 1992, Schutze 1992)

Ersetze zwei unterschiedliche Worter durch ein Pseudowortz.B. alle Vorkommen von Banane und Tur ersetzen durch Banane-Tur.so konnen wir leicht beliebig grosse Test- und Trainingssets erstellen.

Vera Demberg (UdS) Mathe III 7. Juli 2014 35 / 39

Page 40: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Fallbeispiel: Wortbedeutungsdisambiguierung Naive Bayes

Naive Bayes fur Wortbedeutungsdisambiguierung

Naive Bayes Klassifikation

Bayes’scher Satz: P(sk |c) = P(c|sk )P(sk )P(c)

Wir wahlen die wahrscheinlichste Bedeutung s ′:

s ′ = argmaxsk P(sk |c)= argmaxsk P(c |sk)P(sk)= argmaxsk [logP(c|sk) + logP(sk)]

mit Naive Bayes: P(c |sk) =∏

vj∈c P(vj |sk)

dann schatzen wir mit MLE:

P(vj |sk) =C (vj , sk)∑t C (vt , sk)

und P(sk) =C (sk)

C (w)

Notation

w einmehrdeutigesWort

sk Bedeutungenvon w

ci Kontexte von wim Korpus

vj Worter aus demKontext die alsAttribute furdie Disambigu-ierung benutztwerden.

Vera Demberg (UdS) Mathe III 7. Juli 2014 36 / 39

Page 41: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Fallbeispiel: Wortbedeutungsdisambiguierung Naive Bayes

Naive Bayes fur Wortbedeutungsdisambiguierung

Naive Bayes Klassifikation

Bayes’scher Satz: P(sk |c) = P(c|sk )P(sk )P(c)

Wir wahlen die wahrscheinlichste Bedeutung s ′:

s ′ = argmaxsk P(sk |c)= argmaxsk P(c |sk)P(sk)= argmaxsk [logP(c|sk) + logP(sk)]

mit Naive Bayes: P(c |sk) =∏

vj∈c P(vj |sk)

dann schatzen wir mit MLE:

P(vj |sk) =C (vj , sk)∑t C (vt , sk)

und P(sk) =C (sk)

C (w)

Notation

w einmehrdeutigesWort

sk Bedeutungenvon w

ci Kontexte von wim Korpus

vj Worter aus demKontext die alsAttribute furdie Disambigu-ierung benutztwerden.

Vera Demberg (UdS) Mathe III 7. Juli 2014 36 / 39

Page 42: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Fallbeispiel: Wortbedeutungsdisambiguierung Naive Bayes

Naive Bayes fur Wortbedeutungsdisambiguierung

Naive Bayes Klassifikation

Bayes’scher Satz: P(sk |c) = P(c|sk )P(sk )P(c)

Wir wahlen die wahrscheinlichste Bedeutung s ′:

s ′ = argmaxsk P(sk |c)= argmaxsk P(c |sk)P(sk)= argmaxsk [logP(c|sk) + logP(sk)]

mit Naive Bayes: P(c |sk) =∏

vj∈c P(vj |sk)

dann schatzen wir mit MLE:

P(vj |sk) =C (vj , sk)∑t C (vt , sk)

und P(sk) =C (sk)

C (w)

Notation

w einmehrdeutigesWort

sk Bedeutungenvon w

ci Kontexte von wim Korpus

vj Worter aus demKontext die alsAttribute furdie Disambigu-ierung benutztwerden.

Vera Demberg (UdS) Mathe III 7. Juli 2014 36 / 39

Page 43: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Fallbeispiel: Wortbedeutungsdisambiguierung Naive Bayes

Resultate fur Naive Bayes Klassifikator

Wir konnen nach dem Training sehen, welches die aussagekraftigstenAttribute fur eine Entscheidung zwischen zwei Klassen sind.

ai ist ein guter Prediktor fur Bedeutung sk im Gegensatz zuBedeutung sl , wenn P(ai |sk) > P(ai |sl).

Beispiel: Disambiguierung von drug als entweder ‘illicit substance‘oder medication.

P(prescription|‘illicit substance‘) < P(prescription|‘medication‘)

Beispiel: Disambiguierung von “drug”

Bedeutung aussagekraftigste Attributemedication prices, prescription, patent, increase, consumer, pharmaceuticalillegal substance abuse, paraphernalia, illicit, alcohol, cocaine, traffickers

Vera Demberg (UdS) Mathe III 7. Juli 2014 37 / 39

Page 44: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Fallbeispiel: Wortbedeutungsdisambiguierung Naive Bayes

Diskussion

Wir haben gesehen, dass man Trainingsdaten automatisch erzeugen kanndurch die Einfuhrung von Pseudoambiguitaten: “banana-door”

Viele naturliche Worter haben aber unterschiedliche Bedeutungen, dieeinander ahnlich sind (Dieses Bild hat keinen Titel).

Inwiefern modellieren Pseudoworte die Ambiguitat naturlicher Sprache?

Vera Demberg (UdS) Mathe III 7. Juli 2014 38 / 39

Page 45: Mathematische Grundlagen III - coli.uni-saarland.demasta/mathe3/Bayes.pdf · Mathematische Grundlagen III Maschinelles Lernen I: Klassi kation mit Naive Bayes Vera Demberg Universit

Fallbeispiel: Wortbedeutungsdisambiguierung Naive Bayes

Zusammenfassung

Maschinelles Lernen in der Praxis bedeutet automatisch Regeln undMuster in Beispielen (Daten) zu finden.

Ein typisches Lernproblem ist die Klassifizierung: wir wollen eineInstanz einer bestimmten Klasse zuordnen.

Um das zu tun, gibt es verschiedene Lernmethoden. Heute haben wiruns den Naive Bayes Klassifizierer angeschaut.

Bayes’sche Statistik kombiniert Vorwissen mit Beobachtungen

Naive Bayes macht die Annahme, dass die Attribute einer Instanzvoneinander unabhangig sind.

Fallbeispiele:

Textklassifizierung von Emails in Ham und SpamBedeutungsdisambiguierung von Wortern

Vera Demberg (UdS) Mathe III 7. Juli 2014 39 / 39