6.1 Monte-Carlo Integration Problem: Berechnung des Integrals Z J = φ(x)f (x)dx wobei f (x) eine Dichtefunktion sei. Monte-Carlo-Integration schätzt J durch n X 1 ˆ J= φ(X i) n i=1 wobei X 1, . . . , X n ∼ f (x) und unabhängig. Computerintensive Methoden 2005 – LaMo: 12. Januar 2006@13:34 1 Konsistenz, Varianz und Standardfehler ˆ = E(J) n 1X Z E(φ(X i)) = φ(x)f (x)dx n i=1 Z 1 ˆ V ar(J) = (φ(x) − J)2f (x)dx n v u n uX 1 ˆ 2/(n − 1) ˆ = √ t (φ(xi) − J) se(J) n i=1 − 12 ˆ Daher: se(J) ist O(n ), deutlich schlechter als numerische Integration, die O(n−4) erreichen kann! Computerintensive Methoden 2005 2 Beispiel: Schätzung der Kreisfläche Betrachte die Fläche des Einheitskreises im positiven Quadranten. √ Hier ist also φ(x) = 1 − x2 und f (x) = 1 auf [0, 1]. Man zieht also n gleichverteilte Zufallsvariablen x1, . . . , xn und berechnet n q X 1 ˆ 1 − x2i J= n i=1 Der theoretische Wert von J ist π/4 = 0.7853982. Bei n = 10000 ergibt sich z.B. Jˆ = 0.7891 bei einem geschätzten Standardfehler von 0.0022 → Programm mckreis.R Computerintensive Methoden 2005 3 “hit-or-miss” Monte Carlo Integration Alternativer Ansatz: x = (x1, x2), f (x) = 1 auf [0, 1]2 und φ(x) = 1A(x) wobei 1A(x) = 1 0 für x21 + x22 ≤ 1 sonst → Erzeugung von n gleichverteilten Variablen im Einheitsquadrat, Berechnung des Anteil die unter der Kreislinie liegen. Schätzer hat eine größere Varianz als beim ersten Algorithmus, hier approximativ viermal so groß, obwonl 2n statt n gleichverteilte Variablen nötig sind! Computerintensive Methoden 2005 4 Monte-Carlo Integration und Bayes-Inferenz Betrachte z.B. Posteriori-Erwartungswert Z E(θ|y) = θf (θ|y)dθ Wenn man aus der Posteriori-Verteilung f (θ|y) Zufallszahlen θ1, . . . , θn ziehen kann, kann man den PosterioriErwartungswert einfach durch das arithmetische Mittel schätzen. Allgemeiner kann man durch Mittelung von g(θ i) den Posteriori-Erwartungswert von g(θ) schätzen. Computerintensive Methoden 2005 5 Beispiel von Rao (1973) Der Vektor y = (y1, y2, y3, y4) = (125, 18, 20, 34) sei multinomialverteilt mit Wahrscheinlichkeiten 1 θ 1−θ 1−θ θ + , , , 2 4 4 4 4 Wir wollen nun zunächst den Posteriori-Erwartungswert von θ bei einer priori-Gleichverteilung durch zwei Arten von MonteCarlo Integration schätzen: 1. θ1, . . . , θn ∼ f (θ) 2. θ1, . . . , θn ∼ f (θ|y) Computerintensive Methoden 2005 6 Algorithmus 1 Der Posteriori-Erwartungswert läßt sich schreiben als R1 θf (y|θ)f (θ)dθ 0 E(θ|y) = R 1 f (y|θ)f (θ)dθ 0 Beide Integrale lassen sich leicht durch Monte-Carlo Integration mit θ1, . . . , θn ∼ f (θ) schätzen. → Programm mcraosim.R. Zur Erinnerung: Die Log-Likelihood lautet log f (y|θ) = l(θ; y) = y1 log(2+θ)+(y2+y3) log(1−θ)+y4 log θ; die zugehörige Normalisierungskonstante kann ignoriert werden. Computerintensive Methoden 2005 7 Algorithmus 2 Zum Erzeugen von Zufallszahlen aus der Posteriori-Verteilung f (θ|y) kann z.B. rejection sampling verwendet werden, als Vorschlagsdichte bietet sich eine Gleichverteilung an. Zunächst muss man also numerisch den Wert der PosterioriVerteilung am Maximum bestimmen. Beachte: die Normalisierungskonstante von f (θ|y) kann hier ignoriert werden! → Verwendung des “modifizierten Rejection sampling” → Programm mcraosim.R. Computerintensive Methoden 2005 8 Modifiziertes Rejection sampling • Ziel: Zufallszahlen X aus Verteilung mit Dichte fX (x) = C f˜X (x); C sei unbekannt. • Idee: Ziehe stattdessen Y aus Verteilung mit Dichte fY (y) • Akzeptiere Y als Zufallszahl aus fX (x) mit Wahrscheinlichkeit 1 f˜X (Y ) α = α(Y ) = · M̃ fY (Y ) wobei M̃ so gewählt sein muss, dass α(y) ≤ 1 für alle y: f˜X (x) M̃ = sup f (x) x Y Computerintensive Methoden 2005 9 Vorteil von Algorithmus 2 Jedes andere Funktional der posteriori-Verteilung kann einfach geschätzt werden! • Posteriori-Erwartungswert: arithmetisches Mittel • Posteriori-Median: empirischer Median • Symmetrische Intervalle durch entsprechende empirische Quantile (z.B. 2.5 und 97.5% Quantil) • HPD-Intervalle: Algorithmus von Chen and Shao (1999) Computerintensive Methoden 2005 10 Algorithmus von Chen and Shao Basiert auf Optimalitätseigenschaft von HPD-Intervallen: HPD-Intervalle haben unter allen Kredibilitätsintervallen zu einem festen Niveau minimale Breite. Algorithmus: 1. Berechne alle Vertrauensintervalle, die den entsprechenden Anteil (z.B. 95%) der Stichprobe beinhalten 2. Wähle dasjenige, das die kleinste Intervallbreite hat Voraussetzung: Posteriori-Verteilung ist unimodal. Computerintensive Methoden 2005 11 6.2 Importance Sampling Wieder betrachten wir das Integral Z Z f (x) J = φ(x)f (x)dx = φ(x) g(x)dx g(x) schätzen aber nun J durch n X 1 JˆIS∗ = w∗(X i)φ(X i) n i=1 wobei X 1, . . . , X n ∼ g(x) unabhängig und w∗(X i) = f (X i)/g(X i) nicht-standardisierte Gewichte sind. Computerintensive Methoden 2005 12 Erwartungswert und Varianz Auch dieser Schätzer von J ist unverzerrt, er hat Varianz und Standardfehler 2 Z φ(x)f (x) 1 ∗ ˆ V ar(JIS) = − J g(x)dx n g(x) v u n uX 1 ∗ t (φ(xi) − Jˆ∗ )2w∗(xi)2 se(JˆIS) = IS n i=1 → Falls g so gewählt wird, dass φf /g approximativ konstant ˆ ist, hat JˆIS∗ typischerweise deutlich kleinere Varianz als J. Computerintensive Methoden 2005 13 Anwendung in Bayes-Inferenz Szenario: Zufallszahlen aus einer Posteriori-Verteilung bzgl. Priori-Verteilung f (θ) liegen vor. Verwendung der Gewichte f˜(θ)/f (θ) entspricht dann einer gewichteten Stichprobe aus der neuen Priori-Verteilung f˜(θ). Im Beispiel: z.B. Be(.5, .5) priori-Verteilung für f˜(θ). −1/2 → wi(θi) = π1 θi (1 − θi)−1/2 → Berechnung von posteriori-Momenten bei priori f˜(θ) basierend auf θi ∼ f (θ) möglich. Computerintensive Methoden 2005 14 Eine Fallstudie aus Ripley (1987) Angenommen wir wollen J = P (X > 2) für X mit f (x) = 1/(π(1 + x2)) durch Monte-Carlo Integration berechnen. Analytisch wissen wir, dass F (x) = J ≈ 0.1476. 1 2 + arctan(x) , π und daher 1. Methode: Erzeuge Cauchy-verteilte ZVn X1, . . . , Xn, und schätze J durch Anteil der Variablen die größer als zwei sind: f (x) = 1/(π(1 + x2)) und φ(x) = 1(x > 2). 2. Methode: Wegen J = 0.5 · P (|X| > 2) kann man auch |X1|, . . . , |Xn| und φ(x) = 0.5 · 1(|x| > 2) verwenden. Computerintensive Methoden 2005 15 Eine Fallstudie cont. 3. Methode: Verwende 1 − 2J = und Xi ∼ U(0, 2) R2 −2 f (x)dx = 2 R2 0 f (x)dx 4. Methode: Verwende y = 1/x und Z ∞ Z 0.5 1 y −2 J = dx = dy 2 −2 π(1 + x ) π(1 + y ) 2 0 Z 0.5 1 dx = 2 π(1 + y ) 0 und daher Monte-Carlo Integration mit Xi ∼ U(0, 1/2) und φ(x) = f (x)/2. Computerintensive Methoden 2005 16 Varianzreduktion Vergleich der Varianzen Integrations-Schätzer Straight Hit-or-Miss Importance Antithetic variates Computerintensive Methoden 2005 P (X > 2) 1 – 1350 2.4 verschiedener P (|X| > 2) 2.4 – – 18 1 2 R2 − 0 f 4.41 1.6 – 24 Monte-Carlo R 1/2 f 1350 – – 12 0 17 Importance sampling für J = P (X > 2) Verwende z.B. g(x) = 2/x2, eine recht gute Approximation zu f (x) für x > 2. Man kann leicht durch Inversion aus g(x) (für x > 2) Zufallszahlen erzeugen: 1/X ∼ U(0, 1/2) Es ergibt sich φ(x) = 1 und f (x)/g(x) = 1/(2π(1 + x−2)) → Verfahren ist hier identisch zu Monte-Carlo-Integration von R 1/2 J = 0 f! Computerintensive Methoden 2005 18 Antithetic variates Idee: Finde zwei gleich konstruierte, aber negativ korrelierte Schätzer Jˆ und Jˆ∗ von J (mit gleicher Varianz) und kombiniere diese. Es ergibt sich: 1 1 ˆ ˆ∗ ˆ + corr(J, ˆ Jˆ∗)) V ar( (J + J )) = V ar(J)(1 2 2 Klassische Methode bei Inversionsverfahren: Verwende F −1(Ui) ˆ aber auch F −1(1 − Ui) für Jˆ∗! für J, Oder bei um Null symmetrischen Variablen: Verwende Xi und −Xi Computerintensive Methoden 2005 19 Antithetic variates im Beispiel Berechnung von J = P (X > 2) unter Verwendung von X und −X ist hier äquivalent zu MC-Integration von P (|X| > 2) Alternativ kann man aus |X| durch Inversion ziehen: |X| = tan(πU/2). Verwendung von “antithetic variates” ermöglicht weitere Varianzreduktion. R2 R 1/2 1 Analog für die Versionen J = 2 − 0 f und J = 0 f Computerintensive Methoden 2005 20