1 / 31

Maschinelles Lernen

Maschinelles Lernen. Maximum Likelihood-Schätzung Maximum a posteriori-Schätzung. Bayessches Lernen - Wiederholung. Satz von Bayes. Likelihood. Prior. Dabei sind x die Daten, ω ist eine Klasse/ eine Kategorie. Posterior. Evidenz.

Download Presentation

Maschinelles Lernen

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Maschinelles Lernen Maximum Likelihood-SchätzungMaximum a posteriori-Schätzung

  2. Bayessches Lernen - Wiederholung Satz von Bayes Likelihood Prior Dabei sind x die Daten, ω ist eine Klasse/ eine Kategorie. Posterior Evidenz Erwartetes Risiko/Verlust/Loss von Aktion a bei gegebener Lossfunktion λ: Erwarteter Verlust bei gegebener Entscheidungsregel a: Das Leben könnte so einfach sein… Optimale Entscheidungsregel (Bayes-Entscheidungsregel): Bei gegebenen Daten x wähle die Aktion a(x)=a, für die R(a,x) minimal wird. … isses aaber nicht: Prior und Likelihood müssen bekannt sein, aber genau das ist praktisch nie der Fall. Maschinelles Lernen beschäftigt sich zu einem großen Teil mit der Konstruktion geeigneter Prior und Likelihoods aus gegebenen Daten.

  3. MAP- und ML-Schätzung. Beispiel Wie konstruiert man aus gegebenen Daten geegnete Prior und Likelihoods? 1. Versuch: Benutze die empirischen Häufigkeiten PEmp(ωj) als Annäherung an die wahren Prior P(ωj) Benutze die empirischen Verteilungen PEmp(x|ωj) als Annäherung an die wahre Likelihood P(x|ωj). Daten (Beobachtungen) Empirische Verteilung(en) PEmp(x | Lachs) PEmp(x | Barsch) Das Auszählen der Klassenhäufigkeiten liefert meist eine gute Approximation der wahren Prior. Problem: Die empirische Verteilung ist meist eine schlechte Approximation der Likelihood. Es existieren zu wenige Beobachtungen, um insbesondere hochdimensionale Verteilungen genau zu schätzen.

  4. „gelernte“ Dichtefunktion Parameterschätzung:Mittelwert = 179 Standardabw. = 9.5 MAP- und ML-Schätzung. Beispiel Lösungsmöglichkeit: Lasse Wissen über die Art des Problems, d.h. über die Form der Likelihood, einfließen.  Mache zusätzliche Modellannahmen. Beispiel: Daten D = {x1 , ... ,xk } , xj= Größe von Barsch j in mm D.h. die gesuchte Verteilung die der Zufallsvariable X = Länge eines Barsches. tatsächliche Dichte von X empirische Dichtefunktion Modellannahme: X ist eine normalverteilte Zufallsvariable N(μ,σ2)

  5. MAP- und ML-Schätzung Modellannahmen können helfen, eine Zufallsvariable (bzw. deren Verteilung) besser zu approximieren. Modellannahmen fließen meist durch die Wahl einer Modellklasse ein. Eine Modellklasse ist eine Menge von Zufallsvariablen, von denen jedes Element durch eine feste, kleine Zahl von Parametern beschrieben werden kann. • Beispiele: • Die Modellklasse aller eindimensionalen Normalverteilungen {N(μ,σ2) | μ∊R , σ2>0 } • Die Modellklasse aller multivariaten (n-dimensionalen) Normalverteilungen{N(μ,Σ) | μ∊Rn, Σ positiv definite n x n Matrix} • Die Klasse der Bayesnetze{ BN(V, L) | V gerichteter azyklischer Graph, L Menge von lokalen bedingten Wahrscheinlichkeitsverteilungen} • Die Klasse der Hidden Markov Modelle { HMM(S,A,B,π,V) , Zustandsmenge S, Übergangsmatrix A, Menge Emissionswahrscheinlichkeitsverteilungen B, Anfangsverteilung π, Merkmalsraum V } • u.v.m. Problem (Modellselektion): Welches ist die „richtige“ Modellklasse? Welches ist eine „vernünftige“ Modellklasse?

  6. MAP- und ML-Schätzung Sei eine Modellklasse {Pω(x) | ω∊Ω } gegeben. D.h. jedes konkrete Modell ist eine Wahrscheinlichkeitsverteilung Pω(x), welche durch einen Satz von Parametern ω∊Ω definiert wird. Es soll nun das bestpassende Modell Pω(x) gefunden werden, d.h. der Parametersatz ω∊Ω , welcher die beste Approximation der wahren Verteilung P(X) der Daten liefern.  Problem (Parameteridentifikation): Wie finde ich die „richtigen“ Parameter? Gesucht: Ein Verfahren, das aus den beobachteten Daten D={x1,…,xn} die Parameter Ωeines möglichst gut passenden Modells schätzt. 1. Möglichkeit: Maximum Likelihood Schätzung (ML). Finde das (ein) ∊Ω (den ML-Schätzer), für welches die Beobachtung der Daten D am wahrscheinlichsten ist.Anm.: Fast immer nimmt man die Unabhängigkeit der Daten an. D.h. die Daten sind i.i.d. (=independent, identically distributed) Realisierungen der Zufallsvariablen X. Somit entsteht jedes xj durch unabhängiges Ziehen aus der gleichen Verteilung Pω(x). Dann ist und

  7. Finde das (ein) ∊Ω (den MAP-Schätzer), welches bei gegebenen Daten den Posterior für ω maximiert. MAP- und ML-Schätzung 2. Möglichkeit: Maximum A Posteriori Schätzung (MAP). Nimm an, der Parameterraum Ωsei ein Wahrscheinlichkeitsraum mit Dichte P(ω). Dann ist Likelihood Modellrior Posterior Datenunabhängigkeit angenommen, ergibt sich und Formal unterscheiden sich MAP- und ML-Schätzer nur durch den Modellprior P(ω). Ist der Prior uniform ( P(ω) = const. ), so sind MAP- und ML-Schätzer identisch. Konzeptionell sind beide Verfahren verschieden: ML betrachtet die Daten als Realisierungen eines festen Modells Pω(x), MAP betrachtet die Daten als fest und die Modelle als Realisierungen einer Zufallsvariablen mit der Dichte P(ω|Daten).

  8. Maximum Likelihood bei Normalverteilungen Die eingezeichneten Werte (schwarze Punkte) wurden aus einer Normalverteilung N(θ,σ2) mit bekannter Standardabweichung σ, aber unbekanntem Erwartungswert θ gezogen. θ2 θ3 θ4 θ1 Verschiedene Dichten P(x | θj) Likelihoodfunktion P(D|θ). Dies ist i.d.R. keine Wahrscheinlichkeitsdichte! log-Likelihoodfunktion l(θ) = ln P(D|θ) (Oft ist es leichter, die log-Likelihood zu maximieren)

  9. Maximum Likelihood bei Normalverteilungen

  10. Maximum Likelihood bei Normalverteilungen (Beweis: Übung)

  11. P(μ|D) Maximum a posteriori bei Normalverteilungen n Wir wollen P(μ|D) ∝P(D| μ) P(μ) maximieren. Spezifikation des Priors: P(μ) ~N(μ0,σ02) , μ0 und σ02 sind festgelegt

  12. Maximum a posteriori bei Normalverteilungen Somit hat p(μ|D) die Gestalt Koeffizientenvergleich ergibt: und , wobei

  13. 1 für n∞ 0 für n∞ p(μ|D) nimmt bei μn sein Maximum an, somit ist μn der MAP-Schätzer. Für n∞ geht dieser in den ML-Schätzer μ = über. 0 für n∞ Maximum a posteriori bei Normalverteilungen Auflösen nach μn, σn ergibt (mit ) : Der Posterior versammelt seine Masse mit n∞ immer enger um μn. Mit zunehmendem n wird der Einfluss des Priors (μ0,σ0) auf den Posterior bzw. den MAP-Schätzer immer geringer.

  14. Maximum a posteriori bei Normalverteilungen Während der ML-Schätzer ein Punktschätzer ist (es wird nur ein Satz Parameter ermittelt), liefert der MAP-Ansatz neben einem Punktschätzer eine Wahrscheinlichkeitsverteilung der Parameter, p(μ|D).

  15. α=β=1 Maximum a posteriori bei Binomialverteilungen Einmaliger Münzwurf mit Kopfwahrscheinlichkeit θ: n-faches Werfen derselben Münze (D={x1,…,xn}, davon nK Mal Kopf und nZ Mal Zahl) : Wir suchen den Posterior P(θ|D), gegeben ein geeigneter Prior. Es gibt eine geschickte Priorwahl:

  16. Konjugierte Prior Der Posterior kann nämlich in geschlossener Form ausgerechnet werden, und hat wieder eine Beta-Verteilung, stammt also aus der gleichen Verteilungsfamilie wie der Prior: Sei eine Likelihoodfunktion gegeben. Ein Prior, bezüglich dessen der Posterior aus der gleichen Familie von Wahrscheinlichkeitsverteilungen wie der Prior stammt, heißt konjugierter Prior.Vorteil konjugierter Prior: Die Berechnung des Posteriors ist besonders leicht, da nur die Parameter der Verteilung berechnet werden müssen, wie in obigem Beispiel: Likelihood = Binomialvert. Parameter des Priors: (α,β) Parameter des Posteriors: (α+nK,β+nZ)

  17. Konjugierte Prior R-Code zur Berechnung des Posteriors nach wiederholtem Münzwurf (uniformer Prior)

  18. Konjugierte Prior from Wikipedia, „conjugate prior“

  19. Maschinelles Lernen Erste Schritte in R Verwendung von R-Packages

  20. Was ist „R“ ? • Umgebung zur statistischen Datenanalyse • Open source, weitgehend kompatibel mit Splus • Sehr dynamisch durch einfache Einbindung neuer Funktionen („Packages“) • In der wissenschaftlichen Gemeinschaft das (zusammen mit SAS) am weitesten verbreitete Statistik-Tool • Für Computational Biology der de facto - Standard

  21. http://cran.r-project.org Installation von R/Bioconductor

  22. Installation von R/Bioconductor

  23. Installation von R/Bioconductor

  24. http://bioconductor.org Installation von R/Bioconductor

  25. Installation von R/Bioconductor

  26. Installation von R/Bioconductor

  27. R-Syntax, elementare Rechenoperationen > x = 0:20 > y = x*x > plot(x,y)

  28. R-Syntax, elementare Rechenoperationen > x = 1:4 > y = x*2 > z = x*c(0,1)

  29. R-Syntax, elementare Rechenoperationen > x = rnorm(100,mean=0,sd=1) > hist(x) > density(x)

  30. R-Syntax, elementare Rechenoperationen > x = rnorm(6,mean=0,sd=1) > x [1] -1.08095279 -1.32442492 -0.77553316 -0.44245375 0.03208035 0.03687350 > likelihood = + function(mu=0,sigma=1,daten=x)+ {prod(dnorm(daten,mean=mu,sd=sigma))} > theta = seq(from=-5,to=5,length=100) > plot(theta,sapply(theta,likelihood)) > optimize(likelihood,interval = c(-5,5),maximum=TRUE) $maximum [1] -0.5924009 $objective [1] 0.001796537

  31. Konjugierte Prior R-Code zur Berechnung des Posteriors nach wiederholtem Münzwurf > theta=0.3 > alpha = 1; beta = 1 > x = seq(0,1,length=200) > plot(x,dbeta(x,alpha,beta),type="l",lwd=2,ylab="Dichte", + xlab="",ylim=c(0,5.5)) > abline(v=theta) > n=10 > for (j in 2:5)+ { + nk = rbinom(1,size=n,prob=theta) + nz = n-nk + alpha = alpha + nk + beta = beta + nz + points(x,dbeta(x,alpha,beta),type="l",lwd=2,col=j) + } > legend(0.6,5,legend=paste("n=",(0:4)*n),col=1:5,lty=1)

More Related