Elementy diagnostyki modeli z wykorzystaniem MCMC
Transkrypt
Elementy diagnostyki modeli z wykorzystaniem MCMC
Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Ekonometria Bayesowska Wykªad 10: Symulacje a posteriori w R Andrzej Torój 1 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Plan wykªadu 1 Przykªad: model ze skªadnikiem losowym o grubych ogonach 2 Wykorzystanie pakietu rjags 3 Diagnostyka zbie»no±ci MCMC 4 Numeryczne porównanie modeli 2 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Plan prezentacji 1 Przykªad: model ze skªadnikiem losowym o grubych ogonach 2 Wykorzystanie pakietu rjags 3 Diagnostyka zbie»no±ci MCMC 4 Numeryczne porównanie modeli 3 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Gdy skªadnik losowy nie ma rozkªadu normalnego... Rozwa»amy model ze skªadnikiem losowym o rozkªadzie t z 4 stopniami swobody (grube ogony). εN i ∼N εti 4 ∼t(4) JB = 0.7766, p-value = 0.6782 JB = 28773.93, p-value < 2.2e-16 4 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Generujemy sztuczne dane εti 4 ∼ t(4) x1,i ∼ N(µ = 10; σ = 3) Poiss (λ = 3) x2,i ∼ yi = −3 + 2x1,i + 0, 5x2,i + εti 4 Klasyczna analiza z wykorzystaniem OLS: Cho¢ oszacowania parametrów wydaj¡ si¦ nieodlegªe od (wyj¡tkowo znanych nam) prawdziwych warto±ci, to konstrukcja przedziaªów ufno±ci (i wnioskowanie statystyczne) bazuje na niespeªnionym zaªo»eniu o normalnym rozkªadzie skªadnika losowego. 5 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Plan prezentacji 1 Przykªad: model ze skªadnikiem losowym o grubych ogonach 2 Wykorzystanie pakietu rjags 3 Diagnostyka zbie»no±ci MCMC 4 Numeryczne porównanie modeli 6 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Denicja modelu 7 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Symulacja a posteriori 8 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Dost¦pne pakiety i metody Skorzystali±my z funkcji jags.parallel jako jednego z wielu dost¦pnych symulatorów a posteriori w R. Na JAGS bazuj¡ jednak ró»ne funkcje (polecam samodzielne testy): jags.model oraz jags.samples z pakietu rjags jags / jags2 / jags.parallel z pakietu R2jags jags.t i jags.part z pakietu dclone Poza pakietami bazuj¡cymi na JAGS, warte uwagi mog¡ okaza¢ si¦ pakiety bazuj¡ce na innych rozwi¡zaniach: rstan LaplaceDemon nimble ... 9 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Plan prezentacji 1 Przykªad: model ze skªadnikiem losowym o grubych ogonach 2 Wykorzystanie pakietu rjags 3 Diagnostyka zbie»no±ci MCMC 4 Numeryczne porównanie modeli 10 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Numeryczny bª¡d standardowy O ile przeci¦tnie mylimy si¦, szacuj¡c dan¡ funkcj¦ g (θ) za pomoc¡ ±redniej z uzyskanych ªa«cuchów? Nie nale»y go myli¢ z odchyleniem standardowym a posteriori! Bazuje na oszacowaniu g¦sto±ci spektralnej ªa«cucha centralnym twierdzeniu granicznym (szczegóªy: σ̂g = q 0 S (0) i Koop, s. 65). S( ) S1 S0 <- spectrum0(combined.chains) S_1 <- dim(jagsfit$BUGSoutput$sims.array)[1] numerical.SE <- (S0$spec/S_1)^0.5 11 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Numeryczny bª¡d standardowy summary(combined.chains, quantiles = c(0.025, 0.25, 0.5, 0.75, 0.975)) SD: odchylenie standardowe a posteriori Time-series SE: numeryczny bª¡d standardowy Naive SE: numeryczny bª¡d standardowy liczony wprost z CTG (bez uwzgl¦dnienia autokorelacji) 12 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Jak dªugi powinien by¢ ªa«cuch? To zale»y: jakiego rz¦du kwantyl chcemy szacowa¢ (q ); jak¡ precyzj¦ szacunku rozwa»amy (q − r ; q + r ); jaki poziom ufno±ci chcemy przypisa¢ temu przedziaªowi (s ). Raftery i Lewis (1992, 1995) opracowali wzór na S1 bazuj¡cy na trzech powy»szych argumentach, przywoªywany poleceniem raftery.diag. 13 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Czy ªa«cuchy osi¡gn¦ªy zbie»no±¢? Analiza graczna plot(combined.chains) 14 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Kryterium Gelmana-Rubina (1) Bazuje na intuicyjnej koncepcji, »e wariancja wewn¡trz ªa«cucha powinna by¢ równa wariancji mi¦dzy ªa«cuchami. 1 Dla ka»dego ªa«cucha (i parametru) standardowo wyznaczamy wariancj¦ wewn¡rz ªa«cucha. 2 U±redniamy j¡ mi¦dzy ªa«cuchami do poziomu 3 Wariancja mi¦dzy ªa«cuchami to 4 Mo»na pokaza¢, »e caªkowita wariancja W. B. T = S1 − S1 1W + 1 B S1 (szczegóªy: Koop, s. 66). 5 Je»eli ªa«cuchy nie zbiegªy, wówczas W niedoszacowuje wariancji wszystkich ªa«cuchów. 6 Powinno to prowadzi¢ to warto±ci factor= q T W potential scale reduction > 1. W praktyce jako warto±¢ graniczn¡ przyjmujemy 1.2 (powy»ej brak zbie»no±ci). 15 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Kryterium Gelmana-Rubina (2) gelman.diag(combined.chains) gelman.plot(combined.chains) 16 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Statystyka Geweke (1) geweke.diag(combined.chains, frac1=0.1, frac2=0.5) 1 2 3 Dzielimy ªa«cuch (po odrzuceniu ) na 3 fragmenty, zadane frakcjami jego dªugo±ci. Zwykle przyjmuje si¦ 10%, 50% i 40%. Szacujemy warto±¢ statystyki ĝ (θ) oraz numeryczny bª¡d standardowy σ̂g dla pierwszej i trzeciej cz¦±ci ªa«cucha. 3 (θ) ∼ N (0; 1), o ile prawdziwa jest hipoteza, »e ªa«cuch Statystyka √ĝ1 (θ)−ĝ 1 +√ 1 11 13 zbiegª (wi¦cej: ). burn-in σ̂g S ; σ̂g S ; Koop, s. 68 17 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Statystyka Geweke (2) Mo»emy równie» iteracyjnie poszukiwa¢ momentu, od którego ªa«cuch uwa»amy za zbie»ny. geweke.plot(combined.chains, frac1 = 0.1, frac2 = 0.5, nbins=40, pvalue=0.05) 18 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Kryterium Heidelberga-Welcha heidel.diag(combined.chains) 1 Bazuje na denicji stacjonarno±ci: losowania z tego samego rozkªadu (po osi¡gni¦ciu zbie»no±ci) powinny generowa¢ szeregi stacjonarne. 2 0 Wykonywany jest test stacjonarno±ci Cramera-von-Misesa (H : stacjonarno±¢) dla: 1 2 caªego ªa«cucha w przypadku odrzucenia H0 : dla ªa«cucha bez pierwszych 10% H0 : dla ªa«cucha bez pierwszych 20% losowa« 3 w przypadku odrzucenia losowa« 4 ... 5 w przypadku sekwencji odrzuce«: dla ªa«cucha bez pierwszych 50% losowa« 3 Szacowana jest równie» ±rednia ze stacjonarnej cz¦±ci ªa«cucha. 19 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Autokorelacja i krzy»owa korelacja w ªa«cuchu Jest zjawiskiem niepo»¡danym, cho¢ w ªa«cuchach generowanych np. przez RW-MH nieuniknionym. Metod¡ jej eliminacji jest rozrzedzanie ªa«cucha (thinning). Wysokie korelacje mi¦dzy parametrami oznaczaj¡ z kolei powoln¡ zbie»no±¢. 20 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Plan prezentacji 1 Przykªad: model ze skªadnikiem losowym o grubych ogonach 2 Wykorzystanie pakietu rjags 3 Diagnostyka zbie»no±ci MCMC 4 Numeryczne porównanie modeli 21 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli Problem wyznaczenia brzegowej wiarygodno±ci Wyznaczenie brzegowej wiarygodno±ci niezb¦dne do obliczenia czynników Bayesa. Wielu badaczy korzysta z metod numerycznych opartych na ±redniej harmonicznej. Przykªad takiej metody: Gelfand-Dey (1994; zob. Koop, s. 104-106). Metoda oprogramowana w pakiecie BACC (opis tutaj), który jest ju» niedost¦pny... Inni badacze krytykuj¡ wszelkie podej±cia bazuj¡ce na ±redniej harmonicznej. Mo»na znale¹¢ kody bazuj¡ce na ró»nych publikacjach, brakuje jednak ugruntowanego konsensusu. 22 / 23 Przykªad: model ze skªadnikiem losowym o grubych ogonach Wykorzystanie pakietu rjags Diagnostyka zbie»no±ci MCMC Numeryczne porównanie modeli DIC Deviance Information Criterion jedno z podej±¢ do porównania modeli oszacowanych metodami bayesowskimi. D (θ) = −2p (y |θ), a posteriori dewiancji ´ D̄ = D (θ) p (θ|y ) dθ Dewiancja: Warto±¢ oczekiwana modelu): (miara dopasowania Warto±¢ oczekiwana a posteriori parametrów: DIC = 2D̄ − D θ̄ Uzasadnienie: DIC = D̄ + pD , gdzie θ̄ pD = D̄ − D θ̄ to miara efektywnej liczby parametrów. 23 / 23