Monte Carlo Hamiltoniano: como entender a proposta Metropolis-Hasting?

9

Estou tentando entender o trabalho interno do Hamiltoniano Monte Carlo (HMC), mas não consigo entender completamente a parte quando substituímos a integração determinística do tempo por uma proposta de Metropolis-Hasting. Estou lendo o impressionante artigo introdutório Uma Introdução Conceitual ao Hamiltoniano Monte Carlo de Michael Betancourt, por isso seguirei a mesma notação usada aqui.

fundo

O objetivo geral do Monte Carlo da Cadeia de Markov (MCMC) é aproximar a distribuição de uma variável de destino .qπ(q)q

A idéia do HMC é introduzir uma variável auxiliar de "momento" , em conjunto com a variável original que é modelada como "posição". O par posição-momento forma um espaço de fase estendido e pode ser descrito pela dinâmica hamiltoniana. A distribuição conjunta pode ser escrita em termos de decomposição microcanônica:qpqπ(q,p)

π(q,p)=π(θE|E)π(E) ,

onde representa os parâmetros em um dado nível de energia , também conhecido como conjunto típico . Veja as figuras 21 e 22 do documento para ilustração. ( q , p ) EθE(q,p)E

insira a descrição da imagem aqui

O procedimento HMC original consiste nas duas etapas alternadas a seguir:

  • Uma etapa estocástica que realiza a transição aleatória entre os níveis de energia e

  • Uma etapa determinística que executa a integração do tempo (geralmente implementada via integração numérica com salto) ao longo de um determinado nível de energia.

No artigo, argumenta-se que o leapfrog (ou integrador simplético) apresenta pequenos erros que introduzirão viés numérico. Portanto, em vez de tratá-lo como uma etapa determinística, devemos transformá-la em uma proposta de Metropolis-Hasting (MH) para tornar essa etapa estocástica, e o procedimento resultante produzirá amostras exatas da distribuição.

A proposta de MH executará etapas de operações de avanço rápido e depois mudará o momento. A proposta será aceita com a seguinte probabilidade de aceitação:eu

uma(qeu,-peu|q0 0,p0 0)=mEun(1 1,exp(H(q0 0,p0 0)-H(qeu,-peu)))

Questões

Minhas perguntas são:

1) Por que essa modificação de transformar a integração de tempo determinística na proposta de MH cancela o viés numérico para que as amostras geradas sigam exatamente a distribuição de destino?

2) Do ponto de vista da física, a energia é conservada em um determinado nível de energia. É por isso que somos capazes de usar as equações de Hamilton:

dqdt=Hp,dpdt=-Hq .

Nesse sentido, a energia deve ser constante em todos os lugares do conjunto típico, portanto, deve ser igual a . Por que existe uma diferença de energia que nos permite construir a probabilidade de aceitação?H(q0 0,p0 0)H(qeu,-peu)

cwl
fonte

Respostas:

7

As trajetórias deterministas Hamiltonianas são úteis apenas porque são consistentes com a distribuição alvo. Em particular, trajetórias com um projeto típico de energia em regiões com alta probabilidade de distribuição alvo. Se pudéssemos integrar exatamente as equações de Hamilton e construir trajetórias Hamiltonianas explícitas, já teríamos um algoritmo completo e não precisaríamos de nenhuma etapa de aceitação .

Infelizmente, fora de alguns exemplos muito simples, não podemos integrar exatamente as equações de Hamilton. É por isso que temos que trazer integradores simpléticos . Os integradores simpléticos são usados ​​para construir aproximações numéricas de alta precisão para as trajetórias Hamiltonianas exatas que não podemos resolver analiticamente. O pequeno erro inerente aos integradores simpléticos faz com que essas trajetórias numéricas se desviem das trajetórias reais e, portanto, as projeções das trajetórias numéricas se desviam do conjunto típico da distribuição de destino. Precisamos introduzir uma maneira de corrigir esse desvio.

A implementação original do Hamiltoniano Monte Carlo considerou o ponto final de uma trajetória de comprimento fixo como uma proposta e, em seguida, aplicou um procedimento de aceitação do Metropolis a essa proposta. Se a trajetória numérica tivesse acumulado muito erro e, portanto, desviado muito da energia inicial, a proposta seria rejeitada. Em outras palavras, o procedimento de aceitação descarta propostas que acabam se projetando muito longe do conjunto típico da distribuição de destino, de modo que as únicas amostras que mantemos são aquelas que se enquadram no conjunto típico.

Observe que as implementações mais modernas que eu defendo no artigo Conceitual não são, de fato, algoritmos de Metropolis-Hastings. A amostragem de uma trajetória aleatória e, em seguida, um ponto aleatório dessa trajetória aleatória é uma maneira mais geral de corrigir o erro numérico introduzido pelos integradores simpléticos. Metropolis-Hastings é apenas uma maneira de implementar esse algoritmo mais geral, mas a amostragem por fatia (como é feita no NUTS) e a amostragem multinomial (como é feita atualmente em Stan) funcionam tão bem quanto não são melhores. Mas, no final das contas, a intuição é a mesma - estamos selecionando probabilisticamente pontos com pequeno erro numérico para garantir amostras exatas da distribuição de destino.

Michael Betancourt
fonte
H(qeu,-peu)H(q0 0,p0 0)
11
Sim, mas devido ao modo como o volume em grandes espaços dimensionais funciona (sempre mais volume para o exterior de uma superfície do que para o interior), as trajetórias passam exponencialmente mais tempo se desviando para energias mais altas do que energias mais baixas. Consequentemente, quando você combina a proposta (que favorece energias mais altas) com a aceitação (que favorece energias mais baixas), você recupera um equilíbrio em torno da energia inicial.
Michael Betancourt