Saya ingin tahu paket statistik perangkat lunak mana yang Anda rekomendasikan untuk melakukan Bayesian Inference.
Sebagai contoh, saya tahu bahwa Anda dapat menjalankan openBUGS atau winBUGS sebagai standalones atau Anda juga dapat memanggil mereka dari R. Tetapi R juga memiliki beberapa paket sendiri (MCMCPack, BACCO) yang dapat melakukan analisis bayesian.
Adakah yang punya saran mengenai paket statistik bayesian mana dalam R yang terbaik atau tentang alternatif lain (Matlab atau Mathematica?)
Fitur utama yang ingin saya bandingkan adalah kinerja, kemudahan penggunaan, stabilitas dan fleksibilitas
R<(Matlab,Python)<C
dalam hal efisiensi (lihat misalnya tautan ).Jawaban:
Varian BUGS eksternal adalah standar. Bekerja di dalam R mungkin mudah, tetapi saya akan terkejut jika paket-paket itu matang dan berkinerja juga. Menggunakan perpustakaan yang menjembatani R dan program eksternal biasanya merupakan kompromi yang paling umum.
Saya menggunakan kombinasi jags / rjags (jags mungkin secara kasar dianggap sebagai dialek bug). Saya belum pernah mencoba varian bug lainnya, tetapi laporan yang saya dengar adalah bahwa kinerja jags dan kemampuannya untuk menangani masalah numerik sedikit lebih baik daripada varian bug lainnya. Saya menemukan jags mudah digunakan, tetapi tentu saja, Anda perlu pengetahuan tentang analisis data bayesian untuk mengetahui cara menggunakannya.
sumber
Dalam 3 varian BUGS (openBUGS / winBUGS, jags) jags tampaknya menjadi yang paling menjanjikan untuk pengembangan fitur di masa depan, dan openBUGS / winBUGS tampaknya merupakan proyek mati. Namun, jags masih kekurangan beberapa basa-basi di openBUGS / winBUGS (lihat juga di sini ). Di sisi lain, jags telah menghapus beberapa batasan yang ada di WinBUGS, misalnya:
Berita baiknya adalah bahwa dengan sebagian besar model, Anda dapat menjalankannya di semua 3 alat hanya dengan sedikit perubahan, sehingga Anda dapat beralih ke alat lain nanti tanpa banyak masalah (itulah yang saya lakukan).
Namun, untuk beberapa alasan (misalnya kurangnya paralelisme dan sifat penafsir) , tidak benar bahwa varian BUGS ini adalah cara tercepat untuk melakukan analisis bayesian! Padahal, justru sebaliknya. Proyek BUGS baik untuk menguji dan mengembangkan model rumit pada dataset kecil . Setelah Anda memiliki model yang dikembangkan, dan perlu menjalankannya berulang kali pada dataset besar, lebih efisien untuk menggunakan alat yang berbeda.
Misalnya kombo CppBugs / rcpp dikatakan 5-10x lebih cepat dari varian BUGS. Prinsipnya adalah pada dasarnya Anda mengkompilasi model Anda ke dalam program C ++, yang berjalan lebih cepat. Lihat juga blog Dirk Eddelbuettel untuk uji Rcpp - terlihat sangat cepat. Anda juga bisa bermain dengan paralelisme.
Anda juga dapat melakukan perhitungan paralel di WinBUGS menggunakan bugsparallel .
sumber
Stan
kemungkinan akan menjadi yang software untuk model Bayesian.