Kod MCMC skoku w tył (Matlab lub R)


14

Czy ktoś wie o dobrze napisanym kodzie (w Matlabie lub R) dla MCMC z odwracalnym skokiem? Najlepiej jest to prosta aplikacja demonstracyjna uzupełniająca dokumenty na ten temat, która byłaby przydatna w zrozumieniu procesu.


Dyskutowano o dodaniu odwracalnego skoku MCMC do OpenBUGS na stronie 288 książki BŁĘDY, a WinBUGS ma, jak sądzę, moduł skoku. Czy ktoś słyszał o podobnym rozwoju JAGS? Czy jest jakiś sposób na napisanie kodu JAGS, aby uzyskać efekt robienia różnych wymiarów? Czy to po prostu kwestia zdefiniowania wymiarów większych niż to konieczne?
Jan Galkowski

Odpowiedzi:


12

RJMCMC został wprowadzony przez Petera Greena w artykule z 1995 roku, który jest cytatem klasycznym. Napisał program Fortran o nazwie AutoRJ dla automatycznego RJMCMC; jego strona w tym linku do programu David Hastie's C AutoMix . Lista swobodnie dostępnych programów dla różnych algorytmów RJMCMC znajduje się w tabeli 1 artykułu z 2005 roku autorstwa Scotta Sissona . Wyszukiwarka Google znajduje również pseudokod z grupy na Uniwersytecie w Glasgow, który może być pomocny w zrozumieniu zasad, jeśli chcesz go zaprogramować samodzielnie.


7

Książka Bayesian Analysis for Population Ecology autorstwa King i in. opisuje RJMCMC w kontekście ekologii populacji. Znalazłem tam bardzo jasny opis, który zawiera kod R w dodatku.

Książka ma również powiązaną stronę internetową , ale części kodu znalezionego w książce nie ma w witrynie.


podają kod WinBUGS dla RJMCMC? Więc WinBUGS jest zdolny do RJMCMC?
Ciekawy

1
@Tomas Ktoś edytował moją odpowiedź i zmienił R na WinBUGS. Z tego, co pamiętam, książka zawiera kod R.
csgillespie

Dziękuję Ci. (+1) Btw, czy uważasz, że RJMCMC jest przydatne w ekologii populacji? Nie znalazłem jeszcze żadnego przykładu, w którym mógłby się przydać. Zawsze mogę korzystać z rozszerzania danych, na przykład ze standardowym MCMC, i robi to za mnie. Pamiętaj, że nie mam tej książki ... czy to dobrze?
Ciekawy

@Tomas Książka używa RJMCMC do wyboru modelu. Uważam, że opis jest całkiem fajny. Musiałem jednak używać RJMCMC w gniewie.
csgillespie

"w złości"?? Co masz na myśli?
Ciekawy

1

Wystarczy dodać jeden szczegół do odpowiedzi @ onestop: Uważam, że oprogramowanie C wydane przez Oliviera Cappé (CT / RJ MCMC) jest bardzo pomocne w zrozumieniu algorytmu MCMC skoku odwracalnego (w szczególności jak zaprojektować prawdopodobieństwo narodzin-śmierci i rozszczepienia- scal ruchy). Link do kodu źródłowego to: http://perso.telecom-paristech.fr/~cappe/Code/CTRJ_mix/About/


1

Jailin Ai daje całkiem niezłą prezentację RJ MCMC razem (choć bardzo ściśle odpowiada oryginalnej pracy Greena) z towarzyszącym kodem R w ramach pracy magisterskiej w Leeds. Daje także dokładny przykład problemów związanych ze zmianą punktu, które są również zawarte w pracy Greena z 1995 roku.

Znajdź pracę dyplomową i kod tutaj:

http://www1.maths.leeds.ac.uk/~voss/projects/2011-RJMCMC/


0

Nando de Freitas udostępnia dema dotyczące wykorzystania algorytmu MCMC z odwracalnym skokiem do szacowania parametrów sieci neuronowej. Ten model traktuje liczbę neuronów, parametry modelu, parametry regularyzacji i parametry hałasu jako zmienne losowe, które należy oszacować.

Kod i opis są dostępne tutaj: http://www.cs.ubc.ca/~nando/software.html

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.