Terminologi 'matriks massa' Hamiltonian / Hibrid MCMC


8

Saya mencoba menerapkan HMC dengan matriks massa non-diagonal, tetapi saya tersandung oleh beberapa terminologi.

Menurut BDA3 dan ulasan Neal, istilah energi kinetik (yang saya kira selalu digunakan karena kenyamanan) adalah

K(p)=pTM1p2.

Ini juga dikenali disebut multivariat normal dengan mean nol dan kovarians matriks . BDA3 (hal 301) mengatakanM

Untuk membuatnya sederhana, kita biasanya menggunakan matriks massa diagonal, M. Jika demikian, komponen φ adalah independen, dengan φj ∼ N (0, Mjj) untuk setiap dimensi j = 1,. . . , d. Ini dapat berguna untuk M untuk skala sekitar dengan matriks kovarians terbalik dari distribusi posterior, (var (θ | y)) ^ - 1.

(Saya membaca N (0, M)) sebagai multivariat normal dengan rata-rata nol dan kovarians M.)

Bagian yang membuat saya tersandung adalah di mana dikatakan bahwa "dapat bermanfaat bagi untuk secara kasar mengukur dengan matriks kovarians terbalik dari distribusi posterior ...". M

Dan kemudian juga sebelum bahwa sampel momentum yang dimulai langkah-langkah lompatan ( ) diambil dari normal multivariat dengan kovarian matriks . ϕM

Jadi yang mana? Untuk membangun M yang baik untuk HMC, apakah saya memperkirakan kovarians atau matriks presisi posterior? Meskipun adalah matriks kovarian dari energi kinetik, menggunakan yang merupakan estimasi dari matriks presisi posterior akan menghasilkan algoritma yang lebih efisien?MM

Pertanyaan kedua: intuisi apa yang bisa membimbing saya di sini?

  • Apakah Anda ingin menggunakan matriks presisi sehingga momentum mendorong ortogonal ke potensial / posterior untuk meningkatkan pencampuran?

  • ATAU apakah Anda ingin momentum mendorong ke arah bagian massa probabilitas tinggi dari posterior (karena di situlah Anda ingin mengambil sebagian besar sampel).

ps Alasan saya tidak menggunakan matriks identitas untuk adalah karena untuk masalah saya, saya kebetulan bisa mendapatkan estimasi yang layak dari matriks kovarians posterior saya yang cukup tinggi (~ 1000) sebelumnya.M

Jawaban:


6

Transformasi linear dari variabel posisi setara dengan transformasi linear terbalik dari variabel momentum. Idealnya, Anda ingin mengambil sampel dari distribusi (yang ditransformasikan) yang matriks kovariansnya adalah matriks identitas, dan ini diperoleh dengan transformasi yang ditunjukkan di atas.

Untuk perinciannya, ada penjelasan yang bagus di Neal "MCMC using Hamiltonian dynamics", Bab 5 dari Handbook of Markov Chain Monte Carlo , Bagian 4.1 ("Pengaruh transformasi linear"). Bab ini tersedia di sini .

Neal menjelaskan:

Misalkan kita memiliki estimasi, , dari matriks kovarians untuk , dan anggap juga bahwa memiliki setidaknya distribusi Gaussian kasar. Bagaimana kita dapat menggunakan informasi ini untuk meningkatkan kinerja HMC? Salah satu caranya adalah mentransformasikan variabel sehingga matriks kovariansnya dekat dengan identitas, dengan menemukan dekomposisi Cholesky, , dengan yang lebih rendah segitiga, dan membiarkan . [ ]ΣqqΣ=LLTLq=L1q

Cara yang setara untuk menggunakan estimasi kovarians adalah dengan menjaga variabel asli , tetapi gunakan fungsi energi kinetik - yaitu, kita membiarkan variabel momentum memiliki kovarian . Kesetaraan dapat dilihat dengan mentransformasikan energi kinetik ini sesuai dengan transformasi ke (lihat persamaan (4.1)), yang menghasilkan dengan .ΣqK(p)=pTΣp/2Σ1q=L1qK(p)=(p)TM1pM=(L1(LLT)(L1)T)1=I

Untuk memberikan intuisi, misalkan pdf target berbentuk cerutu yang menunjuk ke satu arah yang tidak sejajar sumbu. Anda dapat memutar dan mengubah skala ruang, sehingga cerutu menjadi bola, dan kemudian menarik momentum dari unit multivariat normal, atau setara Anda dapat menjaga ruang asli dan menggambar momentum Anda sehingga mereka sejajar dengan cerutu (misalnya, dengan sebagian besar kecepatan di sepanjang sumbu utama cerutu, sehingga Anda dapat menjelajahinya dengan cepat).


Saya harus mengakui bahwa saya membaca itu (beberapa kali) dan kemudian memutuskan untuk mengajukan pertanyaan ini ... Jika Anda dapat menghubungkan penjelasan Neal di sana dengan pertanyaan saya, Anda akan mendapatkan semua poinnya
bill_e

@bill_e: Pertanyaan pertama Anda sepenuhnya dijawab di atas: "kami membiarkan variabel momentum memiliki kovarian ". Jadi, ya, . Jawaban untuk pertanyaan kedua adalah bahwa Anda ingin mengirim sehingga distribusi momenta selaras dengan sumbu matriks kovarians (yang setara dengan reparametrize ruang asli sehingga matriks kovarians adalah identitas). Σ1M=Σ1pLTp
lacerbi

Langkah-langkah yang diposting dari implementasi ini, hanya untuk menjadi sangat jelas. Apakah tepat? Secara khusus kebalikannya (atau ketiadaan) pada . Ya, cerutu itu masuk akal. Saya akan lebih memikirkannya. Σ^
bill_e

4

Cara sederhana untuk melihat mengapa harus menjadi kovarians terbalik dari distribusi yang ingin Anda sampel adalah dengan mempertimbangkan pengambilan sampel dari Normal multivarian dengan rata-rata dan kovarians . Dalam hal ini persamaan gerak Hamilton dapat diselesaikan dengan tepat (yaitu, tidak perlu untuk integrasi leapfrog). Sekarang, untuk dua hal ajaib terjadi: (i) persamaan gerak untuk setiap koordinat decouple dari yang lain, dan (ii) matriks dan saling membatalkan satu sama lain dan menghilang dari persamaan gerak. Solusinya adalah seperangkat osilator dengan frekuensi yang sama, yang dapat diperdebatkan untuk menghasilkan pencampuran secepat mungkin. Lihat beberapa detail dalam persamaan (2.31) - (2.35)MμΣM=Σ1ΣMdi sini .

Dalam distribusi generik pendekatan ini hanya merupakan perkiraan.


0

Bagian penting dari momentum transformasi linear menggunakan estimasi kovarians.

Diberikan estimasi dari matriks kovarians HMC posterior adalah untuk sampel dari:Σ^

  1. GambarϕN(0,Σ^1)

  2. Simulasikan dinamika Hamilton. (Mengulangi kali L)

    A. Setengah langkah: ϕϕ+12ϵddθlogp(θy).

    B. Langkah penuh: θθ+ϵΣ^ϕ.

    C. Setengah langkah: ϕϕ+12ϵddθlogp(θy).

  3. Terima tolak.

(Jika ini benar, jangan perbaiki ini, upvote @lacerbi)


1
subbed M1 untuk Σ^
bill_e

Ya, saya pikir ini benar. Lihat misalnya Persamaan. (4) dari makalah ini .
lacerbi
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.