Belirli bir parametrede çıkarsama yapmak için MCMC numuneleri alırken , hedeflenmesi gereken minimum etkili örnek sayısı için iyi kılavuzlar nelerdir?
Ve bu tavsiye, model az çok karmaşık hale geldikçe değişir mi?
Belirli bir parametrede çıkarsama yapmak için MCMC numuneleri alırken , hedeflenmesi gereken minimum etkili örnek sayısı için iyi kılavuzlar nelerdir?
Ve bu tavsiye, model az çok karmaşık hale geldikçe değişir mi?
Yanıtlar:
Sorduğunuz soru "yakınsama teşhisi" nden farklıdır. Diyelim ki tüm yakınsama teşhislerini çalıştırdınız (favorilerinizi seçin) ve şimdi arkadan örneklemeye başlamaya hazırsınız.
Etkili örnek boyutu (ESS) açısından iki seçenek vardır, tek değişkenli bir ESS veya çok değişkenli bir ESS seçebilirsiniz. Tek değişkenli bir ESS, her parametre için ayrı ayrı etkili bir örnek boyutu sağlayacaktır ve konservatif yöntemler, en küçük tahmini seçeceğinizi belirtir. Bu yöntem , bileşenler arasındaki tüm çapraz korelasyonları yoksayar . Muhtemelen çoğu insan bir süredir kullanıyor.
Son zamanlarda, ESS'nin çok değişkenli bir tanımı getirildi. Çok değişkenli ESS, tahmin etmek istediğiniz miktarlar için etkili örnek boyutu için bir sayı döndürür; ve bunu süreçteki tüm çapraz korelasyonları hesaba katarak yapar. Şahsen, çok değişkenli ESS'yi tercih ederim. Posterior dağılımın vektörü ile ilgilendiğinizi varsayalım . MESS şu şekilde tanımlanır BurayamESS = n ( | Λ |
mESS tahmin etmek için örnek kovaryans matrisi kullanılarak tahmin edilebilir ve toplu araçlar kovaryans matrisi tahmin etmek . Bu, mcmcse paketindeki fonksiyonda kodlanmıştır .ΣmultiESS
Bu son makale, gerekli olan etkili örnek sayısının teorik olarak geçerli bir alt sınırını sunmaktadır. Simülasyondan önce karar vermeniz gerekir
Bu üç miktarla, kaç tane etkili örneğe ihtiyacınız olduğunu bileceksiniz. Kağıt, simülasyonu ilk kez
burada gama işlevidir. Bu alt sınır , R paket mcmcse kullanılarak hesaplanabilir .minESS
Şimdi diyelim ki posteriorda parametreniz var ve tahmininize güven istiyorsunuz ve Monte Carlo hatasının posterior hatanın % 5 ( ) olmasını istiyorsanız, ihtiyacınız olacak% 20 95 ϵ = .05
> minESS(p = 20, alpha = .05, eps = .05)
[1] 8716
Bu, herhangi bir sorun için geçerlidir (düzenlilik koşulları altında). Bu yöntemin problemden probleme uyum sağlama yolu, Markov zincirlerinin yavaşça karıştırılmasının bu alt sınıra ulaşması daha uzun sürmesidir, çünkü mESS daha küçük olacaktır. Şimdi multiESS
Markov zincirinizin bu sınıra ulaşıp ulaşmadığını kullanarak birkaç kez kontrol edebilirsiniz ; değilse daha fazla örnek alın.
multiESS
MATLAB gibi diğer diller için kodlanıp kodlanmadığını biliyor musunuz ? (veya yeniden uygulamak zor olur mu?)
Yakınsama birkaç şeye bağlıdır: parametre sayısı, modelin kendisi, örnekleme algoritması, veriler ...
Herhangi bir genel kuraldan kaçınmayı ve her bir belirli örnekteki uygun yanma ve incelme sayısını tespit etmek için birkaç yakınsama tanılama aracı kullanmanızı öneririm. Ayrıca bakınız http://www.johnmyleswhite.com/notebook/2010/08/29/mcmc-diagnostics-in-r-with-the-coda-package/
, http://users.stat.umn.edu/~geyer/mcmc/diag.html
.