这篇文章首先以一个最简单的例子+code,带你体验什么是MCMC,随后会推荐一些实用资源。[不知怎么的,这篇文章本来要写R+JAGS教程,最后硬是写成了一篇杂文?,不过也还算是一篇过得去的低阶入门文章吧。]
贝叶斯模型的后验分布可以使用共轭先验进行推导,但是更为复杂的问题无法使用closed formed的形式找到后验分布,因为The Devil is in the Denominator! 这时可以使用基于MCMC采样的方法获得后验分布的估计--BUSGS(Bayesian Analysis Using Gibbs Sampling)。另外我了解到还有一种不需要采样(pakage: r-inla)的方法,但不适合新手并且适用的问题有限。
WinBugs,OpenBUGS和JAGS是实现BUGS的三个软件。OpenBUGS和WinBUGS在Windows操作系统上运行,有图形界面。JAGS(Just another Gibbs sampler)可在win/macos/linux上使用,无图形界面。几个软件使用了基本相同的语法,都可以用R调用。
一个最简单的栗子
假设观测到了1000个值来自正态分布的值,但是并不知道其总体的信息,目标是使用BUGS找出总体参数的后验分布。
1安装所需软件安装JAGS到电脑
R中安装:
rjags
coda
MCMCvis
set.seed(432104)n x
这篇文章首先以一个最简单的例子+code,带你体验什么是MCMC,随后会推荐一些实用资源。[不知怎么的,这篇文章本来要写R+JAGS教程,最后硬是写成了一篇杂文?,不过也还算是一篇过得去的低阶入门文章吧。]
贝叶斯模型的后验分布可以使用共轭先验进行推导,但是更为复杂的问题无法使用closed formed的形式找到后验分布,因为The Devil is in the Denominator! 这时可以使用基于MCMC采样的方法获得后验分布的估计--BUSGS(Bayesian Analysis Using Gibbs Sampling)。另外我了解到还有一种不需要采样(pakage: r-inla)的方法,但不适合新手并且适用的问题有限。
WinBugs,OpenBUGS和JAGS是实现BUGS的三个软件。OpenBUGS和WinBUGS在Windows操作系统上运行,有图形界面。JAGS(Just another Gibbs sampler)可在win/macos/linux上使用,无图形界面。几个软件使用了基本相同的语法,都可以用R调用。
一个最简单的栗子
假设观测到了1000个值来自正态分布的值,但是并不知道其总体的信息,目标是使用BUGS找出总体参数的后验分布。
1安装所需软件安装JAGS到电脑
R中安装:
rjags
coda
MCMCvis
set.seed(432104)n x