OpenBugs vs. JAGS

41

Za chwilę wypróbuję środowisko w stylu BUGS do szacowania modeli bayesowskich. Czy są jakieś ważne zalety, które należy wziąć pod uwagę, wybierając pomiędzy OpenBugs lub JAGS? Czy jedna może zastąpić drugą w dającej się przewidzieć przyszłości?

Będę używać wybranego Gibbsa Samplera z R. Nie mam jeszcze konkretnej aplikacji, ale raczej decyduję, którą zainstalować i nauczyć się.

DanB
źródło
3
podobne pytanie: stats.stackexchange.com/q/33315/5509
Curious

Odpowiedzi:

34

BŁĘDY / OpenBugs ma osobliwy system kompilacji, który utrudniał kompilację kodu w niektórych systemach - takich jak Linux (i IIRC OS X), gdzie ludzie musieli uciekać się do emulacji Windows itp.

Z drugiej strony Jags to zupełnie nowy projekt napisany przy użyciu standardowych narzędzi GNU, a zatem przenośny w prawie dowolnym miejscu - a zatem przydatny wszędzie.

Krótko mówiąc, jeśli twój system to Windows, masz wybór i potencjalny koszt utknięcia w Bugs, jeśli kiedykolwiek się przeprowadzisz. Jeśli nie korzystasz z systemu Windows, prawdopodobnie Jags będzie lepszym wyborem.

Dirk Eddelbuettel
źródło
6
W systemie Linux emulacja okna nie jest konieczna, można bezpośrednio korzystać z biblioteki współużytkowanej. Tylko GUI nie działa w ten sposób, ale to nie powinno stanowić problemu dla DanB jak chcą powołać go od R.
GaBorgulya
1
@GaBorgulya Pomimo tego, gdybym wybierał między dwoma narzędziami, wybrałbym narzędzie, które w pełni działało na moim wybranym systemie.
Fomite
1
Obecnie pakiet BRugs nie jest obsługiwany w 64-bitowym systemie Linux, jak stwierdzono w dokumentacji, i może to powodować problemy, takie jak ten, w obliczu którego nie udało mi się skompilować C, próbując dowiedzieć się, jak używać plot.coda z Dane wyjściowe mcmc.list z rjags w dwóch pytaniach na tej stronie i SO, które pozostają bez odpowiedzi.
David LeBauer,
13

Dla tych, którzy znajdą to pytanie na później: teraz jest też Stan . Stan może pewnego dnia zastąpić OpenBUGS i JAGS, ale nie obsługuje jeszcze wszystkich analiz przeprowadzanych przez te inne pakiety.

Jack Tanner
źródło
4
Prawie rok później pomyślałem, że skomentuję to. Deweloperzy wydają się oddani, a rzeczy, które planują dodać do tego (wnioskowanie wariacyjne!), Wszystko to wskazuje na to, że Stan nieuchronnie zastępuje OpenBUGS i JAGS. To powiedziawszy, obecnie nie ufam i na razie będę go używać tylko wtedy, gdy JAGS nie jest opcją. Wydaje się, że wymaga to więcej ulepszeń, aby uzyskać sensowne wyniki w skomplikowanych problemach, niż mniej. Stan w ogóle nie używa próbkowania Gibbsa, a dla problemów, o których wiem, że Gibbs będzie działał, nie mogę usprawiedliwić jego użycia. Myślę jednak, że w przyszłości te problemy zostaną rozwiązane.
facet
1
@MattTagg Nie sądzę, aby moja ocena uległa zmianie, ale nie jestem ekspertem. Używałem go dużo i stałem się lepszy, ale nie nadążyłem za wszystkimi ich rozwojem. Istnieje kilka modeli, w których chciałbym móc miksować NUTS z prostymi aktualizacjami próbkowania Gibbs (połączenie JAGSi STANzasadniczo), ale wydaje się, że nie będzie to wkrótce na horyzoncie, STANchociaż na pewno jest to możliwe.
facet
1
fajnie, dobrze wiedzieć dzięki. o rozpoczęciu pracy nad nowym wydaniem „Doing Bayesian Data Analysis” z przykładami zaktualizowanymi w JAGS i STAN.
cavalcade
1
Sprawdzam wstecz, aby zobaczyć najbardziej aktualne porównanie JAGS i STAN. Który jest teraz lepszy, a który najprawdopodobniej będzie lepszy w przyszłości?
itpetersen
Pytanie zostało wysłane z prośbą o pomoc do przetłumaczenia bugów modelu ze Stanem: stackoverflow.com/questions/53809468/... . - każda pomoc byłaby mile widziana.
Krantz
5

Polecam ci wyszczerbienie w stosunku do otwartych błędów ze względu na szybkość. Próbowałem obu na systemie Linux, a jags jest znacznie szybszy.

mra
źródło
3
może to być jednak specyficzne dla problemu ...
Ben Bolker,
5

Uważam, że Jags działa płynniej w Linuksie i jest łatwiejszy w konfiguracji, ale obecnie nie obsługuje analiz przestrzennych obsługiwanych przez GeoBUGS. Więc używam OpenBUGS.

astaines
źródło