Markov Chain Monte Carlo, contingency tables and Gröbner bases Diaconis, P., Sturmfels, B. (998. Algebraic algorithms for sampling from conditional distributions. Gunnar Englund Annals of Statistics Vol. 26. 2 MCMC: Ett sätt att simulera från komplicerade fördelningar. Fördelningarna behöver inte vara normerade Stora tillämpningar inom Bayesiansk statistik P (Θ = θ X = x = P (X = x Θ = θp (Θ = θ P (X = x P (X = x Θ = θp (Θ = θ = P (X = x; Θ = θ dvs a-posteriori-fördelningen Lite om MCMC: Vi vill simulera fördelning π(x, x E För enkelhets skull: E ändlig (men gigantisk P (X = x = π(x z E π(z Normeringen besvärlig men behövs inte! likelihoodfunktionen apriori-fördelningen Hett område!! 3 4
Metropolis-Hastings algoritm: Ger Markov-kedja med p X (x, x E (eller likvärdigt π(x, x E som stationär fördelning. Kedjan är reversibel dvs π(xp (x, y = π(yp (y, x, Trivialt för x = y. För x y för alla x, y Om X n = x: Förslag y till X n+ enligt förslagsfördelning q(x, y. Stor frihet i val av q(x, y. 2 Acceptera förslaget y givet från x med sannolikhet ( π(yq(y, x α(x, y = min, π(xq(x, y annars X n+ = x Om x y är övergångssannolikheten P (x, y = q(x, yα(x, y P (x, x = y E; y x P (x, y 5 VL = π(xq(x, yα(x, y = = min(π(xq(x, y, π(yq(y, x = π(yp (y, x. Reversibiliteten ger (summation över x π(xp (x, y = π(yp (y, x = x E x E = π(y P (y, x = π(y x E dvs π är stationär fördelning. (Jämför p ( = p (0 P OBS! π finns både i täljare nämnare i α(x, y! Behöver inte vara normerad! 6 Om kedjan är ergodisk: B B g(x i E π (g(x = i= x E g(xπ(x = då B x E π(x för godtyckliga g. Allt kan beräknas! Ergodisk om irreducibel, aperiodisk (behövs inte om man inte tar delsekvenser! Ofta lätt att visa i konkret situation! Lägger krav på förslagsfördelningen q(x, y. Gröbner-baser kan användas för att verifiera irreducibilitet. Dock: q(x, y bör väljas listigt så B ej behöver vara så stor. 7 Exempel: Låt χ = I J-gitter med 0:or :or. E = {x χ två grannar inte båda }. π fördelning på χ fast 0 utanför E, t ex π(x=konstant för x E 0 för övrigt (likformig fördelning på E. Förslagsfördelning (dvs q(x, y: Välj nod (i, j på måfå med sannolikhet /IJ. Välj värde i noden som 0 eller med sannolikhet /2 vardera. Eventuellt y / E, men då är π(y = 0 alltså α(x, y = 0. Om y E accepteras förslaget ty ( π(yq(y, x α(x, y = min, = π(xq(x, y eftersom q(x, y = q(y, x π(x = π(y. 8
Kedjan uppenbarligen irreducibel aperiodisk, dvs ergodisk! T ex g(x =antal :or i x får vi medelantal :or! Med I = J = 0 erhålls (B = 0000 E(antal :or 23.40, E(max antal :or i raderna 3.88. Dessas korrelation 0.4240. Nästan lika lätt med allmänt π men då blir acceptanssannolikheten ( α(x, y = min, π(y π(x 9 Exempel: Kontingenstabell. I J-tabell av antal med radsummor r = (r, r 2,, r I kolonnsummor c = (c, c 2,, c J. A(r, c = {I J-tabeller med r c} Vi vill studera X = (x ij, (i, j I J med given fördelning på A(r, c. Speciellt intressant fördelning är hypergeometriska fördelningen på A(r, c dvs med N = i,j x ij J c j! j= x j!x 2j! x Ij! P (X = x = N! r!r 2! r I! 0 Jämför 2 2-tabell med celler x, x 2, x 2, x 22 där ( ( c c2 x P (X = x = x ( 2 N r Med MCMC: Om X n = x A(r, c låter vi förslagsfördelningen vara Om H 0 : rader kolonner oberoende är sann har X hypergeometrisk fördelning. Teststorheten Q = i,j (x ij Np ij 2 Np ij är approximativt χ 2 ((I (J -fördelad där p ij = r i/n c j /N. q(x, y: Välj två rader två kolonner på måfå. Välj mönstren ( + + ( + + med sannolikhet /2 vardera. Om y / A(r, c (negativa entries låter vi X n+ = x. Bra approximation? 2
Irreducibel? Kan visas med Gröbner-baser! Vi vill generera Hypergeometriska fördelningen dvs π(x i,j(x ij! dvs acceptanssannolikheten blir eftersom q(x, y = q(y, x ( i,j(x ij! α(x, y = min, i,j(y ij! α(x, y = 0 om y / A(r, c. Aperiodisk? Ja, för om någon entry=0 ligger vi kvar där med positiv sannolikhet. Alltså ergodisk vi kan simulera teststorheten Q:s fördelning godtyckligt bra! Funkar även med andra fördelningar än hypergeometriska. 3 4 Mer generella tabeller (med I J som illustration H=ändlig mängd För I J är H = {(i, j : i I, j J} dvs H = I J. Ett x H svarar mot en cell. Generera ett data X H enligt den exponentiella familjen P (X = x = Z(θe θ T (x, x H där θ R d är d-dimensionell parameter T : H N d 0 d, (ofta T : H {0, } d 0 d T är en d-dimensionell vektor av tillräckliga statistikor. 5 För oberoende (X, X 2,, X N = X enligt ovanstående fördelning fås P (X = x = (Z(θ N N exp(θ T (x i i= som beror av data bara genom värdet på N T (x i (alltså d tillräckliga statistikor. Med H = I J T ((i, j N I+J där T ((i, j = (0,, 0,, 0,, 0 0, 0,, 0,, 0 med :orna i position i respektive I + j. θ = (θ, θ 2,, θ I, θ, θ 2,, θ J P (X = (i, j e θ ie θ j dvs oberoende mellan rad kolonn. De d = I + J tillräckliga statistikorna N T (X i = t svarar för H = I J mot t = (r, c dvs marginalerna. 6
Med Y t = {(x, x 2,, x N H N N : T (x i = t} har vi likformig fördelning på Y t med exponentiella modellen. Omformas lämpligen genom N t = T (x i = g(xt (x i= där g(x = (antal x i = x Vi låter F t = {g : H N där där g(x =antal i cell x. g(xt (x = t} Om g F t är anger g(x, x H en möjlig tabell med rätt tillräckliga statistikor t. 7 Vi är intresserade av hypergeometrisk fördelning på F t dvs N! π(g = H t (g = (g(x!. Y t som är fördelningen på F t om vi har likformig fördelning på Y t. Detta har vi t ex med modellen med exponentiell familj. Observera att π(g (g(x! Vi vill simulera π(g, g F t med Metropolis- Hastings. Lämpligt välja förslagsfördelning q(g, g så att q(g, g = q(g, g med så enkla förflyttningar att π(g /π(g är enkel att beräkna så att acceptanssannolikheten ( α(g, g = min, π(g q(g (, g π(gq(g, g = min, π(g π(g blir enkel att beräkna. 8 Vill konstruera enkla kandidater till förflyttningar f där vi från g H går till g ± f som ger en irreducibel, aperiodisk Markovkedja. Obs! Dessa (säg L enkla förflyttningar f, f 2,, f L skall bevara de d tillräckliga statistikorna t dvs f i (xt (x = 0, i =, 2,,, L eftersom då (g(x + f i (xt (x = t, i =, 2,,, L alltså g + f i F t (om g(x + f i (x 0 för alla x H. Vi väljer f i, i =, 2,, L med sannolikhet /L vardera sen (oberoende ε som + eller med sannolikhet /2 vardera går sen från g till g = g + εf i med sannolikheten α(g, g. Man har då q(g, g = q(g, g! Eventuellt gäller att g / F t (negativ entry men då ligger vi kvar i g. Även förflyttning från g till g f i bevarar t. 9 20
Markov-bas: Förflyttningarna f, f 2,, f L kallas en Markov-bas om de uppfyller f i (xt (x = 0 2 Om g g F t skall vi kunna gå från g till g med en sekvens enkla förflyttningar ε i f ij där vi ligger i F t efter varje steg (irreducibel kedja. Alltså: Det finns ett A så att med lämpliga val av i, i 2,, i A ε j, j =, 2,, A (som är + eller gäller att g A = g + f ij ε j j= Förslagsfördelningen q(g, g innebär alltså: Välj ett f ur f, f 2,, f L med lika sannolikheter sen oberoende ε som + eller med sannolikhet /2 vardera låt g = g + εf Ett förslag g + εf accepteras med sannolikhet α(g, g + εf i = min(, H t(g + εf H t (g där H t är målfördelningen på F t. Om g + εf F t står vi kvar i g. Kan modifieras så man gör längre steg. a g + f ij ε j 0, a A j= Hur hitta dessa enkla förflyttningar? de ges av en Gröbner-bas. Jo, 2 22 Exempel: 3 3 3-tabell dvs H = {(i, j, k : i 3, j 3, k 3} Vi låter p ijk = P (hamna i cell (i, j, k. Som modell har vi inget tre-faktor-samspel dvs ln p ijk = µ+α i +β j +γ k +(αβ ij +(αγ ik +(βγ jk dvs vi har inga (αβγ ijk -termer. Innebär en modell av typen exponentiell familj! Med N ijk =antal i cell (i, j, k gäller under modellen att N ij, N i k N jk är tillräckliga statistikorna där N ij = 3 N ijk, k= 3 N i k = N ijk, j= 3 N jk = N ijk. i= Hur ser enkla förflyttningar ut? 23 24
27 st av typen 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 + 0 + 0 0 0 0 + 0 + 54 st av typen 0 0 0 0 + 0 + 0 0 0 + 0 0 + 0 0 0 + 0 + 0 28 st av typen 0 0 0 + 0 0 + 0 + + 0 + 0 0 + 0 + 0 0 0 samt av typen 2 + + + 0 + 0 + 0 0 0 0 0 + + 0 0 + 0 + Exempel: Logistisk regression. Svar ja ( eller nej (0 på fråga. Vi har kovariater z j Z d till individ j dvs z j = (z j, z 2j,, z dj. Logistisk regression : eβ z j P (Y j = z j = + e β z j P (Y j = 0 z j = + e β z j β R d är en d-dimensionell parameter. Total 0 enkla förflyttningar! 25 26 Likelihood för Y, Y 2,, Y N blir T ex enkel linjär regression med β = (α, β som parameter kovariaterna z j = (, z j där t ex z j =antal skolår för person j, j =, 2,, N. Vi har då P (Y j = z j = eα+βz j + e α+βz j P (Y j = 0 z j = + e α+βz j. N e Y jβ z z j j= + e β z z j Låt n(z =(antal med z j = z n (z=(antal med z j = z Y j =. Om de möjliga z-värdena är a, a 2,, a M blir likelihooden dvs e β M i= n (a i a i Mi= ( + e a i β n(a i n(a, n(a 2,, n(a M M i= n (a i a i är tillräckliga statistikor som vi vill betinga m a p hålla konstanta vid alla förflyttningar. 27 28
Svarar mot T (0, a i = (0; 0, 0,,, 0,, 0 T (, a i = (a i ; 0, 0,,, 0,, 0 där :an är i i:te positionen. Vi har H = {(0, a i, (, a i, i =, 2,, M} med g(x =(antal observationer = x N t = T (x i = g(xt (x = i= M = ( n (a i a i, n(a, n(a 2,, n(a M i= 29 Enkla förflyttningar? Antalen med kovariat= a i skall bevaras dessutom M i= n (a i a i. För enkel linjär regression med a i = (, i, i =, 2, 2 är H = {(0,, i, (,, i, i =, 2, 2} skall alltså n(i, i =, 2,, 2 2 n (i i= 2 n (ii i= bevaras. Med M = 2 finns 6968 st enkla förflyttningar för konkreta numeriska exemplet. 30 Gröbner-baser: För x H definierar vi en formell variabel u x låter g : H N representeras av monomet u g(x x som betecknas H g. Vi byter också u x mot x dvs H g = x g(x För 2 2-tabellen 3 2 7 4 med H = {(,, (, 2, (2,, (2, 2} får vi monomet Vi studerar ändliga polynom i dessa monom med koefficienter i en kropp k betecknade k[h]. Ett T : H N d där T (x = (T (x, T (x 2,, T (x d representeras av där φ T : k[h] k[t, t 2,, t d ] x t T (x t T (x 2 2 t T (x d d φ T utvidgas genom φ T (xy = φ T (xφ T (y φ T (x + y = φ T (x + φ T (y u 3 (, u2 (,2 u7 (2, u4 (2,2 3 32
Det ger för g : H N φ T (H g = φ T ( x g(x = (φ T (x g(x = = (t T (x t T (x 2 2 t T (x d d g(x = = t T (x g(x t T (x 2g(x 2 t T (x dg(x d = = t x T (x g(x t x T (x 2g(x 2 t x T (x dg(x d. Om variabellistan Y = (t, t 2,, t d kan detta skrivas φ T (H g = Y g(xt (x Intressant med idealet J T = {p k[h] : φ T (p = 0} = ker φ T som är ett ideal genererat av binom (egentligen monom-skillnader. En förflyttning f i : H Z delas upp i positiva negativa ändringar dvs f i = f i + fi där f i ± : H N. Svarar mot binomet H f + i H f i. Man har f(xt (x = 0 omm H f + i H f i ligger i J T, dvs φ T (H f + i H f i = 0. 33 34 Sats: f, f 2,, f L är en Markov-bas omm H f + i H f i för i =, 2,, L genererar idealet J T = {p k[h] : φ T (p = 0}. Hilberts bas-sats: Varje ideal i en polynomring genereras av en ändlig mängd polynom. Gröbner-baser är ett speciellt val av baser som genererar idealet. Beror av ordningsrelation som valts på monom. Om idealet genereras av binom består Gröbnerbasen av binom. För I J ger detta att de enkla förflyttningarna av typen ( ( + + + + ger en irreducibel kedja på A(r, c Detta ger en algoritm (finns i Maple! som ger Gröbner-baserna som svarar mot Markovbasen, dvs de enkla förflyttningarna som gör kedjan ergodisk!! Dock: Markov-basen kan bli onödigt stor. 35 36