采样方法MCMC相关算法介绍及代码实现
Posted think90
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了采样方法MCMC相关算法介绍及代码实现相关的知识,希望对你有一定的参考价值。
采样方法(二)MCMC相关算法介绍及代码实现
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
0.引子
书接前文,在采样方法(一)中我们讲到了拒绝采样、重要性采样一系列的蒙特卡洛采样方法,但这些方法在高维空间时都会遇到一些问题,因为很难找到非常合适的可采样Q分布,同时保证采样效率以及精准度。
本文将会介绍采样方法中最重要的一族算法,MCMC(Markov Chain Monte Carlo),在之前我们的蒙特卡洛模拟都是按照如下公式进行的:
E[f(x)]≈1m∑mi=1f(xi). xi∼p.iid{E}[f(x)] approx frac{1}{m}sum_{i=1}^m{f(x_i)}. x_i sim p.iidE[f(x)]≈m1?i=1∑m?f(xi?). xi?∼p.iid
我们的x都是独立采样出来的,而在MCMC中,它变成了
E[f(x)]≈1m∑mi=1f(xi). (x0,x1,...,xm)∼MC(p){E}[f(x)] approx frac{1}{m}sum_{i=1}^m{f(x_i)}. (x_0,x_1,...,x_m)sim MC(p)E[f(x)]≈m1?i=1∑m?f(xi?). (x0?,x1?,...,x