Neden bazı durumlarda Hamilton dinamikleri MCMC'de rastgele yürüyüş önerisinden daha iyidir?


10

Hamilton dinamikleri bazı durumlarda Metropolis algoritmasında rastgele yürüyüşten daha iyi performans gösterir. Birisi sebebini çok fazla matematik olmadan basit kelimelerle açıklayabilir mi?


1
@JuhoKokkala, genellikle, yüksek boyut probleminde, rastgele yürüyüş önerisinin iyi bir performansı yoktur, ancak hemtoniyal dinamikler vardır.
Fly_back

@JuhoKokkala HMC hakkındaki anlayışım, hamiltonian dinamik sistemde düşük enerjili H numuneleri alıyoruz, o zaman hamilton dinamikleri tarafından önerilen numunenin her zaman kabul edilebileceği bu sınavı ortaya koyuyorum.
Fly_back

3
Kasım ayı başında Andrew Gelman, Michael Betancourt tarafından HMC'nin neden rastgele MCMC'den daha iyi olduğuna dair "güzel yeni bir kağıt" hakkında bir not yayınladı. Gelman'ın ana noktası HMC'nin rakip yöntemlerden en az iki kat daha hızlı olmasıdır. andrewgelman.com/2016/11/03/…
Mike Hunter

2
Bu soru biraz belirsiz, ancak aşağıda verilen cevaplar göz önüne alındığında, cevaplanmanın çok belirsiz olduğunu düşünmüyorum. Açık bırakmak için oy veriyorum.
gung - Monica'yı eski durumuna getirin

Yanıtlar:


14

Öncelikle, HMC (Hamiltonian Monte Carlo) için kabul oranının her zaman Metropolis algoritmasından daha yüksek olduğuna inanmadığımı belirteyim. @JuhoKokkala tarafından belirtildiği gibi, Metropolis'in kabul oranı ayarlanabilir ve yüksek kabul oranı, algoritmanızın posterior dağılımı araştırmak için iyi bir iş yaptığı anlamına gelmez. Yalnızca son derece dar bir teklif dağıtımı kullanırsanız (örneğin çok küçük bir ile ), son derece yüksek bir kabul oranı elde edersiniz, ancak tam posterior dağılımı keşfetmeden temelde hep aynı yerde kalmanız.T(q|q)=N(q,σI)σ

Gerçekten sorduğunuzu düşündüğüm (ve eğer haklıysam, sorunuzu buna göre düzenleyin) Hamiltonian Monte Carlo'nun neden (bazı durumlarda) Metropolis'ten daha iyi bir performansa sahip olduğu. "Daha iyi performans" ile, birçok uygulama için, HMC tarafından üretilen bir zinciri Metropolis algoritması tarafından üretilen eşit uzunlukta (aynı sayıda numunesi ) zincirle karşılaştırırsanız, HMC zincirinin, Metropolis zinciri, negatif log olabilirliği (veya benzer bir değer, ancak daha az iterasyonda) için daha düşük bir değer bulur, etkili örnek boyutu daha küçüktür, numunelerin otokorelasyonu gecikme ile daha hızlı bozulur, vb.N

Matematiksel ayrıntılara fazla girmeden bunun neden olduğu hakkında bir fikir vermeye çalışacağım. Bu nedenle, her şeyden önce, MCMC algoritmalarının, bir fonksiyonun (veya daha fazla fonksiyonun) hedef yoğunluğuna göre ) daha yüksek boyutlu integrallerini (beklentilerini) hesaplamak için yararlı olduğunu hatırlayın , özellikle de hedef yoğunluktan doğrudan örneklemenin bir yolu:fπ(q)

Eπ[f]=Qf(q)π(q)dq1dqd

burada , ve bağlı olduğu parametrelerinin vektörü ve parametre boşluğudur. Şimdi, yüksek boyutlarda, yukarıdaki integrale en fazla katkıda bulunan parametre boşluğunun hacmi modunun komşusu değildir (yani, MLE tahmini etrafında dar bir hacim değildir ), çünkü burada büyük, ancak hacim çok küçük.qdfπQπ(q)qπ(q)

Örneğin, koordinatlarının sıfır ortalaması ve birim varyansı olan bağımsız Gauss değişkenleri olduğu zaman, noktasının kaynağından ortalama uzaklığını hesaplamak istediğinizi varsayalım . Sonra yukarıdaki integral olur:qRd

Eπ[X]=Q||q||(2π)d/2exp(||q||2/2)dq1dqd

Şimdi, hedef yoğunluğunun maksimum 0 olduğu açıktır. Ancak, değiştirerek küresel koordinatlara ve, integralin orantılı hale geldiğini görebilirsiniz . Bu fonksiyonun başlangıç ​​noktasından belirli bir mesafede maksimum olduğu açıktır. içindeki integralin değerine en fazla katkıda bulunan bölgeye tipik küme denir ve bu integral için tipik küme, yarıçapının küresel bir kabuğudur .π(q)=(2π)d/2exp(||q||2/2)r=||q||rd1exp(r2/2)drQRd

Şimdi, ideal koşullarda, MCMC tarafından üretilen Markov zincirinin önce tipik sette bir noktaya yakınlaştığını, daha sonra tüm seti keşfetmeye başladığını ve sonunda setin detaylarını keşfetmeye devam ettiğini gösterebiliriz. Bunu yaparken, MCMC beklentisi, artan adım sayısı ile azalan önyargı ve varyansla birlikte, gittikçe daha doğru hale gelir.

Bununla birlikte, tipik kümenin geometrisi karmaşık olduğunda (örneğin, iki boyutlu bir uç varsa), o zaman standart rastgele yürüyüş Metropolis algoritması, kümenin "patolojik" ayrıntılarını keşfetmekte çok zorlanır. Bu bölgeleri keşfetmeden rastgele "etrafına" atlama eğilimindedir. Uygulamada bu, integralin tahmini değerinin doğru değer etrafında salınım eğilimi gösterdiği ve zincirin sonlu sayıda adımda kesilmesinin kötü önyargılı bir tahminle sonuçlanacağı anlamına gelir.

Hamiltonian Monte Carlo, sadece hedef olanla ilgili olmayan bir teklif dağıtımı kullanmak yerine, yeni bir numune noktası önerisini bilgilendirmek için hedef dağılımında yer alan bilgileri (gradyanında) kullanarak bu sorunun üstesinden gelmeye çalışır. Bu yüzden HMC'nin parametre alanını daha verimli bir şekilde keşfetmek için hedef dağıtımın türevlerini kullandığını söylüyoruz. Bununla birlikte, hedef dağılımın gradyanı tek başına teklif adımını bilgilendirmek için yeterli değildir . Rasgele bir noktanın kaynağından ortalama uzaklığı örneğinde olduğu gibiRd, hedef dağılımın gradyanı, kendi başına, bizi dağıtım moduna doğru yönlendirir, ancak modun etrafındaki bölge mutlaka yukarıdaki integrale en fazla katkıda bulunan bölge değildir, yani, tipik küme değildir.

Doğru yönü elde etmek için HMC'de momentum değişkenleri adı verilen yardımcı değişkenler kümesi sunuyoruz . Fiziksel bir analog burada yardımcı olabilir. Bir gezegenin etrafında dönen bir uydu, sadece momentumu "doğru" değere sahipse kararlı bir yörüngede kalacaktır, aksi takdirde açık alana sürüklenecek veya yerçekimi cazibesi ile gezegene doğru sürüklenecektir (burada rol oynamaktadır) moda doğru "çeken" hedef yoğunluğun gradyanı). Aynı şekilde, momentum parametreleri yeni örnekleri kuyruklara veya moda doğru sürüklemektense, tipik set içinde tutma rolüne sahiptir.

Bu, Michael Betancourt'un Hamiltonian Monte Carlo'yu aşırı matematik olmadan açıklama hakkında çok ilginç bir makalesinin küçük bir özetidir. Burada çok daha ayrıntılı olarak bulunan kağıdı bulabilirsiniz .

Kağıdın yeterince ayrıntılı bir şekilde ele almadığı bir şey olan IMO, HMC'nin rastgele yürüyüş Metropolis'ten ne zaman ve neden daha kötü yapabileceğidir. Bu (sınırlı deneyimimde) sık sık gerçekleşmez, ancak olabilir. Sonuçta, yüksek boyutlu parametre alanında yolunuzu bulmanıza yardımcı olan degradeleri tanıttınız, ancak sorunun boyutunu da iki katına çıkardınız. Teorik olarak, boyutsallıktaki artıştan kaynaklanan yavaşlamanın gradyanların sömürüsü tarafından verilen ivmenin üstesinden geldiği ortaya çıkabilir. Ayrıca (ve bu kağıtla kaplıdır), tipik setin yüksek eğrili bölgelere sahip olması durumunda, HMC "aşabilir", yani, beklentilere hiçbir katkıda bulunmayan kuyruklarda çok uzaktaki işe yaramaz noktaları örneklemeye başlayabilir. Ancak, bu, pratikte HMC'yi uygulamak için kullanılan sezgisel entegratörün kararsızlığına neden olur. Böylece, bu tür bir problem kolayca teşhis edilir.


1
Cevabımı yazarken @DJohnson'un Betancourt gazetesinden alıntı yaptığını görüyorum. Bununla birlikte, cevap yine de makalede neler bulabileceğinizin bir özeti olarak yararlı olabilir.
DeltaIV

3

@JuhoKokkala'nın yorumlarda belirttiği gibi, yüksek kabul oranı mutlaka iyi bir performans vermez. Metropolis Hastings'in kabul oranı teklif dağılımı daraltılarak artırılabilir. Ancak bu, daha küçük adımların atılmasına ve hedef dağılımın araştırılmasının daha uzun sürmesine neden olacaktır. Uygulamada, adım boyutu ve kabul oranı arasında bir denge vardır ve iyi performans elde etmek için uygun bir denge gerekir.

Hamiltonian Monte Carlo, Metropolis Hastings'ten daha iyi performans gösterme eğilimindedir, çünkü daha yüksek kabul olasılığı ile daha uzak noktalara ulaşabilir. Öyleyse soru şu: HMC neden daha uzak noktalar için MH'den daha yüksek kabul olasılığına sahip olma eğilimindedir ?

MH uzak noktalara ulaşmakta zorlanıyor çünkü teklifleri hedef dağıtım hakkında bilgi kullanılmadan yapılıyor. Teklif dağılımı tipik olarak izotropiktir (örneğin simetrik bir Gaussian). Böylece, her noktada, algoritma rastgele bir mesafeyi rastgele bir yönde hareket ettirmeye çalışır. Mesafe, hedef dağılımın bu yönde ne kadar hızlı değiştiğine göre küçükse, mevcut ve yeni noktalardaki yoğunluğun benzer olması ihtimali en az makul bir kabul şansı verir. Daha büyük mesafelerde, hedef dağılım mevcut noktaya göre biraz değişmiş olabilir. Bu nedenle, benzer veya (umarım) daha yüksek yoğunluğa sahip rastgele bir nokta bulma şansı, özellikle boyutsallık arttıkça zayıf olabilir. Örneğin, mevcut nokta dar bir sırtta bulunuyorsa,

Aksine, HMC hedef dağılımın yapısından yararlanır. Öneri mekanizması, Neal (2012) 'de açıklandığı gibi fiziksel bir analoji kullanarak düşünülebilir. Tepelik, sürtünmesiz bir yüzeyde kayan bir disk düşünün. Perdenin konumu mevcut noktayı temsil eder ve yüzeyin yüksekliği hedef dağılımın negatif günlüğünü temsil eder. Yeni bir önerilen nokta elde etmek için, diske rastgele yön ve büyüklükte bir momentum verilir ve daha sonra dinamiği yüzey üzerinde kayarken simüle edilir. Disk, yokuş aşağı yönde hızlanır ve yokuş yukarı yönde yavaşlar (belki de tekrar durup tekrar yokuş aşağı kayar). Bir vadinin duvarı boyunca yanlara doğru hareket eden yörüngeler aşağıya doğru kıvrılır. Böylece, peyzajın kendisi yörüngeyi etkiler ve onu daha yüksek olasılık bölgelerine doğru çeker. Momentum, diskin küçük tepeler üzerinde tepesine izin verebilir ve ayrıca küçük havzaları aşabilir. Birkaç adımdan sonra diskin konumu, standart Metropolis kuralı kullanılarak kabul edilen veya reddedilen yeni önerilen noktayı verir. Hedef dağılımı (ve degradesini) kullanmak HMC'nin yüksek kabul oranlarıyla uzak noktalara ulaşmasını sağlayan şeydir.

İşte iyi bir inceleme:

Neal (2012) . Hamilton dinamiklerini kullanan MCMC.


0

Gevşek bir cevap olarak (aradığınız şey gibi görünüyor) Hamiltonian yöntemleri, günlük olasılık olasılığının türevini dikkate alırken, standart MH algoritması bunu dikkate almaz.

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.