重要性采样(Importance Sampling)

重要性采样(Importance Sampling)

摘自维基百科
	重要性采样是蒙特卡洛方法中的一个重要策略。该方法不改变统计量,只改变概率分布,可以用来降低方差。

在做蒙特卡罗模拟的时候,我们当然希望采集的样本服从样本集的均匀分布,比如在机器博弈中,每个点落子的事件组能够被搜索到,做仿真模拟的时候,探索策略可以铺满整个事件组(只考虑当前state,不考虑接下来的state时),但是当事件组的随机变量 z z z非常复杂并且无法尝试探索到整个事件组时,这时我们可以考虑选用一个概率分布很简单的概率分布 p ( z ) p(z) p(z),如正态分布、均匀分布(E = 1)等,那么期望可变为
E ( z ) = ∫ f ( z ) ∗ p ( z )   d z E(z) = \int {f(z)*p(z)} \,{\rm d}z E(z)=f(z)p(z)dz = ∫ f ( z ) ∗ ( p ( z ) / q ( z ) ) ∗ q ( z )   d z = \int {f(z)*(p(z)/q(z))*q(z)} \,{\rm d}z =f(z)(p(z)/q(z))q(z)dz ≈ 1 / N ∑ n ( p ( z n ) / q ( z n ) ) ∗ f ( z n ) ,   z n   q ( z ) ≈ 1/N\sum_n(p(z^n)/q(z^n))*f(z^n),\text{ }z^n~q(z) 1/Nn(p(zn)/q(zn))f(zn), zn q(z)
定义重要性权重 ω = p ( z n ) / q ( z n ) \omega = p(z^n)/q(z^n) ω=p(zn)/q(zn),这样普通的重要性采样求积分
E ( z ) = 1 / N ∑ n ω n f ( z n ) E(z) = 1/N\sum_n\omega^nf(z^n) E(z)=1/Nnωnf(zn)
这里引入三个参数估计的评价量(1)无偏性√(2)一致性?(3)有效性√
从推到过程上可以看出,基于重要性采样的积分估计为无偏估计。但是,基于重要性采样的积分估计的方差无穷大。这是因为原来的被积函数乘了一个重要性权重,改变了被积函数的形状及分布,尽管被积函数的均值没有发生变化,但方差明显发生改变。一致性,又称相合性,是指随着样本容量的增大,估计量愈来愈接近总体参数的真值。
为了解决一致性差的问题(即方差无穷大),一种减小重要性采样积分方差的方法是采用加权重要性采样:
E ( z ) = ∑ n = 1 N ω n ∑ m = 1 N ω m f ( z n ) E(z) = \sum_{n=1}^N\frac{\quad\omega^n}{\sum_{m=1}^N\omega^m}f(z^n) E(z)=n=1Nm=1Nωmωnf(zn)

拒绝采样(转)

当目标分布 π ( x ) \pi(x) π(x)非常复杂或未知时,无法利用目标分布给出采样点,那么怎么办呢?一种方法是采用一个易于采样的提议分布 p ( x ) p(x) p(x),如高斯分布进行采样。可是,如果用提议分布 p ( x ) p(x) p(x)采样,那么所产生的样本服从提议分布 p ( x ) p(x) p(x)而不服从目标分布 π ( x ) \pi(x) π(x)。所以,为了得到符合目标分布 π ( x ) \pi(x) π(x)的样本,需要加工由提议分布 p ( x ) p(x) p(x)得到的样本。接收符合目标分布的样本,拒绝不符合目标分布的样本。

MCMC(Markov Chain Monte Carlo)方法

MCMC方法全称为马尔科夫链蒙特卡罗方法,适用于采样空间的维数比较高时,刚看到这里,什么是空间维数比较高?看了后续的内容发现,比如在机器博弈中, s 1 s_1 s1, s 2 s_2 s2, s 3 s_3 s3…, s n s_n sn这一个决策过程集合,采样的数据就是n维的。当然n维的采样方法用重要性采样和拒绝采样都不适用,MCMC方法不需要提议分布,只需要一个随机样本点,下一个样本会由当前的随机样本点产生,如此循环源源不断地产生很多样本点。当样本足够大时,这些样本点服从目标分布。{ 未完待续}

你可能感兴趣的:(数理统计)