Campionamento Gibbs per modello Ising


11

Domanda a casa:

Considera il modello Ising 1-d.

Sia . è -1 o +1x ix=(x1,...xd)xi

π(x)ei=139xixi+1

Progettare un algoritmo di campionamento gibbs per generare campioni approssimativamente dalla distribuzione target .π(x)

Il mio tentativo:

Scegli casualmente i valori (-1 o 1) per riempire il vettore x=(x1,...x40) . Quindi forse x=(1,1,1,1,1,1,1,1,...,1) . Quindi questo è x0 .

Quindi ora dobbiamo andare avanti e fare la prima iterazione. Dobbiamo disegnare le 40 diverse x per separatamente. Così...x1

Disegna da π ( x 1 | x 0 2 , . . . , x 0 40 )x11π(x1|x20,...,x400)

Disegna da π(x2|x 1 1 ,x 0 3 ,...,x 0 40 )x21π(x2|x11,x30,...,x400)

Disegna da π ( x 3x31π(x3|x11,x21,x40,...,x400)

Eccetera..

Quindi la parte che mi ha fatto inciampare è come trarre effettivamente dalla distribuzione condizionale. Come entra in gioco ? Forse un esempio di un pareggio chiarirebbe le cose.π(x)ei=139xixi+1

Risposte:


11

Guarda prima questo caso. Abbiamo lasciato cadere termini che non dipendono da . π ( x 1x 2 , , x d ) = π ( x 1 , x 2 , , x d )x1

π(x1x2,,xd)=π(x1,x2,,xd)π(x2,,xd)ex1x2
P(X1=1X2=x2,,Xn=xn)=ex2C
P(X1=1X2=x2,,Xn=xn)=ex2C
ex2C+ex2C=1C=2coshx2
x_1 <- sample(c(-1, 1), 1, prob = c(exp(-x_2), exp(x_2)) / (2*cosh(x_2)))

Generalizzalo su (nota le differenze; ​​vedi il commento di Ilmari sotto).x2,,x40

Puoi usare i risultati analitici di Ising per verificare la tua simulazione?


Quindi, finisce solo per dipendere dal valore immediatamente precedente al vettore, ovvero l'unico termine che dipende da è , l'unico termine che dipende da è , ecc. di ? Come lo disegniamo poiché la distribuzione condizionale sembra valere solo per fino a 39? x1x2x23x24x40i=1
Collin,

1
@ user2079802: No, per attraverso ottieni due termini : . Ma è ancora abbastanza facile valutarlo per . x 39 π ( x ix 1 , , x i - 1 ; x i + 1 , , x d ) exp ( x i - 1 x i + x i x i + 1 ) x i = ± 1x2x39π(xix1,,xi1;xi+1,,xd) exp(xi1xi+xixi+1)xi=±1
Ilmari Karonen,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.