Baik bayesglm()
(dalam paket arm R) dan berbagai fungsi dalam paket MCMCpack ditujukan untuk melakukan estimasi Bayesian dari model linier umum, tetapi saya tidak yakin mereka benar-benar menghitung hal yang sama. Fungsi MCMCpack menggunakan rantai Markov Monte Carlo untuk mendapatkan sampel (tergantung) dari posterior bersama untuk parameter model. bayesglm()
, di sisi lain, menghasilkan. Saya tidak yakin apa.
Sepertinya bayesglm()
menghasilkan estimasi titik, yang akan membuatnya menjadi estimasi MAP (maksimum a posteriori) daripada estimasi Bayesian penuh, tetapi ada sim()
fungsi yang sepertinya dapat digunakan untuk mendapatkan gambar posterior.
Adakah yang bisa menjelaskan perbedaan penggunaan yang dimaksudkan untuk keduanya? Dapatkah bayesglm() + sim()
menghasilkan gambar posterior sejati, atau apakah itu semacam perkiraan?
sumber
Jawaban:
Untuk melihat kode sumber lengkap, Anda perlu mengunduh
arm
sumber paket dari CRAN (ini adalah tarball). Pandangan cepat padasim
fungsi tersebut membuat saya berpikir bahwaarm
ini adalah metode perkiraan Bayes karena tampaknya mengasumsikan normalitas multivariat dari perkiraan kemungkinan maksimum. Dalam model dengan kemungkinan log sangat non-kuadrat, seperti model logistik biner, ini mungkin tidak cukup akurat. Saya ingin mendapat komentar dari orang lain tentang ini. Saya telah menggunakanMCMCpack
dengan sukses; itu memberikan solusi Bayesian yang tepat untuk banyak model, mengingat cukup menarik posterior dan konvergensi MCMC.sumber