Apa perbedaan antara ABC dan MCMC dalam aplikasi mereka?

15

Untuk pemahaman saya Perkiraan Bayesian Computation (ABC) dan Markov Chain Monte Carlo (MCMC) memiliki tujuan yang sangat mirip. Di bawah ini saya menjelaskan pemahaman saya tentang metode ini dan bagaimana saya melihat perbedaan dalam penerapannya pada data kehidupan nyata.

Perkiraan Bayesian Computation

ABC terdiri atas pengambilan sampel parameter θ dari sebelumnya, melalui simulasi numerik menghitung statistik yang dibandingkan dengan beberapa diamati . Berdasarkan algoritma penolakan, dipertahankan atau ditolak. Daftar dipertahankan membuat distribusi posterior.x o b s x i x ixixobsxixi

Markov Chain Monte Carlo

MCMC terdiri atas pengambilan sampel distribusi sebelum parameter . Dibutuhkan sampel pertama , hitung dan kemudian lompat (sesuai beberapa aturan) ke nilai baru yang dihitung lagi. Rasio dihitung dan tergantung pada beberapa nilai ambang, lompatan berikutnya akan terjadi dari posisi pertama atau kedua. Eksplorasi nilai-nilai berjalan satu dan satu dan pada akhirnya, distribusi nilai-nilai dipertahankan adalah distribusi posteriorθ 1 P ( x o b s | θ 1 ) P ( θ 1 ) θ 2 P ( x o b s | θ 2 ) P ( θ 2 ) P ( x o b s | θ 2 ) P ( θ 2 )θθ1P(xobs|θ1)P(θ1)θ2P(xobs|θ2)P(θ2)P(xobs|θ2)P(θ2)P(xobs|θ1)P(θ1)θθP(θ|x) (untuk suatu alasan yang masih belum saya ketahui).

Saya menyadari bahwa penjelasan saya ketinggalan untuk mewakili berbagai metode yang ada di bawah masing-masing istilah ini (terutama untuk MCMC).

ABC vs MCMC (pro dan kontra)

ABC memiliki keuntungan bahwa seseorang tidak perlu dapat secara analitis menyelesaikan . Karena itu, ABC cocok untuk model rumit di mana MCMC tidak akan membuatnya.P(x|θ)P(θ)

MCMC memungkinkan untuk melakukan tes statistik (uji rasio kemungkinan, G-test, ...) sementara saya tidak berpikir ini layak dengan ABC.

Apakah saya benar sejauh ini?

Pertanyaan

  • Apa perbedaan antara ABC dan MCMC dalam aplikasi mereka? Bagaimana seseorang memutuskan untuk menggunakan satu atau metode lain?
Remi.b
sumber
1
"MCMC terdiri atas sampel distribusi parameter sebelumnya prior." Meskipun seseorang tentu dapat melakukan ini, itu tidak perlu, atau bahkan diinginkan dalam banyak kasus. Untuk banyak aplikasi MCMC, kami mengambil sampel θ2 dari distribusi kandidat yang berpusat di sekitar θ1 (misalnya, gaussian dengan standar deviasi kecil), kemudian menghitung rasio terima / tolak seperti yang Anda sebutkan di atas. Ini berbeda dengan ABC, di mana kami mengambil sampel dari sebelumnya (dan ini adalah satu-satunya cara untuk memasukkan informasi sebelumnya dalam ABC, umumnya).
z_dood

Jawaban:

12

Beberapa komentar tambahan di atas jawaban Björn:

  1. ABC pertama kali diperkenalkan oleh Rubin (1984) sebagai penjelasan tentang sifat inferensi Bayesian, daripada untuk tujuan komputasi. Dalam makalah ini ia menjelaskan bagaimana distribusi sampling dan distribusi sebelumnya berinteraksi untuk menghasilkan distribusi posterior.

  2. Namun ABC terutama dieksploitasi untuk alasan komputasi. Para ahli genetika populasi menemukan metode pada model berbasis pohon di mana kemungkinan sampel yang diamati tidak dapat dipecahkan. Skema MCMC (Augmentasi Data) yang tersedia dalam pengaturan seperti itu sangat tidak efisien dan begitu juga sampling penting, bahkan dengan parameter dimensi tunggal ... Pada intinya, ABC adalah pengganti metode Monte Carlo seperti MCMC atau PMC ketika itu tidak tersedia untuk semua tujuan praktis. Ketika tersedia, ABC muncul sebagai proksi yang dapat digunakan untuk mengkalibrasi mereka jika berjalan lebih cepat.

  3. Dalam perspektif yang lebih modern, saya pribadi menganggap ABC sebagai metode inferensi perkiraan daripada teknik komputasi. Dengan membangun model perkiraan, seseorang dapat menarik kesimpulan pada parameter yang diinginkan tanpa harus bergantung pada model yang tepat. Sementara beberapa tingkat validasi diperlukan dalam pengaturan ini, itu tidak kurang valid daripada melakukan rata-rata model atau non-parametrik. Faktanya, ABC dapat dilihat sebagai tipe khusus dari statistik Bayesian non-parametrik.

  4. Dapat juga ditunjukkan bahwa (berisik) ABC adalah pendekatan Bayesian yang terdefinisi dengan sempurna jika seseorang mengganti model dan data asli dengan yang berisik. Karena itu memungkinkan untuk semua kesimpulan Bayes yang bisa dipikirkan orang. Termasuk pengujian. Masukan kami untuk perdebatan tentang ABC dan pengujian hipotesis adalah bahwa model perkiraan yang mendasari ABC mungkin berakhir sebagai buruk dilengkapi untuk menilai relevansi dari suatu hipotesis yang diberikan data, tetapi tidak tentu , yang hanya juga karena sebagian besar aplikasi dari ABC dalam populasi genetika berkaitan dengan pilihan model.

  5. Dalam perspektif yang bahkan lebih baru, kita dapat melihat ABC sebagai versi Bayesian dari inferensi tidak langsung di mana parameter model statistik terkait dengan momen-momen statistik yang telah ditentukan sebelumnya. Jika statistik ini cukup (atau cukup dalam arti vernakular) untuk mengidentifikasi parameter-parameter ini, ABC dapat ditunjukkan untuk menyatu dengan nilai sebenarnya dari parameter dengan jumlah pengamatan.

Xi'an
sumber
2
Saya memeriksa jawaban ini tetapi ingin merekomendasikan membaca jawaban Bjorn pertama (+1) dan kemudian jawaban Xi'an.
Remi.b
12

P(x|θ)θdata yang disimulasikan paling sering (kurang-lebih) cocok dengan data yang diamati (dengan nilai yang diusulkan misalnya diambil secara acak dari sebelumnya). Untuk kasus-kasus sederhana, seperti variabel acak binomial tunggal dengan ukuran sampel yang tidak terlalu besar Anda bahkan dapat memerlukan pencocokan yang tepat dan dalam kasus-kasus itu, sama sekali tidak ada yang tidak dapat Anda lakukan dengan sampel posterior ini yang tidak bisa Anda lakukan dengan sampel MCMC standar. Untuk situasi yang lebih kompleks dengan kontinu (bahkan untuk hasil diskret multivarian) dan hasil multivarian yang mungkin membutuhkan kecocokan yang tepat tidak lagi layak.

Sebenarnya ada versi MCMC dari ABC, yang membahas masalah bahwa jika Anda memiliki prior yang tidak mirip dengan posterior (misalnya karena prior sangat tidak informatif) pengambilan sampel dengan menggambar dari prior sangat tidak efisien, karena Anda sangat jarang akan mendapatkan kecocokan dekat antara data yang diamati dan yang disimulasikan.

P(x|θ)P(x|θ)P(x|θ)tidak tersedia secara analitis. Tentu saja mungkin ada beberapa opsi lain yang mungkin dalam kasus seperti itu (misalnya INLA, perkiraan kuadratik untuk kemungkinan dll) yang mungkin lebih efisien / sukses untuk masalah tertentu. Di satu sisi, segala keterbatasan dalam apa yang dapat Anda lakukan dengan sampel posterior dari ABC hanya berasal dari hanya memerlukan kecocokan aproksimat antara data aktual dan data yang disimulasikan (jika Anda bisa memerlukan kecocokan yang tepat, tidak akan ada masalah sama sekali). Ada beberapa makalah pengantar yang baik misalnya makalah ini oleh Marin et al. (2012) . Setidaknya salah satu penulis bersama (@ Xi'an) adalah kontributor aktif di sini dan saya juga akan senang dengan pemikirannya - Saya percaya dia mungkin bisa mengatakan lebih banyak tentang topik pengujian.

Björn
sumber
Saya harap saya berhasil memperbaiki tautan sekarang (sekarang berfungsi untuk saya).
Björn
1
(+1) poin yang sangat bagus!
Xi'an
1
"Ketika P (x | θ) tersedia secara analitis, saya berasumsi bahwa hampir selalu lebih disukai untuk menggunakan MCMC standar." Hampir, tetapi tidak selalu. Bayangkan seseorang memiliki ukuran sampel yang sangat besar (10 ^ 9) dikombinasikan dengan banyak parameter. Menjadi sangat mahal untuk menghitung ulang kemungkinan untuk setiap set parameter. Dengan ABC, ada banyak trik yang bisa digunakan untuk mempercepat ini. Dengan MCMC, tidak terlalu banyak.
z_dood
2
@z_dood: ketika ada terlalu banyak pengamatan untuk benar-benar menghitung kemungkinan, seperti, misalnya, ketika mereka perlu disimpan di komputer yang berbeda, menjadi diperdebatkan bahwa fungsi kemungkinan tidak tersedia secara analitik.
Xi'an