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
Ini juga dikenali disebut multivariat normal dengan mean nol dan kovarians matriks . BDA3 (hal 301) mengatakan
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 ...".
Dan kemudian juga sebelum bahwa sampel momentum yang dimulai langkah-langkah lompatan ( ) diambil dari normal multivariat dengan kovarian matriks .
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?
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.
sumber
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 Σ M di sini .
Dalam distribusi generik pendekatan ini hanya merupakan perkiraan.
sumber
Bagian penting dari momentum transformasi linear menggunakan estimasi kovarians.
Diberikan estimasi dari matriks kovarians HMC posterior adalah untuk sampel dari:Σ^
Gambarϕ∼N(0,Σ^−1)
Simulasikan dinamika Hamilton. (Mengulangi kali L)
A. Setengah langkah:ϕ←ϕ+12ϵddθlogp(θ∣y) .
B. Langkah penuh:θ←θ+ϵΣ^ϕ .
C. Setengah langkah:ϕ←ϕ+12ϵddθlogp(θ∣y) .
Terima tolak.
(Jika ini benar, jangan perbaiki ini, upvote @lacerbi)
sumber