Bayessches Lernen (3) - cs.uni-potsdam.de · Sawade/Landwehr/Scheffer Maschinelles Lernen...

Post on 16-Aug-2019

218 views 0 download

Transcript of Bayessches Lernen (3) - cs.uni-potsdam.de · Sawade/Landwehr/Scheffer Maschinelles Lernen...

Universität PotsdamInstitut für Informatik

Lehrstuhl Maschinelles Lernen

Bayessches Lernen (3)Christoph Sawade/Niels Landwehr

Jules RasetaharisonTobias Scheffer

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Überblick

Wahrscheinlichkeiten, Erwartungswerte, Varianz

Grundkonzepte des Bayesschen Lernens

(Bayessche) Parameterschätzung für Wahrscheinlichkeitsverteilungen

Bayessche Lineare Regression, Naive Bayes

2

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Überblick

Bayessche Lineare Regression

Modellbasiertes Klassifikationslernen: Naive Bayes

3

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

4

Wiederholung: Regression Regressionsproblem:

Trainingsdaten

Matrixschreibweise

Problemstellung Vorhersage: Gegeben L, neues Testbeispiel x Finde optimale Vorhersage y für x

),(),...,,( 11 NN yyL xx= Merkmalsvektorenm

i ∈x

reelles Zielattributiy ∈

( )11 1

1

1

...N

N

m Nm

x xX

x x

= =

x x

=

Ny

y...

1

y

Merkmalsvektoren Zugehörige Labels (Werte Zielattribut)

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

5

Wiederholung: Lineare Regression Modellraum lineare Regression:

Lineare Abhängigkeit von von Parametern w Lineare Abhängigkeit von von Eingaben x

( ) Tf =w x w x

01

m

i ii

w w x=

= +∑0 1x =Zusätzliches konstantes Attribut

w „Parametervektor“, „Gewichtsvektor“

( )fw x( )fw x

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

6

Bayessche Regression: Daten

Modellvorstellung beim Bayesschen Lernen: Prozess der Datengenerierung „Echtes“ Modell wird aus Prior-Verteilung

gezogen Merkmalsvektoren werden unabhängig

voneinander gezogen (nicht modelliert) Für jedes wird das Label gezogen nach

Verteilung (Anschauung: ) Daten L fertig generiert

Wie sieht für Regressionsprobleme aus?

*f ( )P w

1,..., Nx x

ix iy*( | , )i iP y fx

*( | , )i iP y fx

*( )i iy f≈ x

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

7

Bayessche Regression: Daten

Annahme, dass es „echtes“ Modell gibt, dass die Daten perfekt erklärt, unrealistisch Daten folgen nie genau

einer Regressions-Geraden/Ebene

Alternative Annahme: Daten folgen bis auf kleine, zufällige Abweichungen (Rauschen)

T* *( )f =x x w

*( )f x

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

8

Bayessche Regression: Daten

Alternative Annahme: Daten folgen bis auf kleine, zufällige Abweichungen (Rauschen)

Modellvorstellung: Zielattribut y generiert aus plus

normalverteiltes Rauschen

*( )f x

~ ( | 0, )ε ε σ 2*( )y f ε= +x mit

*( )f x

* 0( )f x

*( )f x

20 * * 0( | , ) ( | ( ), )P y x f y f x σ=

Parameter σ modelliertStärke des Rauschens

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

9

Bayessche Regression: Vorhersageverteilung

Ziel: Bayessche Vorhersage

Erinnerung: Berechnung mit Bayesian Model Averaging

( | , ) ( | , ( | )P y L P y P L dθ θ θ= )∫x x

Vorhersage, gegeben Modell

Modell gegeben Trainingsdaten

* arg max ( | , )yy P y L= x

1( | ) ( | ) ( )P L P L PZ

θ θ θ=

Likelihood:Trainingsdatengegeben Modell

Prior über Modelle

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

10

Bayessche Regression: Likelihood

Likelihood der Daten L:

1( | , ) ( ,..., | , )NP X P y y X=y w wBeispiele unabhängig

Nachrechnen: Multidimensionale Normalverteilung mit Kovarianzmatrix

1( | , )N

i iiP y

==∏ x w

21

( | , )N Ti ii

y σ=

=∏ x w

( )T| ,X σ 2= y w I

σ 2I

1 0 ... 00 1 ... 0... ... ... ...0 0 ... 1

=

I

Einheitsmatrix

Vektor der Vorhersagen1

T ...

N

T

T

X

=

x ww

x w

( ) iT

if =w x x w

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

11

Bayessche Regression: Prior

Bayessches Lernen: Prior über Modelle f Modelle parametrisiert durch Gewichtsvektor w Prior über Gewichtsvektoren

Normalverteilung ist konjugiert zu sich selbst, normalverteilter Prior und normalverteilte Likelihood

ergeben wieder normalverteilten Posterior, bei fester Varianz

Deshalb

)(wP

~ ( | 0, )pΣw w

pΣ Kovarianzmatrix, oft 2p pσΣ = I

„erwarten kleine Attributgewichte, |w|2 klein“

2 steuert Stärke des Priorspσ ∈

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

12

Bayessche Regression: Posterior

Posterior-Verteilung über Modelle gegeben Daten

Posterior ist wieder normalverteilt, mit neuem Mittelwert und Kovarianzmatrix

1( | ) ( | ) ( )P L P L PZ

=w w w

1mit A Xσ −2 −=w y TpA XXσ −2 −1= + Σ

T1 ( | , ) ( | 0, )pX IZ

σ 2= ⋅ Σy w w

Bayessche Regel

1( | , )A−= w wOhne Beweis

w 1A−

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

13

Bayessche Regression: Posterior

Posterior:

MAP-Hypothese: ?MAP =w

1( | ) ( | , )p L A−=w w w

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

14

Bayessche Regression: Posterior

Posterior:

MAP-Hypothese:

1( | ) ( | , )p L A−=w w w

MAP =w w1A Xσ −2 −= y

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Sequentielles Update des Posteriors Berechnung des Posterior als sequentielles Update:

Aufmultiplizieren der Likelihood einzelner Instanzen

Sei , der Posterior, wenn wir nur die ersten n Instanzen in L verwenden:

15

( | ) ( ) ( | )P L P P L∝w w w

1( ) ( | , )N

i iiP P y

== ∏w x w

0 ( ) ( )P P=w w ( )nP w

1

3

2

1 1 2

( )

( )

( )

(

3

)

2 3( | ) ( ) ( | , ) ( | , ) ( | , ) .. ( | ,. )

N

P

P

N N

P

P

P L P P y P y P y P y∝ ⋅ ⋅w

w

w

w

w w x w x w x w wx

„Likelihood für einzelnan Prior multiplizieren“

iyInstanzen unabhängig

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Sequentielles Update des Posteriors Sequentielles Update:

Datenpunkte nacheinander anschauen Neue Informationen (Datenpunkte) verändern Stück für

Stück die Verteilung über w

16

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Beispiel Bayessche Regression

17

0 ( ) ( )P P=w wSequentielles Update:

0 ( ) ( )P P=w w 0Sample aus ( )P w

0 1 ( )f x w w x= + (eindimensionale Regression)

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Beispiel Bayessche Regression

18

1 0 1 1( ) ( ) ( | , )P P P y x∝w w wSequentielles Update:

1( )P wSample aus

1( )P w

0 1( )f x w w x= +

1 1Likelihood ( | , )P y x w

Datenpunkt 1 1,x y

1 1( )y f x ε= +

0 1 1w w x ε= + +

0 1 1 1w w x y ε⇒ = − + −

(eindimensionale Regression)

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Beispiel Bayessche Regression

19

1 0 1 1( ) ( ) ( | , )P P P y x∝w w wSequentielles Update:

1Posterior ( )P w 1Sample aus ( )P w

0 1( )f x w w x= + (eindimensionale Regression)

1 1Likelihood ( | , )P y x w

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Beispiel Bayessche Regression

20

2 1 2 2( ) ( ) ( | , )P P P y x∝w w wSequentielles Update:

2 ( )P w 2Sample aus ( )P w

0 1( )f x w w x= +

2 2( | , )P y x w

(eindimensionale Regression)

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Beispiel Bayessche Regression

21

1( ) ( ) ( | , )N N N NP P P y x−∝w w wSequentielles Update:

( )NP w Sample aus ( )NP w

0 1( )f x w w x= +

( | , )N NP y x w

(eindimensionale Regression)

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

22

Bayessche Regression: Vorhersageverteilung

Bayes-Hypothese: wahrscheinlichstes y.

Erinnerung: Berechnung mit Bayesian Model Averaging

Bayessche Vorhersage: Mitteln der Vorhersage über alle Modelle. Gewichtung: wie wahrscheinlich ist Modell a

posteriori.

( | , ) ( | , ( | )P y L P y P L dθ θ θ= )∫x x

Vorhersage, gegeben Modell

Modell gegeben TrainingsdatenBayesian Model

Averaging

* arg max ( | , )yy P y L= x

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

23

Bayessche Regression: Vorhersageverteilung

Vorhersageverteilung wieder normalverteilt:

Optimale Vorhersage: Eingabevektor wird mit multipliziert:

*Ty = x w

x

( | , ) ( | , ) ( | )P y L P y P L d= ∫x x w w w

w

1mit A Xσ −2 −=w y TpA XXσ −2 −1= + Σ

( )1| ,T Ty A−= x w x x

2 1( | , ) ( | , )Ty A dσ −= ∫ x w w w w Ohne Beweis

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

24

Bayessche Regression: Vorhersageverteilung

Bayessche Regression liefert nicht nur Regressionsfunktion sondern Dichte von yund damit auch einen Konfidenzkorridor.

( ) Tf =x x w

x

( ) Tf =x x w

( )1| ,T Ty A−x w x x

z.B. 95% Konfidenz

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Nichtlineare Basisfunktionen

Einschränkung der bisherigen Modelle: nur lineare Abhängigkeiten zwischen x und f(x).

In vielen Fällen nützlich: nicht-lineare Abhängigkeit Grössere Klasse von Funktionen repräsentierbar

25

Lineare Daten Nicht-lineare Daten

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Nichtlineare Basisfunktionen

Einfachster Weg: Lineare Regression auf nichtlinearen Basisfunktionen Idee: Nicht auf den ursprünglichen x arbeiten,

sondern auf nichtlinearer Transformation Einfach: Inferenz für Lernen, Vorhersage im Prinzip

unverändert Basisfunktionen

26

1,..., :d Xφ φ → Instanzenraum (meist )mX X =

1

2

( )( )

( )...

( )

d

d

φφ

φ

φ

= ∈

xx

x

x

: m dφ →

meistens d m

( )φ x

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Nichtlineare Basisfunktionen

Lineare Regression in den Basisfunktionen

Anschauung: Abbildung in höherdimensionalenRaum , lineare Regression dort

27

01

( ) ( )d

i ii

f w wφ=

= +∑x x

( )Tφ= w x

( )Xφ

f(x) ist lineare Kombination von Basisfunktionen

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Nichtlineare Basisfunktionen: Beispiel

Beispiel

Nichtlineare Funktion in X darstellbar als lineare Funktion in

28x

2xx

yy

2( ) 1 3f x x x= − + φ

1( )x xφ =

( )Xφ

22 ( )x xφ =X =

0 1 1 2 2( ) ( ) ( )f x w w x w xφ φ= + +

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Nichtlineare Basisfunktionen

Beispiele für nicht-lineare Basisfunktionen Polynome

29

( ) jj x xφ =

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Nichtlineare Basisfunktionen

Beispiele für nicht-lineare Basisfunktionen Gauss-Kurven

30

2

2

( )( ) exp

2j

j

xx

φ −

= −

1,..., Mittelpunktedµ µ

2s feste Varianz

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Nichtlineare Basisfunktionen

Beispiele für nicht-lineare Basisfunktionen Sigmoide

31

( ) jj

xx

φ σ−

=

1( )1 exp( )

aa

σ =+ −

1,..., Mittelpunktedµ µ

s feste Skalierung

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

32

Regression mit Basisfunktionen Funktion bildet m-dimensionalen Eingabevektor x auf

d-dimensionalen Merkmalsvektor ab.

Regressionsmodell:

Optimale Vorhersage wie bisher, mit statt x.

φ

T( ) ( )f φ=x x w

)(xφ

( )1( | , ) | ) , ) )T TP y L y Aφ φ φ−= ( ( (x x w x x

1, und )TpA A Xσ σ φ−2 −1 −2 −= ΦΦ + Σ = Φ Φ = (w y

* arg max ( | , ) )Tyy p y L φ= = (x x w

( )φ x

Transformierte Testinstanz

Transformierte Datenmatrix

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Beispiel Regression mit Nichtlinearen Basisfunktionen

Beispiel für Regression mit nicht-linearen Basisfunktionen Generiere N=25 nicht-lineare Datenpunkte durch

9 Gaussche Basisfunktionen

Wie sieht der Posterior und die Vorhersageverteilung aus?

33

2sin(2 ) ~ ( | 0, ), [0,1]y x xπ ε ε ε σ= + ∈

2

2

( )( ) exp

2j

j

xx

φ −

= −

( | , )P y Lx( | )P Lw

1 90.1,..., 0.9µ µ= =

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Vorhersageverteilung

34

N=1

N=25

N=2

N=4

sin(2 )y xπ ε= +

( )f x Datenpunkt

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Samples aus dem Posterior

35

N=1

N=4

N=2

N=25

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Überblick

Bayessche Lineare Regression

Modellbasiertes Klassifikationslernen: Naive Bayes

36

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

37

Bayessche Klassifikation

Optimale Vorhersage von y gegeben neues x: Bayesianmodel averaging

Regression: geschlossene Lösung, Vorhersageverteilung normalverteilt

Klassifikation: keine geschlossene Lösung für Vorhersageverteilung

Zweitbester Ansatz: MAP-Hypothese Manchmal geschlossene Lösung für Posterior (naive

Bayes ja, logistische Regression nein) MAP-Hypothese kann (numerisch) berechnet werden

* arg max ( | , )

arg max ( | , ( | )y

y

y P y L

P y P L dθ θ θ

=

= )∫x

x

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

38

Klassifikationsprobleme

Trainingsdaten L

Matrixschreibweise für Trainingsdaten L

Lernen: MAP Modell

),(),...,,( 11 NN yyL xx= Merkmalsvektorendiskrete Klassenlabels

ixiy

( )11 1

1

1

...N

N

m Nm

x xX

x x

= =

x x

=

Ny

y...

1

y

Merkmalsvektoren X Zugehörige Klassenlabel y

arg max ( | )arg max ( | (

MAP P LP L P

θ

θ

θ θθ θ

=

= ) )

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

39

Modellbasiertes und DiskriminativesLernen

Likelihood : welcher Teil der Daten L wird modelliert?

Diskriminatives Lernen:

θ wird so gewählt, dass es Werte der Klassenvariable y in den Daten gut modelliert.

Klassifikator soll nur y für jedes x gut vorhersagen. Wozu also gute Modellierung von X berücksichtigen?

Generatives (Modellbasiertes) Lernen:

θ wird so gewählt, dass es Merkmalsvektoren X und Werte der Klassenvariable y in den Daten gut modelliert

arg max ( ) ( | ,MAP P P Xθθ θ θ= )y

( |P L θ )

arg max ( ) ( , |MAP P P Xθθ θ θ= )y

Diskriminative Likelihood

Generative Likelihood

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

40

Modellbasiert: Naive Bayes

Naive Bayes: Modellbasierte Klassifikation

Likelihood der Daten L: N unabhängige Instanzen mit Klassenlabels

1 1( | ) ( ,..., , ,..., | )N NP L P y yθ θ= x x

1( , |N

i iiP y θ

== )∏ x

arg max ( ) ( , |MAP P P Xθθ θ θ= )y

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Modellbasiert: Naive Bayes

Wie modellieren wir ? Gemeinsame Verteilung (Produktregel)

Wie modellieren wir ?

hochdimensional, 2m verschiedene Werte (xi binär)

„Naive“ Unabhängigkeitsannahme41

( , |P y θ )x

( , | ( | ) ( | , )P y P y P yθ θ θ) =x x

Klassenwahrscheinlichkeit: z.B. P(spam) vs P(nicht spam)

x-Verteilung gegeben Klasse:z.B. Wortverteilung in Spam-Emails

( | ,P y θ )x

1

...

m

x

x

=

x

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Für (Attribute), (Klassen):

Naive Bayes: Unabhängigkeitsannahme Bedingte Unabhängigkeitsannahme:

Annahme: zwei Klassen, binäre Attribute Modellierte Verteilungen (Modellparameter):

42

1

( | , ) ( | , )m

ii

p y P x yθ θ=

=∏x „Attribute unabhängig gegeben die Klasse y“

ix

( | )P y θ Bernoulli, mit Parameter ( 1| )y P yθ θ= =

( | , )iP x y c θ= Bernoulli, mit Parameter | ( 1| , )ix ciP x y cθ θ= = =

{1,..., }i m∈ {0,1}c∈

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

43

Naive Bayes: Likelihood

Likelihood der Daten L mit bisherigen Annahmen:

,1( | ) ( |N

j jjP L P yθ θ

== )∏ x

= Klassenlabel j-te Instanzjy = Wert i-tes Merkmal j-te Instanzjix

|

1 1( | ( | , i jN m x yy

j ji jj iP y P x yθ θ

= == ) )∏ ∏

Unabhängigkeit Instanzen

Bedingte Unabhängigkeit Attribute, „zuständige“ Modellparameter

1( | ( | , )N

j j jjP y P yθ θ

== )∏ x Produktregel

( ) |0 |11

1... 1...0 1

( | ( | , ( | ,i i

j j

N m mx xyj ji j ji jj i i

j N j Ny y

p y P x y P x yθ θ θ= =1 =1

= == =

= ) ) )

∏ ∏ ∏ ∏ ∏

Label-Likelihood Merkmals-Likelihood negative Instanzen

Merkmals-Likelihood positive Instanzen

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

44

Naive Bayes: Posterior Prior-Verteilung: unabhängig für einzelne Parameter

Posterior: unabhängige Blöcke der Form „Prior x Münzwurf-Likelihood“

( ) ( )|0 |1( ) ( ( (i im mx xyi i

P P P Pθ θ θ θ=1 =1

= ) ) )∏ ∏

( ) |0 |01

1...0

|1 |1

1...1

1( | ) ( ( | ( ( | ,

( ( | ,

y i i

j

i i

j

N m x xyj ji jj i

j Ny

m x xji ji

j Ny

p L P p y P P x yZ

P P x y

θ θ θ θ θ

θ θ

= =1==

=1==

= ) ) ) ) ) )

∏ ∏ ∏

∏ ∏Münzwurf

Münzwurf

Münzwurf

Label-Prior

Merkmals-Priornegative Instanzen

Merkmals-Priorpositive Instanzen

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

45

Naive Bayes: Posterior Konjugierter Prior Beta-Verteilung

Konjugierter Prior: Posterior-Verteilung in jedem Block wieder Beta-Verteilt

A-posteriori Verteilung Naive Bayes: Standard Lösung für Münzwurfszenario

Für (Attribute), (Klassen):0 1( ) ~ ( | , )y yP Betaθ θ α α

| || |( ) ~ ( | , )i i

i i

x c x cx c x cP Betaθ θ α α | ( 1| , )ix c

iP x y cθ θ= = =

{1,..., }i m∈ {0,1}c∈

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

46

Modellbasiert: Naive Bayes

A-posteriori Verteilung für Parameter :

1

Beta-PriorMünzwurf Likelihood

Beta-verteilter Posterior

1( | ) ( ( |my y yjj

P L P P yZ

θ θ θ=

= ) )∏

( | )yP Lθ

01 1

10 0 1 1

: Anzahl Beispiele mit Klasse 0 in 1 mit : Anzahl Beispiele mit Klasse 1 in 2

yMAP

N LNN LN N

αθα α

+ −=

+ + + −

0 0 11( , )yBeta N Nθ α α= | + +

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

47

Modellbasiert: Naive Bayes

A-posteriori Verteilung für Parameter :

| | |

1Beta-Prior

Münzwurf Likelihood

Beta-verteilter Posterior

1( | ) ( ( | ,i i i

j

Nx c x c x c

ji jjy c

P L P P x yZ

θ θ θ==

= ) )∏

|( )ix cP θ

|

|

: Anzahl Beispiele mit und Klasse c in mit

: Anzahl Beispiele mit und Klasse n

1

0 c ii

i

i

i

x c

x c

N x L

N x L

=

=

Für (Attribute), (Klassen):{1,..., }i m∈ {0,1}c∈

|| | | |( , )i

i i i i

x cx c x c x c x cBeta N Nθ α α= | + +

| ||

| | | |

1

2i ii

i i i i

x c x cx cMAP

x c x c x c x c

NN N

αθ

α α+ −

=+ + + −

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

48

Naive Bayes: Lernalgorithmus Eingabe: Schätze Klassenverteilung:

Für Klassen y=0 und y=1, für alle Attribute i, schätze:

Alle Modellparameter gelernt!

1 1( , ),..., ( , )N NL y y= x x

11 1

00 0 1 1

: Anzahl Beispiele mit Klasse 1 in 1 mit : Anzahl Beispiele mit Klasse 0 in 2

yMAP

N LNN LN N

αθα α

+ −=

+ + + −

| ||

| | | |

|

|

1

2

: Anzahl Beispiele mit 1 und Klasse in mit

: Anzahl Beispiele mit 0 und Klasse in

i ii

i i i i

i

i

x y x yx yMAP

x y x y x y x y

x y i

x y i

NN N

N x y L

N x y L

αθ

α α+ −

=+ + + −

=

=

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

49

Naive Bayes: Klassifikation

Eingabe:

Rückgabe:

Laufzeit beim Klassifizieren:

Laufzeit beim Lernen:

1

...

m

x

x

=

x

* arg max ( | , )y MAPy P y θ= x

|1

Klassenverteilung Produkt der Attributverteilungen,gegeben Klasse

arg max ( | ) ( | , )im x yy

y MAP i MAPiP y P x yθ θ

== ∏

(| | )O Y m Anzahl Attribute, | | 2 m Y= =

( | | )O N Y m Anzahl TrainingsinstanzenN =

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

50

Naive Bayes: Beispiel

Trainingsdaten:

Prior: alle Parameter α in den Beta-Verteilungen setzen wir auf α=2 (Pseudocounts: α-1=1)

Gelernte Parameter/Hypothese?

1 2

1

2

3

: Schufa pos. : Student : Rückzahlung ok?Instanz 1 1 1Instanz 1 0 1Instanz 0 1 0

x x yxxx

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

51

Naive Bayes: Beispiel

Gelernte Parameter/Hypothese Merkmalsverteilungen

Klassenverteilung

0 ?1 ?

1( | 0)P x y =1x0 ?1 ?

1( | 1)P x y =1x

0 ?1 ?

2( | 0)P x y =2x0 ?1 ?

2( | 1)P x y =2x

0 ?1 ?

( )P yy

( | )iP x y

( )P y

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

52

Naive Bayes: Beispiel

Gelernte Parameter/Hypothese Merkmalsverteilungen

Klassenprior

0 2/31 1/3

1( | 0)P x y =1x0 1/41 3/4

1( | 1)P x y =1x

0 1/31 2/3

2( | 0)P x y =2x0 2/41 2/4

2( | 1)P x y =2x

0 2/51 3/5

( )P yy

( | )iP x y

( )P y

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

Naive Bayes: Beispiel

Testanfrage:

Vorhersage:

53

(Schufa pos 0,Student 0)= = =x

1 2( 0) ( | 0) ( 0) ( 0 | 0) ( 0 | 0)

2 2 1 4 5 3 3 45

P y P y P y P x y P x y= = = = = = = =

= ⋅ ⋅ =

x

*4 3 045 40

y> ⇒ =

1 2( 1) ( | 1) ( 1) ( 0 | 1) ( 0 | 1)

3 1 2 3 5 4 4 40

P y P y P y P x y P x y= = = = = = = =

= ⋅ ⋅ =

x

* arg max ( | , )y MAPy P y θ= x1

arg max ( | ) ( | , )m

y MAP MAPi

iP y P x yθ θ=

= ∏

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

54

Naive Bayes: Mehrwertige Attribute

Parameter:

Prior: Dirichlet statt Beta.

Schätzen der Parameter:

| für alle Werte von x , alle Klassen i jx v yMAP i jv yθ =

| ||

'| '|'

|

mit : Anzahl Beispiele mit Wert für Attribut und Klasse in

i j i ji j

i j i j

i j

x v y x v yx v yMAP

x v y x v yv

x v y i j

N

N

N v x y L

αθ

α= ==

= =

=

+=

+∑

Saw

ade/Landwehr/S

cheffer Maschinelles Lernen

55

Naive Bayes: Eigenschaften

Einfach zu implementieren, effizient, populär. Funktioniert ok, wenn die Attribute wirklich

unabhängig sind. Das ist aber häufig nicht der Fall. Unabhängigkeitsannahme und modellbasiertes

Training führen häufig zu schlechten Ergebnissen. Logistische Regression, Winnow, Perzeptron sind

meist besser.