Markov chain e MCMC
Objetivo da aula
• Fornecer um introdução INFORMAL a
processos estocásticos e cadeias de Markov • Fornecer os elementos para entender porque
os algoritmos de MCMC funcionam
• Apenas o mínimo necessário de cadeias de Markov
Processos estocásticos
• Set of random variables X0 X1 X2 ... • Xt is the random element at time t
Muitos tipos diferentes de processos
• O conjunto de tempos de Xt e’ o espaço-índice • Xt pode se desenvolver:
– de forma contínua no tempo – Tempos discretos: t = 0, 1, 2, ...
• Só nos interessa o segundo caso. • Os valores que Xt pode assumir:
– Forma o espaço de estados do processo – Pode ser discreto ou contínuo
Os dois tipos de espaços de estado
• Discreto Contínuo
Espaço de estados: {0, 1, 2, 3}
Espaço de estados S
• A cadeia de Markov tem tempos equi-espaçados: t=1, 2, 3, ....
• Xt e’ o valor do processo no tempo t • Xt e’ variável aleatória
• Os valores que Xt pode assumir são chamados de estados da cadeia
• Espaço de estados: conjunto de todos os estados possíveis da cadeia.
Processo estocástico e instancia
• Um processo estocástico e’ um mecanismo aleatório de geração de curvas no tempo. Diferenciar:
– uma única instancia do processo – Varias instancias independentes
Processo estocástico
• E’ uma COLECAO de variáveis aleatórias indexadas no tempo.
• X0 X1 X2 X3 ... cada uma delas e’ uma variável aleatória
• Assim, para cada Xt existe:
– E(Xt) = g(t) = o valor em torno do qual, NO TEMPO t, as instancias oscilam
– No tempo t, o valor E(Xt)=g(t) e’ o valor em torno do qual oscilam as diferentes curvas aleatórias que podem ser geradas pelo processo
E(X
t)=g(t) = curva vermelha
Processo estocástico
• X0 X1 X2 X3 ... cada uma delas e’ uma variável aleatória
• E(Xt) = g(t)
• Cada Xt tem uma distribuição de probabilidade
• Por exemplo, para cada Xt temos também:
Processo estocástico
• Figura descreve um processo (mecanismo de geração de curvas aleatórias)
• Densidade de Xt mostra que:
– Linha vermelha = g(t) = E(Xt) tendência de crescer Xt no tempo
Processos Estacionários
• Não existe teoria possível (ou bons resultados) se o processo puder ser “qualquer coisa”.
• Precisamos sempre impor algumas condições ou restrições e verificar as consequências.
• Uma restrição: Processos que fiquem “estáveis” ao longo do tempo.
• Varias definições possíveis de “estabilidade” • A mais conhecida e’ a de processos
Processos estacionários
• Processos estáveis em torno de um valor fixo:
– E(Xt) = g(t) = = constante, não varia no tempo
• Assim, eliminamos processos com instancias assim:
Não basta olhar E(X
t) = g(t)
• Queremos também Var(Xt) constante em t • Não queremos instancias assim:
Processos estacionários
• Definição vai alem de pedir que E(Xt) e Var(Xt) sejam constantes.
• Queremos que a DISTRIBUICAO CONJUNTA de qualquer coleção finita Xt1 , Xt2, ..., Xtk seja a mesma se deslocarmos os tempos por
constante s
• Isto e’, seja a mesma distribuição que a coleção Xt1+s , Xt2+s, ..., Xtk+s
Por exemplo,
Isto e’,
• Qualquer que seja a posição temporal
“janela” pela qual vemos um subconjunto de variáveis,
• o comportamento estatístico das instancias será o mesmo
• Ele esta’ “estacionário”
Processo estacionário
• A stationary process is a stochastic process whose joint probability
distribution does not change when shifted in time.
• Consequently, parameters such as
the mean and variance also do not change over time and do not follow any trends.
• Also called strict(ly) or strong(ly) stationary
Em termos matemáticos
• X0 X1 X2 ... processo estocástico
• Considere subconjunto finito e arbitrário das v.a.’s Xt1, Xt2, .., Xtk
• Sua distribuição conjunta e’ dada pela densidade f(xt1, xt2, ..., xtk)
• Para todo > 0, a densidade das Xt1+, Xt2+ , .., Xtk+ e’ igual ‘a das v.a.’s Xt1, Xt2, .., Xtk
Sempre estacionário
• Observe que, por esta definição, um processo não “vai ficando estacionário”
• Ser estacionário e’ uma propriedade do processo para todo tempo
• Propriedade e’ válida ao longo de todo o processo. Não estacionário
Na prática...
• Na prática, vários processos possuem um período inicial transiente.
• Depois deste período (de burn-in), os processos estabilizam-se
• Isto não se encaixa na definição de processo estacionário
• Precisamos de uma definição mais flexível de “estabilidade” para incorporar estes processos com períodos iniciais transitórios.
Cadeias de Markov
• ANTES de dar esta definição alternativa de “estabilidade”, vamos estudar as cadeias de Markov.
• Este e’ o tipo particular de processo estocástico mais importante, com o maior numero de
aplicacoes, 2.5 milhões de webpages pelo google. • Cadeias de Markov podem ser:
– processos (estritamente) estacionários
– Ou não-estacionários mas convergindo pra “estabilidade”.
Cadeias de Markov
• Como Xt evolui?
• Se as variáveis são independentes, então Xt não depende de nenhuma outra variável.
• Não precisamos conhecer nada da sequencia para predizer Xt
• Mas o caso interessante e’ quando elas são DEPENDENTES.
Caso independente e dependente
Variáveis tem a mesma esperança (0) e variância (1) nos dois gráficos. O que muda e’ que, no gráfico da direita, os valores são dependentes.
Caso dependente
Positivamente dependentes.
Quando Xt > > 0 , o valor seguinte Xt+1 >> 0
Caso INdependente
Variáveis sucessivas Independentes.
Quando Xt > > 0 , o valor seguinte Xt+1 pode ser > 0 ou < 0 com igual chance
Dependência negativa
• Podemos ter media = 0 e variância constante
• Mas valores sucessivos oscilando alternadamente em torno da media.
Como modelar a dependência?
• Como descrever a dependência? • A dependência e’ ESTOCASTICA:
– Dependendo do passado da serie, a variável Xt terá uma TENDENCIA de assumir certos valores.
• Temos de dizer qual a distribuição de
probabilidade de Xt sabendo-se o passado da serie ate t-1
X
11= ??
• Considere 3 instancias em que X10 tem o mesmo valor.
• Qual a melhor predição para o próximo valor X11?
Modelo (ou algoritmo)
• Precisamos de um modelo que diga como gerar X11 tendo em vista TODO o passado da serie.
• Se cada variável tem apenas 2 valores possíveis, 0 ou 1, temos 210 possíveis trajetórias
• Precisamos especificar
– P(X11 = 1 | uma trajetória)
• para cada uma das 210 trajetórias possíveis.
Hipótese
• Passado longínquo não afeta a distribuição de Xt dado o passado mais recente.
• Se soubermos os valores mais recentes da serie podemos ignorar o passado mais distante.
• Qualquer efeito que o passado mais distante
possa ter em Xt, este efeito está condensado no passado mais recente.
• Isto e’ uma HIPOTESE que pode ou não ser válida em cada aplicação particular.
Markov
• Caso extremo: “apenas a ULTIMA variável afeta as próximas”
• Menos informal:
f(xt+1 | xt , xt-1 , xt-2 , ...) = f(xt+1 | xt)
• DADO O PRESENTE Xt, o passado (Xt-1, Xt-2, ..) e’ irrelevante para prever o futuro (Xt+1)
• Outra maneira equiv: Xt+1 e’ indep de Xt-1, Xt-2, .. condicionalmente em Xt
Exemplos
• Cinco posições possíveis para uma partícula (eixo vertical).
• Xt = posição da partícula no instante de tempo t • Partícula movimenta-se ao acaso.
O labirinto
• Camundongo vive na caixa abaixo.
• Monitora-se o cômodo em que ele esta em intervalos regulares.
• Ele escolhe uma porta ao acaso quando decide sair de um cômodo.
Um modelo populacional simples
• População dividida em dois grupos A e B de tamanhos nA e nB
• Em cada instante, selecione um individuo da população ao acaso e adicione um do mesmo tipo.
• Selecione um individuo ao acaso e elimine-o. • Seja Xt a proporção de indivíduos do tipo A no
Um modelo epidêmico simples
• Uma grade regular quadrada: pontos (i,j) • Apenas origem (0,0) infectada em t=0.
• Em cada instante, cada um dos sites
infectados podem infectar os seus vizinhos sadios independentemente e com
probabilidade
• Seja Xt o diâmetro do grafo conectando os infectados no instante t.
Web como um grafo
Web e’ um grande grafo direcionado: nós são as páginas e arestas são os links. (inlinks e outlinks)
Google e page rank
• Passeio aleatório num grafo. • Por exemplo, grafo da Web
• Xt e’ a pagina no instante de tempo t. • Em t=0, escolha um página ao acaso.
• Usuário escolhe um dos outlinks da pagina em que esta’ no instante t
• Escolhe outlink com igual probabilidade e independentemente de sua historia anterior.
• Em t+1, salta para a nova pagina apontada pelo outlink. • Repete indefinidamente.
Texto como uma sequencia
• Um texto pode ser visto como um processo estocástico.
• Acrescente espaço e símbolos especiais de pontuação (?!., etc)
• Cada caracter e’ classificado como vogal, consoante ou símbolo especial.
• Xt e’ a classe do caracter t
• Podemos tambem classificar PALAVRAS: named entity recognition problem.
Modelo AR1
• AR1: AutoRegressivo de ordem 1 • Variáveis Y1, Y2, ... são gaussianas • São também markovianas
• (Yt | passado) = (Yt | Yt-1, Yt-2, ...) = = (Yt | Yt-1) • Como e’ esta dependência?
Modelo AR1
• Y0 ~ 0(y) (distribuição inicial arbitraria) • (Y1 | Y0 = y) = y + (ruído 1 ) • (Y2 | Y1 = y) = y + (ruído 2 ) • Etc. • Em geral, (Yt | Yt-1 = y) = y + t • Os 1, 2, ... são iid N(0, 2 e)
Modelo AR1
• Y0 ~ 0(y)
• (Yt | Yt-1 = y) = y + t com 1, 2, ...iid N(0, 2 e)
• (Yt | Yt-1 = y) ~ N(y , 2 e)
• E qual a distribuição não-condicional de Yt? • Temos (Yt | Yt-1 = y) ~ ...
Modelo AR1
• Repetindo: Y0 ~ 0(y)
• (Yt | Yt-1 = y) = y + t com 1, 2, ...iid N(0, 2 e)
• (Yt | Yt-1 = y) ~ N(y , 2 e)
• Para t grande temos Yt gaussiano • Com || < 1 e t grande, temos
– Yt ~ N(0, 2
e / (1 - 2))
Modelo AR1
• Repetindo: Y0 ~ 0(y)
• (Yt | Yt-1 = y) = y + t com 1, 2, ...iid N(0, 2 e)
• (Yt | Yt-1 = y) ~ N(y , 2 e)
• Yt e‘ gaussiano
• Com || < 1 Yt ~ N(0, 2e / (1 - 2)) • Note: distribuição de Yt não depende de t.
Modelo AR1
• (Yt | Yt-1 = y) ~ N(y , 2 e) • Yt ~ N(0, 2 e / (1 - 2)) • Estrutura de dependência: – Cor(Yt, Yt-1) = – Cor(Yt, Yt-2) = 2 – ... – Cor(Yt, Yt-k) = k=0.0
=0.9 =0.8
=0.0 =0.5
=0.8 =0.9
Outras instancias
=0.0 =0.5
=0.0 =0.5
=0.8 =0.9
Mais instancias
=0.0 =0.5
=0.0 =0.5
=0.8 =0.9
Especificando Cadeia de Markov
• Para especificar uma cadeia de Markov e ser
capaz de gerar instancias, precisamos de 2 coisas:
1. A distribuição do estado inicial: Y0 ~ 0(y). Esta
distribuição diz como o estado inicial e’ selecionado. Exemplos
• P(Y0 = 5) = 1 (com certeza, inicia no estado 5)
• P(Y0 = 0) = ½ = P(Y0 = 1) (joga moeda honesta para escolher entre 0 e 1)
• Y0 ~ N(0,1) (escolhe uma gaussiana padrão para comecar)
2. A maneira como se faz a transição de um instante para o outro. Dado que Xt-1 = x, qual o algoritmo para escolher Xt?
Exemplos de Cadeias de Markov
• Cinco posições possíveis para uma partícula (eixo vertical).
• Xt = posição da partícula no instante de tempo t • Partícula movimenta-se ao acaso.
Matriz de transição
• Insira as probabilidades
• Propriedade:
– soma nas linhas = 1 – Elementos são >= 0 1 2 3 4 5 1 2 3 4 5
O labirinto
• Camundongo vive na caixa abaixo.
• Monitora-se o cômodo em que ele esta em intervalos regulares.
• Ele escolhe uma porta ao acaso quando decide sair de um cômodo.
• Insira as probabilidades
A B C
A B C
Um modelo populacional simples
• População dividida em dois grupos A e B de tamanhos nA e nB
• Em cada instante, selecione um individuo da população ao acaso e adicione um do mesmo tipo.
• Selecione um individuo ao acaso e elimine-o. • Seja Xt o número de indivíduos do tipo A no
Urna de Pólya
• Xt = bolas azuis
• P(Xt+1 = ?? | Xt = k) • ?? é k-1, k ou k+1
• Evento [Xt+1 = k-1 ] ocorre, dado que [Xt = k], se e só se, escolher bola vermelha e a seguir escolher bola azul.
• P(Xt+1 = ?? | Xt = k) = (N-k)/N * (k/(N-k+1)) • Obtenha as outras
Matriz de Transição
• nA + nB = N fixo • Xt ε {0, 1, 2, ...., N} 0 1 2 ... K-1 k K+1 ... N 0 1 2 ... K-1 K 0 0 0 0 ?? ?? ?? 0 0 K+1 ... NEspaço de estados finito
• Se o espaço de estados e’ finito com N
elementos, usamos a matriz de transição NxN • Neste caso, ***TODOS*** os cálculos de
probabilidade se reduzem apenas a manipulações de matrizes.
Resumo
• n e’ a distribuição de Xn (X no tempo n)
• Se a cadeia for estacionaria, n não deveria depender de n
• n deveria ter uma media, variância etc que não variasse com o tempo n
• A cadeia deve ser estacionaria desde o tempo n=0 de acordo com nossa definição.
Conceito de distribuição estacionaria
• Cadeia de Markov (ou processo estocástico) não estacionária
• Mas cadeia converge para uma distribuição em torno da qual ela “estaciona”
Exemplo
• X0 ~ Unif(-50, 50)
• Xt = 0.8 * Xt-1 + N(0, 1)
• Dist estacionaria: Xt ≈ N(0, 1/(1-0.64)) = N(0, 2.8)
Efeito do valor inicial
• Eventualmente, a cadeia converge e passa a gerar valores de N(0, 2.8) em geral, entre +- 3.33
• Existem valores iniciais muito discrepantes com respeito ‘a distribuição N(0, 2.8)
• Por exemplo, X0 > 20 ou X0 < -20
• Por algum tempo, esses valores iniciais influenciam o inicio da serie.
Nova def de Estabilidade
• Queremos uma nova definição de “estabilidade”
• Uma propriedade assintótica (quando n ) • Queremos que n = P(Xn= i) valor que não
dependa do tempo n
• Queremos n = P(Xn= i) (i)
• Como encontrar esta distribuição limite? • Antes dessa teoria, um exemplo.
Exemplo de migração
• 4 lugares • Matriz 4x4
• P(i,j) = Probabilidade de um residente em lugar i em 01/Jan mudar-se para lugar j durante o ano. • O que ocorre no futuro?
• O sistema é aleatório e cada indivíduo terá sua trajetória pessoal.
Notação
• Seja 0(i) = P( X0 = i )
• Defina o vetor-linha 1 x N • 0 = (0(1), 0(2), ..., 0(N))
• Defina também n(i) = P( Xn = i ) e o vetor 1xN • n = (n(1), n(2), ..., n(N))
An example: population migration
• Migration example: 4 places • Transition Matrix P
• Pij gives the probability of residents from i moving to j in one year interval.
A B C D
A 0.83 0.05 0.02 0.10
B 0.01 0.94 0.02 0.03
C 0.01 0.30 0.65 0.04
Uma visão: individual
• Imagine um grande número de indivíduos
movendo-se de lugar para lugar a cada ano de acordo com a matriz P.
• Podemos acompanhar um deles em particular. • What will happen in the future?
• For example:
– A A B A C C C D D ...
• Or may be this path
Probabilidades individuais
• Assim, as probabilidades dizem respeito a um indivíduo particular.
• P(X0 = A) = Probab de um indivíduo escolhido ao acaso começar no lugar A
• P(Xt = A) = Probab de um indivíduo escolhido ao acaso estar em A no tempo t.
• P(Xt = A | X0 = A) = Probab de um indiv. casual estar em A no tempo t DADO QUE começou em A
Outra visão: populacional
• População espalhada pelos quatro lugares.
• Alocação inicial foi feita de acordo com 0(i) = P( X0 = i ) • Escolhe-se o lugar de cada indivíduo de acordo com 0 • P(X0 = A) ≈ proporção de indivíduos em A no tempo 0 • Movimentações de cada um de acordo com matriz P
• No tempo t, a proporção de indivíduos em A será aprox. igual a t(A)
• P(Xt = A | X0 = A) ≈ proporção de indivíduos em A no tempo t DENTRE AQUELES que começaram em A
Always on the move
• Start on initial configuration
• What will happen in the future? • For example, for two individuals:
– A A B A C C C D D ...
• Or may be this path
– B B B B C D D A A ...
• The system is random and the realizations can be very different from each other
P(X
t= ?? | X
0= A)
• Como calcular – P(Xt = A | X0 = A) – P(Xt = B | X0 = A) – P(Xt = C | X0 = A) – P(Xt = D | X0 = A)P(X
t= ?? | X
0= A)
• Seja P a matriz de transição 4x4 • Tome P*P*P*...*P = Pt
– Por exemplo, P(X2 = ?? | X0 = A). – Calcule P*P = P2 – A B C D – A 0.69 0.10 0.04 0.18 – B 0.02 0.89 0.03 0.06 – C 0.02 0.48 0.43 0.07 – D 0.04 0.07 0.08 0.81
P(X
t= ?? | X
0= A)
• A linha A fornece P(X2 = ?? | X0 = A).
– A B C D – A 0.69 0.10 0.04 0.18 – B 0.02 0.89 0.03 0.06 – C 0.02 0.48 0.43 0.07 – D 0.04 0.07 0.08 0.81 • A linha B fornece P(X2 = ?? | X0 = B) • Veja que P(X2 = A | X0 = B) = 0.02
• E que P(X2 = A | X0 = A) = 0.69, bem diferente • Isto e’ bem razoável, certo?
P(X
t= ?? | X
0= A) quando t
• O que acontece quando fazemos t ? • Vamos tomar t=10. Temos
• 0.20 0.37 0.08 0.35 • 0.05 0.69 0.07 0.19 • 0.05 0.67 0.08 0.20 • 0.08 0.38 0.10 0.45
• Veja que P(X10=A|X0=A)=0.20 e que P(X10=A|X0=B)=0.05.
P(X
t= ?? | X
0= A) quando t
• Quando t=20, temos A B C D • A 0.09 0.51 0.08 0.31 • B 0.07 0.61 0.07 0.25 • C 0.07 0.61 0.07 0.25 • D 0.08 0.52 0.08 0.32• Matriz bem diferente da anterior e ... convergindo para que??
P(X
t= ?? | X
0= A) quando t
• Se t = 30 temos • 0.07 0.56 0.08 0.29 • 0.07 0.59 0.08 0.27 • 0.07 0.59 0.08 0.27 • 0.07 0.56 0.08 0.29P(X
t= ?? | X
0= A) quando t
• Se t=100 temos • 0.07 0.58 0.08 0.27 • 0.07 0.58 0.08 0.27 • 0.07 0.58 0.08 0.27 • 0.07 0.58 0.08 0.27• As linhas da matriz P100 são idênticas (ate’ 2
casas decimais)
P(X
t= ?? | X
0= A) quando t
• Suponha que as linhas da matriz Pt sejam
praticamente idênticas • O que isto significa?
• Significa que
• P(Xt = A | X0 = A) = P(Xt = A | X0 = B) = P(Xt = A | X0 = C) = P(Xt = A | X0 = D) • Isto e’, a chance de estar em A no tempo t e’ a
mesma, NAO IMPORTA DE ONDE PARTIU. • Do mesmo modo,
P
tquando t
• Sob certas condições, temos que Pt converge
para uma matriz em que as linhas são idênticas (e são 0 e somam 1).
• E daí?
Notação
• Seja 0(i) = P( X0 = i )
• Defina o vetor-linha 1 x N • 0 = (0(1), 0(2), ..., 0(N))
• Defina também n(i) = P( Xn = i ) e o vetor 1xN • n = (n(1), n(2), ..., n(N))
Se P
nconvergir...
• Se Pn convergir para matriz com todas as
linhas idênticas...
• Idênticas e iguais ao vetor linha • Três usos para o símbolo :
– 0 n e
• Teremos n = 0 . Pn
Mais uma vez...
• Temos n = 0 . Pn Ou seja x P x x x P x x x P x x N N i Ni i i n n n 2 1 0 0(1), , ( ) ) ( , ), ( ), 1 ( ) ( ) ( ) ( ) , ( ) ( ) ( 1 1 0 1 ) ( constante 0 j P j i i j i i N j N j i n n
Outra maneira de ver as coisas
• Para n grande, esperamos que
• n n+1 n+2 n+3 etc.. Todas convergindo para CERTA distribuição
• Isto e’, a partir de certo n, a distribuição de Xn fica como que “estacionada” numa certa
distribuição de probabilidade fixa .
Se existir ...
• Se existir uma distribuição limite para n, qual propriedade ela deve satisfazer?
• Se existir um limite, teremos n n+1 a partir de certo n,
• SEMPRE temos n+1 = n . P numa cadeia de Markov
Se existir ...
• Se n n+1 e como n+1 = n . P
• Então devemos ter n+1 = n . P . P • Isto vai aparecer na DEFINICAO de uma
Distribuição estacionaria
• e’ chamada distribuição estacionaria (ou invariante) de uma cadeia de Markov com matriz de transição P se = . P
• Note que a distribuição inicial 0 não tem nenhum papel nesta definição.
Distribuição estacionaria
• Dist estacionaria (ou invariante), def: = . P • A cadeia fica estacionada em se ela começar
com
• Suponha que 0 = estacionaria
– Como n+1 = n . P – então
– 1 = 0 . P = . P =
– Do mesmo modo, 2 = 1 . P = . P = , etc... – e portanto n = para todo n
Vamos juntar as partes
• matriz de transição P
• Se Pn matriz com todas linhas iguais a
então n = 0 . Pn
• e’ a distribuição limite de P
• Como achar ? Podemos usar Pn
aproximadamente
Exemplo
• Espaço de estados = {1, 2, ..., 10} • Checar: = (0, ...., 0, ½, ½ ) [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [1,] 0.5 0.5 [2,] 0.5 0.5 [3,] 0.5 0.5 [4,] 0.5 0.5 [5,] 0.5 0.5 [6,] 0.5 0.5 [7,] 0.5 0.5 [8,] 0.5 0.5 [9,] 0.5 0.5 [10,] 0.5 0.5Trajetórias
Não importa de onde partimos no espaço de estados.
Seja X0=1 ou X0=5, quando o tempo passa, Xt vai estar seguindo aprox. a dist invariante em que apenas os estados 9 e 10 tem probabs iguais a ½
Distribuição limite e estacionária
• Nem toda solução de • = . P
• vai ser a distribuição limite da cadeia P
• A limiting distribution, when it exists, is always a stationary distribution.
• But the converse is not true. There may exist a stationary distribution but no limiting
Exemplos de dist estacionarias
• P = identidade qualquer e’ estacionaria (e portanto não podem ser todas elas a distrib
limite)
• P = identidade “invertida” = [0 1; 1 0] =(½,½) distr estac e’única mas não e’ distrib limite
The fundamental limit theorem for MC
Irredutível: para qualquer par de estados e’ possível sair de i e chegar a j. Isto e’, P(Xn = j para algum n| X0 = i) e’ MAIOR que zero para todo (i,j) Periódica: Espaço de estados particionado em 2 conjuntos A e B.
Nos tempos pares está no conjunto A e nos tempos impares esta no conjunto B. Exemplo: passeio aleatório num grafo regular.
From stackexchange
• Putting notation aside, the word "stationary" means "once you get there, you will stay
there"; while the word "limiting" implies "you will eventually get there if you go far enough". Just thought this might be helpful.
Mais uma definição
• Suponha que temos um candidato para a distribuição limite de uma cadeia irredutível e aperiódica.
• Como checar? Verificando se = . P
• Outra maneira, mais simples: checando a condição de balanço detalhado (DB)
• Não precisa fazer a conta .P
• Em espaços de estados contínuos, esta conta é uma integral complicada ( e não uma simples multiplicação de matrizes).
A ideia de usar DB
• Uma cadeia irredutível e aperiódica com matriz de transição P.
• Temos uma distribuição
• Verifique se a condição DB é satisfeita. • Se sim, então é a única distribuição
estacionária de P e é também a única distribuição limite da cadeia
DB no MCMC
• Em MCMC, o uso do DB é mais importante ainda. • Temos uma distribuição = posteriori
• Queremos que esta distribuição seja a distribuição limite de uma cadeia de Markov.
• Temos de propor uma matriz de transição P tal que isto oorra.
• Como fazer isto?
– Criamos uma P que seja aperiódica e irredutível
– Checamos se a condição DB é válida com esta P e a desejada: isto não é muito complicado.
– Se sim, então será a única distribuição estacionária e distribuição limite dessa cadeia.
• Vamos provar que as transições do Gibbs sampler e do Metropolis-Hastings satisfazem DB.
Balanço global
• Dada uma matriz de transição P, uma
distribuição e’ estacionaria para P se = P • Isto e’, (j) = i (i) * P(i, j) (**)
• Balanço global:
– Como (j) = (j) * i P(j, i) = i (j) *P(j, i) então a equação (**) acima implica em
– i (j) *P(j, i) = i (i) * P(i, j)
• = P e’ o mesmo que balanço global.
Global balance (GB)
• Balanço global: i (j) *P(j, i) = i (i) * P(i, j) • Lado esquerdo: fluxo total saindo de j
• Lado direito: fluxo total entrando em j • j i=1 i=2 i=N ... j i=1 i=2
GB e DB
• GB é equivalente à condição = . P
• Checar GB implica fazer somas (ou integrais) • A condição DB é mais simples: é baseada em
Balanço detalhado
Simule MUITAS vezes a cadeia desde o instante inicial até o tempo t=1.
O lado direito mostra a proporção dessas trajetórias que tiveram X0 = i e X1=j Isto e’ chamado o FLUXO de i para j
Balanço detalhado
• (j) *P(j, i) = (i) * P(i, j) para TODO PAR (i,j)
j
i
i
j
Simule a cadeia MUITAS vezes.
O lado direito mostra a proporção dessas trajetórias que tiveram X0 = j e X1=i Isto e’ chamado o FLUXO de j para i
Intuição from Quora (William Chen)
• DB = There is a perfect balance of trade
• Think of the nodes of the Markov Chain being countries.
• Think of a link from country A to B as country A exporting goods and services to country B.
• (i) is the amount of wealth that country i owns
• P(i, j) is the percentage of that wealth that the country i exports to country j. • (i) * P(i, j) is hence the amount of wealth exported from country i to country j. • Thus if (i) * P(i, j) = (j) *P(j, i) for all i,j then exports equals imports between all
countries.
• There is neither trade deficit nor trade surplus - there is a perfect balance of trade.
Intuição from Quora (William Chen)
• If there's a perfect balance of trade, you can reverse the direction of trade and and nothing has changed in terms of the value of things traded. We say that this Markov Chain is reversible.
• This also leads nicely to an intuitive explanation of why if a Markov
transition P satisfies DB under a distribution , then is stationary for P. • Definition of stationarity: = . P
• If a Markov chain starts in a stationary distribution, then it stays in a stationary distribution in the next step. 1 = 0 . P = 0
• If there's a perfect balance of trade for a certain wealth distribution and matrix P, then after a round of trades each country will still have the same amount of wealth. Thus is stationary.
• (I'd like to credit Professor Sam Kou of the Harvard Stats department for inspiring this explanation!)
DB
• A condição DB exige dois elementos:
– Uma distribuição
– Uma matriz de transição P
• Ela checa uma condição que envolve os dois elementos:
• Cadeia irredutível e aperiódica. Se DB for válida então é a ÚNICA distribuição
Importância de DB
• Nos modelos de análise bayesiana, temos posteriori
• Queremos cadeia que convirga para
• Como construir uma cadeia? Vimos duas respostas:
– Gibbs sampler
– Metropolis-Hastings
MCMC
• Ideia geral:
e’ dada (a distribuicao a posteriori). Inventamos a matriz de transição P. Como verificar se P=?
Isto e’, como verificar se P tem como distribuição estacionaria?
Basta checar se balanço detalhado e’ valido. Se for P= e’ verdade
Simulação Monte Carlo multivariada
• Problema difícil: simular de uma distribuição MULTIVARIADA.
• Quero simular um VETOR de n v.a.’s que não são independentes.
• Os valores das v.a.’s estao “amarrados” probabilisticamente.
• Não posso simular CADA componente do vetor ignorando as demais componentes.
Exemplo
• Por exemplo, algumas vezes, preciso simular da seguinte densidade de probabilidade
• Onde c1, c2, ..., c1000 são constantes conhecidas.
• Simulamos um vetor 2000-dim.
1000 1 ( ) 2 1000 1 1000 1 2 1 ) ( exp * ) , , , , , ( i j N i j i i i i i i e c cte p Passeio aleatório num grafo
• Imagine um grafo sobre os estados da cadeia • Coloque arestas “arbitrariamente”
• Se i e j estão ligados, i e’ vizinho de j • i não e’ vizinho de si mesmo
• Considere INICIALMENTE a matriz de transição do passeio aleatório no grafo
Dist. estacionaria do passeio aleatório
• Seja d(i) o grau do no ou vértice i.
• Para esta matriz P, podemos mostrar que
• ou
• e’ distribuição estacionaria. • PROVA: no quadro...
Metropolis: prova
Detalhes sobre irredutibilidade e
periodicidade
Irredutível
• Notação: Pi significa que a cadeia começou com X0=i
Irredutível e classes
• O espaço de estados S pode ser particionado em classes comunicantes.
• Cadeia e’ irredutível se existir apenas uma classe comunicante.
• A intenção e’ eliminar de S a possibilidade de haver estados absorventes
• Se existirem estados absorventes, qual seria a distribuição estacionaria da cadeia?
Ruína do jogador
• Jogo de “moeda” com probab sucesso = p • Fracasso com probab 1-p
• Se sucesso ganha 1 real. Se fracasso, perde 1 real
• Jogador 1 começa com M1 reais e jogador 2 com M2 reais
• Seja Xt o GANHO realizado no jogo por 1 • X0 = 0.
Ruína do jogador
• Seja Xt o GANHO realizado no jogo por 1 • Se Xt = -M1 entao Xt+k = -M1 para todo k > 0 • Se Xt = M2 entao Xt+k = M2 para todo k > 0 • Suponha que i -M1 e que i M2
• P(Xt+1 = i+1 | Xt = i) = p • P(Xt+1 = i-1 | Xt = i) = 1-p
• Em algum momento, cadeia bate em –M1 ou em M2 e e’ “absorvida” para sempre
Definition
• Exemplo:
• P(i,i) =0 P2(i,i) = 0 ... P7(i,i) = 0
• MAS P8(i,i) > 0 P9(i,i) = 0 P10(i,i) = 0 P11(i,i) > 0 ....
• Então di = gcd{ 8, 11, ....(o que quer que apareça aqui) } = 1 • Se P(i,i) > 0 então di = 1
Definition
• Exemplo de quando di > 1
• P(i,i) =0 P2(i,i) > 0 P3(i,i) = 0 P4(i,i) > 0 P5(i,i) = 0 P6(i,i) > 0 ....
• Isto e’, se n e’ par Pn(i,i) > 0 mas se n e’ impar esta probab = 0
• Então di = gcd{ 2, 4, 6, ... } = 2
Cadeia reversível
• Realização parcial de uma cadeia:
– X0 = io X1=i1 X2=i2 X3=i3
• Esta trajetória arbitraria tem certa probabilidade de ocorrer
• Considere a chance do caminho reverso:
• X0 = i3 X1=i2 X2=i1 X3=i0
• Se a chance de ocorrência de todo caminho
reverso e’ igual ao caminho original, a cadeia e’ reversível
Mais formalmente
• Vamos olhar 3 primeiros momentos da cadeia. • Tome uma trajetória arbitraria i0, i1, i2, i3
• Temos um valor para P(X0 = io ,X1=i1, X2=i2 ,X3=i3) • Temos outro valor para P(X0 = i3, X1=i2, X2=i1, X3=i0)
• Queremos P(X0 = io ,X1=i1, X2=i2 ,X3=i3) = P(X0 = i3, X1=i2, X2=i1, X3=i0)
Mais formalmente
• P(X0 = io ,X1=i1, X2=i2 ,X3=i3) =P(X0 = i3, X1=i2, X2=i1, X3=i0) para TODA trajetória especifica i0, i1, i2, i3
• Generalizamos isto para qualquer numero de variáveis.
Reversível estacionaria
• Veja que reversível depende da distribuição inicial 0 • Definição de dist estacionária não depende da dist
inicial
• Mas existe amarração:
• Se {Xn} é reversível 1 = 0
• Prova: Seja 0 (i) = P(X0=i). Vamos obter
• 1 (i) = P(X1=i) = ∑jP(X0=j, X1=i)= ∑jP(X0=i, X1=j)= =P(X0=i) = 0 (i)
Reversível estacionaria
• Como
• n+1 = n . P
• Obtemos 0 = 0 . P
• E 0 é distribuição estacionária.
• Assim, uma cadeia reversível é também uma CADEIA estacionária (e desde o início está
Reversível ...
Estacionaria reversível
• Dada uma matriz de transição P, uma distribuição e’ estacionaria para P se = P
• Se cadeia começa com , ela fica em : processo estacionário.
• Toda cadeia estacionária satisfaz balanço global • Reversível pede algo mais:
– (j) *P(j, i) = (i) * P(i, j) para todo PAR (i,j)