SlideShare a Scribd company logo
1 of 8
Download to read offline
JAGS: Just Another Gibbs Sampler
Martyn Plummer
International Agency for Research on Cancer
Ecological Forecasting Workshop
March 2014
Goals/Aims
Portable implementation of BUGS language
Interface to other software:
User interface to R
Back-end interfact to C/C++/Fortran libraries
Extensible
A platform for experimenting with ideas in Bayesian modelling
History
Version Release Date
0.1 December 2002
1.0 December 2007
2.0.0 April 2010
3.0.0 August 2011
3.4.0 September 2013
JAGS became feasible when the
R Math functions became
available as a standalone library.
JAGS has been in a
consolidation phase, with no
changes to the library API since
August 2011
Technical Implementation
Very much like OpenBUGS:
User writes a description of the model in the BUGS language
An interpreter creates a virtual graphical model (VGM)
Sampler factories inspect the VGM looking for design motifs
to sample.
User runs MCMC updates, monitoring mixing and convergence
But also not like OpenBUGS:
No GUI.
No output processing: use R or another package.
Core library with dynamically loadable modules that provide
functions, distributions, samplers and monitors.
Strengths
Portable (Windows, Mac OS X, Linux)
Several R interfaces (rjags, R2jags, runjags)
Widely used (> 10000 downloads of 3.3.0 - but I don’t know
who these people are)
Limitations
For the user:
High memory overhead (inherent to VGM design)
Lack of support for Gaussian Markov Random Fields
For the developer:
Lack of developer documentation
No critical mass
Applications
In my own field (epidemiology), there are standard models for
most study designs
But sources of “complexity” perturb the model outside the
range of these standard models:
Repeated measurements, hierarchical structure, missing data,
measurement error, ...
We use JAGS to build models that can be adapted to cope
with complexity.
Current and future development
Disclaimer: there is no timeline on any of this
HMC for GLMMs
Parallelism
Compiler overhaul:
if/else statements
vectorized indexing
local variables in loops
Potentials (Likelihoods that do not correspond to a
distribution)
Better treatment of censored survival data

More Related Content

Similar to Martyn Plummer JAGS

The Ring programming language version 1.3 book - Part 4 of 88
The Ring programming language version 1.3 book - Part 4 of 88The Ring programming language version 1.3 book - Part 4 of 88
The Ring programming language version 1.3 book - Part 4 of 88Mahmoud Samir Fayed
 
Let's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming LanguageLet's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming LanguageGanesh Samarthyam
 
Lets Go - An introduction to Google's Go Programming Language
Lets Go - An introduction to Google's Go Programming Language Lets Go - An introduction to Google's Go Programming Language
Lets Go - An introduction to Google's Go Programming Language Ganesh Samarthyam
 
11 Java User Interface Libraries for Developing Mobile Applications
11 Java User Interface Libraries for Developing Mobile Applications11 Java User Interface Libraries for Developing Mobile Applications
11 Java User Interface Libraries for Developing Mobile ApplicationsAEGIS-ACCESSIBLE Projects
 
Hybrid Mobile App Development | XcelTec
Hybrid Mobile App Development  | XcelTecHybrid Mobile App Development  | XcelTec
Hybrid Mobile App Development | XcelTecXcelTec pvt ltd
 
Programming in python in detail concept .pptx
Programming in python in detail concept .pptxProgramming in python in detail concept .pptx
Programming in python in detail concept .pptxKavitha713564
 
Different Programming Languages Analysed.pdf
Different Programming Languages Analysed.pdfDifferent Programming Languages Analysed.pdf
Different Programming Languages Analysed.pdfSeasia Infotech
 
Some wonderful Linux softwares for daily use
Some wonderful Linux softwares for daily useSome wonderful Linux softwares for daily use
Some wonderful Linux softwares for daily usearun.arwachin
 
Cross Platform Objective C Development Using Gn Ustep
Cross Platform Objective C Development Using Gn UstepCross Platform Objective C Development Using Gn Ustep
Cross Platform Objective C Development Using Gn Ustepwangii
 
Why Should Windows Users Turn Their Attention To Flutter 2.10_.pdf
Why Should Windows Users Turn Their Attention To Flutter 2.10_.pdfWhy Should Windows Users Turn Their Attention To Flutter 2.10_.pdf
Why Should Windows Users Turn Their Attention To Flutter 2.10_.pdfMoon Technolabs Pvt. Ltd.
 
The Ring programming language version 1.6 book - Part 6 of 189
The Ring programming language version 1.6 book - Part 6 of 189The Ring programming language version 1.6 book - Part 6 of 189
The Ring programming language version 1.6 book - Part 6 of 189Mahmoud Samir Fayed
 
Technologies Used in Flutter App Development.pdf
Technologies Used in Flutter App Development.pdfTechnologies Used in Flutter App Development.pdf
Technologies Used in Flutter App Development.pdfNishaadequateinfosof
 
Innovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best PracticesInnovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best PracticesSolstice Mobile Argentina
 
Gwt and JSR 269's Pluggable Annotation Processing API
Gwt and JSR 269's Pluggable Annotation Processing APIGwt and JSR 269's Pluggable Annotation Processing API
Gwt and JSR 269's Pluggable Annotation Processing APIArnaud Tournier
 

Similar to Martyn Plummer JAGS (20)

The Ring programming language version 1.3 book - Part 4 of 88
The Ring programming language version 1.3 book - Part 4 of 88The Ring programming language version 1.3 book - Part 4 of 88
The Ring programming language version 1.3 book - Part 4 of 88
 
Let's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming LanguageLet's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming Language
 
Lets Go - An introduction to Google's Go Programming Language
Lets Go - An introduction to Google's Go Programming Language Lets Go - An introduction to Google's Go Programming Language
Lets Go - An introduction to Google's Go Programming Language
 
11 Java User Interface Libraries for Developing Mobile Applications
11 Java User Interface Libraries for Developing Mobile Applications11 Java User Interface Libraries for Developing Mobile Applications
11 Java User Interface Libraries for Developing Mobile Applications
 
Voice Assistant.pptx
Voice Assistant.pptxVoice Assistant.pptx
Voice Assistant.pptx
 
Hybrid Mobile App Development | XcelTec
Hybrid Mobile App Development  | XcelTecHybrid Mobile App Development  | XcelTec
Hybrid Mobile App Development | XcelTec
 
Programming in python in detail concept .pptx
Programming in python in detail concept .pptxProgramming in python in detail concept .pptx
Programming in python in detail concept .pptx
 
Python ppt.pptx
Python ppt.pptxPython ppt.pptx
Python ppt.pptx
 
Python ppt.pptx
Python ppt.pptxPython ppt.pptx
Python ppt.pptx
 
Different Programming Languages Analysed.pdf
Different Programming Languages Analysed.pdfDifferent Programming Languages Analysed.pdf
Different Programming Languages Analysed.pdf
 
Some wonderful Linux softwares for daily use
Some wonderful Linux softwares for daily useSome wonderful Linux softwares for daily use
Some wonderful Linux softwares for daily use
 
Cross Platform Objective C Development Using Gn Ustep
Cross Platform Objective C Development Using Gn UstepCross Platform Objective C Development Using Gn Ustep
Cross Platform Objective C Development Using Gn Ustep
 
Why Should Windows Users Turn Their Attention To Flutter 2.10_.pdf
Why Should Windows Users Turn Their Attention To Flutter 2.10_.pdfWhy Should Windows Users Turn Their Attention To Flutter 2.10_.pdf
Why Should Windows Users Turn Their Attention To Flutter 2.10_.pdf
 
Android Apps
Android AppsAndroid Apps
Android Apps
 
The Ring programming language version 1.6 book - Part 6 of 189
The Ring programming language version 1.6 book - Part 6 of 189The Ring programming language version 1.6 book - Part 6 of 189
The Ring programming language version 1.6 book - Part 6 of 189
 
Technologies Used in Flutter App Development.pdf
Technologies Used in Flutter App Development.pdfTechnologies Used in Flutter App Development.pdf
Technologies Used in Flutter App Development.pdf
 
Java Programming Basics
Java Programming BasicsJava Programming Basics
Java Programming Basics
 
Gap search system
Gap search systemGap search system
Gap search system
 
Innovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best PracticesInnovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best Practices
 
Gwt and JSR 269's Pluggable Annotation Processing API
Gwt and JSR 269's Pluggable Annotation Processing APIGwt and JSR 269's Pluggable Annotation Processing API
Gwt and JSR 269's Pluggable Annotation Processing API
 

More from David LeBauer

Software and data as scaffolds for integrative science
Software and data as scaffolds for integrative scienceSoftware and data as scaffolds for integrative science
Software and data as scaffolds for integrative scienceDavid LeBauer
 
Reusable Software and Open Data To Optimize Agriculture
Reusable Software and Open Data To Optimize AgricultureReusable Software and Open Data To Optimize Agriculture
Reusable Software and Open Data To Optimize AgricultureDavid LeBauer
 
Matt Jones software-interoperability
Matt Jones software-interoperabilityMatt Jones software-interoperability
Matt Jones software-interoperabilityDavid LeBauer
 
Aaron Ellison: Analytic Web
Aaron Ellison: Analytic WebAaron Ellison: Analytic Web
Aaron Ellison: Analytic WebDavid LeBauer
 
Ilkay Altintas: Kepler
Ilkay Altintas: KeplerIlkay Altintas: Kepler
Ilkay Altintas: KeplerDavid LeBauer
 
Jeroen Steenbeek Ecopath with Ecosim
Jeroen Steenbeek Ecopath with EcosimJeroen Steenbeek Ecopath with Ecosim
Jeroen Steenbeek Ecopath with EcosimDavid LeBauer
 
Aaron Ellison Keynote: Reaching the 99%
Aaron Ellison Keynote: Reaching the 99%Aaron Ellison Keynote: Reaching the 99%
Aaron Ellison Keynote: Reaching the 99%David LeBauer
 
Andrew Thomas OpenBUGS
Andrew Thomas OpenBUGSAndrew Thomas OpenBUGS
Andrew Thomas OpenBUGSDavid LeBauer
 
Anders Nielsen AD Model-Builder
Anders Nielsen AD Model-BuilderAnders Nielsen AD Model-Builder
Anders Nielsen AD Model-BuilderDavid LeBauer
 
Janine Illian R-INLA
Janine Illian R-INLAJanine Illian R-INLA
Janine Illian R-INLADavid LeBauer
 
Anders Nielsen template model-builder
Anders Nielsen template model-builderAnders Nielsen template model-builder
Anders Nielsen template model-builderDavid LeBauer
 
Advancing Software for Ecological Forecasting: Public Sessions
Advancing Software for Ecological Forecasting: Public SessionsAdvancing Software for Ecological Forecasting: Public Sessions
Advancing Software for Ecological Forecasting: Public SessionsDavid LeBauer
 
Advancing software for ecological forecasting
Advancing software for ecological forecastingAdvancing software for ecological forecasting
Advancing software for ecological forecastingDavid LeBauer
 

More from David LeBauer (20)

Software and data as scaffolds for integrative science
Software and data as scaffolds for integrative scienceSoftware and data as scaffolds for integrative science
Software and data as scaffolds for integrative science
 
Reusable Software and Open Data To Optimize Agriculture
Reusable Software and Open Data To Optimize AgricultureReusable Software and Open Data To Optimize Agriculture
Reusable Software and Open Data To Optimize Agriculture
 
Yiqi Luo EcoPAD
Yiqi Luo EcoPADYiqi Luo EcoPAD
Yiqi Luo EcoPAD
 
David LeBauer PEcAn
David LeBauer PEcAnDavid LeBauer PEcAn
David LeBauer PEcAn
 
Matt Jones software-interoperability
Matt Jones software-interoperabilityMatt Jones software-interoperability
Matt Jones software-interoperability
 
Aaron Ellison: Analytic Web
Aaron Ellison: Analytic WebAaron Ellison: Analytic Web
Aaron Ellison: Analytic Web
 
Ilkay Altintas: Kepler
Ilkay Altintas: KeplerIlkay Altintas: Kepler
Ilkay Altintas: Kepler
 
Jeroen Steenbeek Ecopath with Ecosim
Jeroen Steenbeek Ecopath with EcosimJeroen Steenbeek Ecopath with Ecosim
Jeroen Steenbeek Ecopath with Ecosim
 
Aaron Ellison Keynote: Reaching the 99%
Aaron Ellison Keynote: Reaching the 99%Aaron Ellison Keynote: Reaching the 99%
Aaron Ellison Keynote: Reaching the 99%
 
Andrew Thomas OpenBUGS
Andrew Thomas OpenBUGSAndrew Thomas OpenBUGS
Andrew Thomas OpenBUGS
 
Anders Nielsen AD Model-Builder
Anders Nielsen AD Model-BuilderAnders Nielsen AD Model-Builder
Anders Nielsen AD Model-Builder
 
Daniel Lee STAN
Daniel Lee STANDaniel Lee STAN
Daniel Lee STAN
 
Ed Ionides POMP
Ed Ionides POMPEd Ionides POMP
Ed Ionides POMP
 
Janine Illian R-INLA
Janine Illian R-INLAJanine Illian R-INLA
Janine Illian R-INLA
 
Andy Fox DART
Andy Fox DARTAndy Fox DART
Andy Fox DART
 
Mike Dietze PEcAn
Mike Dietze PEcAnMike Dietze PEcAn
Mike Dietze PEcAn
 
de Valpine NIMBLE
de Valpine NIMBLEde Valpine NIMBLE
de Valpine NIMBLE
 
Anders Nielsen template model-builder
Anders Nielsen template model-builderAnders Nielsen template model-builder
Anders Nielsen template model-builder
 
Advancing Software for Ecological Forecasting: Public Sessions
Advancing Software for Ecological Forecasting: Public SessionsAdvancing Software for Ecological Forecasting: Public Sessions
Advancing Software for Ecological Forecasting: Public Sessions
 
Advancing software for ecological forecasting
Advancing software for ecological forecastingAdvancing software for ecological forecasting
Advancing software for ecological forecasting
 

Recently uploaded

CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetEnjoy Anytime
 

Recently uploaded (20)

CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
 

Martyn Plummer JAGS

  • 1. JAGS: Just Another Gibbs Sampler Martyn Plummer International Agency for Research on Cancer Ecological Forecasting Workshop March 2014
  • 2. Goals/Aims Portable implementation of BUGS language Interface to other software: User interface to R Back-end interfact to C/C++/Fortran libraries Extensible A platform for experimenting with ideas in Bayesian modelling
  • 3. History Version Release Date 0.1 December 2002 1.0 December 2007 2.0.0 April 2010 3.0.0 August 2011 3.4.0 September 2013 JAGS became feasible when the R Math functions became available as a standalone library. JAGS has been in a consolidation phase, with no changes to the library API since August 2011
  • 4. Technical Implementation Very much like OpenBUGS: User writes a description of the model in the BUGS language An interpreter creates a virtual graphical model (VGM) Sampler factories inspect the VGM looking for design motifs to sample. User runs MCMC updates, monitoring mixing and convergence But also not like OpenBUGS: No GUI. No output processing: use R or another package. Core library with dynamically loadable modules that provide functions, distributions, samplers and monitors.
  • 5. Strengths Portable (Windows, Mac OS X, Linux) Several R interfaces (rjags, R2jags, runjags) Widely used (> 10000 downloads of 3.3.0 - but I don’t know who these people are)
  • 6. Limitations For the user: High memory overhead (inherent to VGM design) Lack of support for Gaussian Markov Random Fields For the developer: Lack of developer documentation No critical mass
  • 7. Applications In my own field (epidemiology), there are standard models for most study designs But sources of “complexity” perturb the model outside the range of these standard models: Repeated measurements, hierarchical structure, missing data, measurement error, ... We use JAGS to build models that can be adapted to cope with complexity.
  • 8. Current and future development Disclaimer: there is no timeline on any of this HMC for GLMMs Parallelism Compiler overhaul: if/else statements vectorized indexing local variables in loops Potentials (Likelihoods that do not correspond to a distribution) Better treatment of censored survival data