MCMC için performans kriterleri


14

Birkaç farklı algoritmanın performansını bir dizi test yoğunluğu üzerinde karşılaştıran MCMC yöntemlerinin büyük ölçekli çalışmaları var mı? Rios ve Sahinidis'in makalesine (2013) eşdeğer bir şey düşünüyorum , bu da çeşitli test fonksiyonları sınıflarında çok sayıda türev içermeyen kara kutu optimize edicisinin kapsamlı bir karşılaştırması.

MCMC için performans, örneğin yoğunluk değerlendirmesi başına etkili örnek sayısı (ESS) veya başka bir uygun metrik olarak tahmin edilebilir.

Birkaç yorum:

  • Performansın hedef pdf'nin ayrıntılarına bağlı olacağını takdir ediyorum , ancak benzer (muhtemelen aynı olmayan) bir argüman optimizasyon için geçerlidir ve yine de kıyaslama optimizasyonu ile ilgili çok sayıda kıyaslama işlevi, paketi, yarışma, kağıt vb. algoritmaları.

  • Ayrıca, MCMC'nin kullanıcıdan çok daha fazla bakım ve ayarlama yapılması gerektiğinden optimizasyondan farklı olduğu doğrudur. Bununla birlikte, artık çok az ayarlama gerektiren veya hiç ayarlama gerektirmeyen birkaç MCMC yöntemi vardır: yanma fazında, örnekleme sırasında veya çoklu etkileşimli zincirler geliştiren ve kullanan çok durumlu ( topluluk da denir ) yöntemler ( Emcee gibi ) örnekleme için diğer zincirlerden bilgi.

  • Özellikle standart ve çok durumlu (aka topluluk) yöntemler arasındaki karşılaştırmayla ilgileniyorum. Çok durumlu tanımı için MacKay'ın kitabının 30.6. bölümüne bakınız :

Çok durumlu bir yöntemde, birden fazla parametre vektörü korunur; Metropolis ve Gibbs gibi hareketler altında bireysel olarak gelişirler; vektörler arasında etkileşimler de vardır.x


Güncelleme

  • Çok durumlu aka topluluk yöntemler üzerinde ilginç bir gezi için, bu bkz blog yazısı Gelman blogunda Bob Carpenter tarafından ve benim yorum bu CV yazı atıfta.

Yanıtlar:


5

Bazı çevrimiçi aramalardan sonra, optimizasyon literatüründe bulabileceklerine benzer şekilde, yerleşik MCMC yöntemlerinin kapsamlı bir ölçütünün olmadığı izlenimi edindim. (Burada yanlış yaptığım için mutlu olurum.)

Uygulanan bir alandaki belirli sorunlar üzerinde birkaç MCMC yönteminin karşılaştırmasını bulmak kolaydır. Bu bilgiyi bir araya toplayabilirsek bu iyi olur - ancak, bu tür kıyaslamaların kalitesi genellikle yetersizdir (örneğin, raporlanan metriklerdeki eksiklik veya kötü tasarım seçeneklerinden dolayı).

Aşağıda bunları bulduğum için değerli katkılar olduğuna inandığım şeyleri göndereceğim:

  • Nishihara, Murray ve Adams, Genelleştirilmiş Eliptik Dilim Örneklemeli Paralel MCMC , JMLR (2014). Yazarlar yeni bir çok durumlu yöntem olan GESS'i önermekte ve 7 test fonksiyonunda 6 diğer tek durumlu ve çok durumlu yöntemle bir karşılaştırma yapmaktadır. Performansı saniyede ve fonksiyon değerlendirmesi başına ESS (Etkili Örnek Boyutu) olarak değerlendirir.

  • SamplerCompare , MCMC algoritmalarını kıyaslama amacına sahip bir R paketidir - tam olarak orijinal sorumda ne soruyordum. Ne yazık ki, paket sadece birkaç test işlevi içeriyor; ilişikteki makalede hiçbir gerçek kriter rapor edilmemiştir (sadece küçük bir örnek); ve hiçbir takip yapılmadığı anlaşılıyor.

Thompson, Madeleine B. "SamplerCompare'e Giriş." İstatistiksel Yazılımlar Dergisi 43.12 (2011): 1-10 ( bağlantı ).

  • Çok durumlu aka topluluk yöntemler üzerinde ilginç bir gezi için, bu bkz blog yazısı Gelman blogunda Bob Carpenter tarafından ve benim yorum bu CV yazı atıfta.

İkinci bağlantınız öldü - onu çalışan bir bağlantınızla değiştirebilir misiniz?
Tim

Aralık 2017 tarihli bu makaleye bir göz atmak isteyebilirsiniz: Ryan Turner ve Brady Neal, Örnekleyiciniz gerçekten ne kadar iyi çalışıyor? Tam olarak bu MCMC algoritmaları için iyi bir kıyaslama ortaya koyma sorununa düzgün bir çözüm sağlıyor gibi görünüyor.
Carl

2

MCMC yöntemleri için belirlenmiş kapsamlı bir ölçüt bulunmadığına ilişkin değerlendirmenize katılıyorum. Bunun nedeni, her MCMC örnekleyicinin artıları ve eksileri olması ve soruna son derece özgü olmasıdır.

Tipik bir Bayesci modelleme ayarında, veriler farklı olduğunda aynı örnekleyiciyi farklı karıştırma hızlarıyla çalıştırabilirsiniz. Gelecekte çeşitli MCMC örnekleyicileri hakkında kapsamlı bir karşılaştırma çalışması çıkarsa, sonuçların gösterilen örneklerin dışında uygulanabileceğine güvenmeyeceğimi söyleyebilirim.

Örnekleme kalitesini değerlendirmek için ESS kullanımı ile ilgili olarak, ESS'nin numuneden tahmin edilecek miktara bağlı olduğunu belirtmek gerekir. Numunenin ortalamasını bulmak istiyorsanız, elde edilen ESS, 25. miktarını tahmin etmek istediğinizden farklı olacaktır. İlgilenilen miktar sabitse, ESS'nin örnekleyicileri karşılaştırmanın makul bir yolu olduğunu söyleyerek. Belki daha iyi bir fikir, birim zaman başına ESS'dir.

ESS ile ilgili bir kusur, çok değişkenli tahmin problemleri için, ESS'nin, tahmin sürecindeki tüm çapraz korelasyonları göz ardı ederek her bileşen için ayrı ayrı etkili bir örnek boyutu döndürmesidir. Olarak , bu son kağıt, bir çok değişkenli ESS önerilmiştir ve uygulanan Rpaket mcmcsefonksiyonu ile multiESS. Bu yöntemin codapaketin ESS'si ile nasıl karşılaştırılacağı açık değildir , ancak başlangıçta tek değişkenli ESS yöntemlerinden daha makul görünmektedir.


2
(+1) Cevabınız için teşekkürler. Bazı hususlarınıza katılıyorum, ancak yine de böyle bir kıyaslamadan bazı bilgilerin kazanılabileceğini düşünüyorum. Gelecekteki seçimlere rehberlik etmek için bu tür kıyaslamaların sonuçlarını nasıl kullanacağınız, ancak bazı kanıtlar kanıt olmamasından daha iyidir. ESS hakkında iyi noktalar. Çok durumlu olarak, çok değişkenli değil, çok durumlu (veya isterseniz çok zincirli) kastediyorum - orijinal sorumdaki MacKay'ın kitabındaki alıntıya bakın.
lacerbi

2
Genel olarak, bazı örnekleyicilerin multimodal dağılımlar (MH, Gibbs) için kötü performans gösterdiği ve bazılarının dışbükey olmayan destek (Hamiltonian MC) için kötü performans gösterdiği bilinmektedir. Öte yandan, yüksek boyutlu problemler için Hamiltonian MC iyi çalışır ve çok modlu dağılımlar için simüle edilmiş tavlama vb. İyidir. Herhangi bir kıyaslama yapmak için, sonuçların genel olarak yorumlanabilmesi için farklı geniş hedef dağılım sınıflarının (alt-üstel, log içbükey vb.) Tanımlanması gerekebilir.
Greenparker

1
Evet, bir algoritma sınıfı için bir ölçüt oluşturmanın bütün mesele bu. Örneğin bakınız , bu küresel optimizasyon için. Açıkçası, MCMC için bir kıyaslama sadece optimizasyon için mevcut olanları ödünç alamaz; bahsettiğiniz gibi MCMC sorunlarına özgü, ortak ve ilgi çekici hedef yoğunlukların özelliklerine odaklanmaya ihtiyaç vardır.
lacerbi
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.