梅特罗波利斯-黑斯廷斯算法
跳转到导航
跳转到搜索

梅特罗波利斯-黑斯廷斯算法(Template:Lang-en)是统计学与统计物理中的一种马尔科夫蒙特卡洛(MCMC)方法,用于在难以直接采样时从某一概率分布中抽取随机样本序列。得到的序列可用于估计该概率分布或计算积分(如期望值)等。梅特罗波利斯-黑斯廷斯或其他MCMC算法一般用于从多变量(尤其是高维)分布中采样。对于单变量分布而言,常会使用自适应判别采样(adaptive rejection sampling)等其他能抽取独立样本的方法,而不会出现MCMC中样本自相关的问题。
该算法的名称源于美国物理学家尼古拉斯·梅特罗波利斯[1]与加拿大统计学家Template:Le。[2]
算法
假设为目标概率分布。梅特罗波利斯-黑斯廷斯算法的过程为:
- 初始化
- 选定初始状态;
- 令;
- 迭代过程
- 生成: 从某一容易抽样的分布中随机生成候选状态;Template:NoteTag
- 计算: 计算是否采纳候选状态的概率;
- 接受或拒绝
- 从的均匀分布中生成随机数;
- 如,则接受该状态,并令;
- 如,则拒绝该状态,并令(复制原状态);
- 增量:令;
注释
参考文献
- Bernd A. Berg. Markov Chain Monte Carlo Simulations and Their Statistical Analysis. Singapore, World Scientific, 2004.
- Siddhartha Chib and Edward Greenberg: "Understanding the Metropolis–Hastings Algorithm". American Statistician, 49(4), 327–335, 1995
- David D. L. Minh and Do Le Minh. "Understanding the Hastings Algorithm." Communications in Statistics - Simulation and Computation, 44:2 332-349, 2015
- Bolstad, William M. (2010) Understanding Computational Bayesian Statistics, John Wiley & Sons Template:ISBN