Cham's Blog Algorithm, skill and thinking

Bootstrap和Monte Carlo采样

2019-09-15

Bootstrap 采样和 Monte Carlo 采样定义、实现过程,以及区别。

Cham’s Blog 首发原创

Bootstrap 采样

1)基本思想 Bootstrap (自助采样),一种有放回的抽样方法,它是非参数统计中一种重要的估计统计量方差进而进行区间估计的统计方法。其核心思想和基本步骤如下:

对于一个样本 $x_1,x_2,\dots,x_n$,其总体的概率分布中的参数 $\theta$ 是未知的,(参数 $\theta$ 可以简单理解为一些指标,比如,均值、中位数、方差等,当然还有一些比较复杂的指标),现在想要利用这些有限的样本得到一个估测值 $\hat {\theta}$。

Step1:根据自己的需要选择确定重采样的次数 $i$,1000 或者 2000 等;

Step2:从 $x_1,x_2,\dots,x_n$ 中有放回的抽取 $n$ 次(这个 $n$ 必须要已知样本数目相等),因为是有放回的,所以在 $n$ 次抽取之后,可能有的样本被抽取多次,也可能有的样本一次都没有被抽取。

Step3:重复 Step2,一共 $i$ 次,对每次抽取后的结果都计算出一个 $\hat {\theta}$ 值。

Step4:利用得到的 $\hat {\theta}_1,\hat {\theta}_2,\dots,\hat {\theta}_i$ 作为一个 sample,计算其 $\frac \alpha 2 \times 100\%$ 和 $(1-\alpha) \times 100\%$ 的百分位置,得到的就是近似出的,估测总体参数 $\theta$ 的置信区间的最低和最高点 $[x, y]$。

2)Random forest的数据采样

从原始样本库里随机产生一个样本; 放回到库中; 继续 1; 上述过程重复 $n$ 次,产生了一个规模为 $n$ 的数据集 $X$。

在随机森林中,我们会构建 $m$ 个数据集,从而训练 $m$ 个决策树,通过 $m$ 个决策树来共同投票决定最终的结果。这就是重采样构建数据和投票机制来塑造的随机森林模型。

蒙特卡罗思想

蒙特卡罗是一类随机算法的统称,其主要思想是采样越多,得到的结果越近似于最优解。更多的是从总体中抽一个样本,计算估计量(均值等),作为整体估计。 举例说明,一个有 1000 个整数的集合,要求其中位数,可以从中抽取 $m<1000$ 个数,把它们的中位数近似地看作这个集合的中位数。随着 $m$ 增大,近似结果是最终结果的概率也在增大,但除非把整个集合全部遍历一边,无法知道近似结果是不是真实结果。

Bootstrap 采样思想和 Monte Carlo 思想区别

Monte Carlo 和 bootstrap 是两种思想,都是基于 random sampling 去近似某一目标。Monte Carlo 的目标一般是一个难以计算的积分,bootstrap 的目标一般是统计推断。 bootstrap 是从部分样本有放回的重采样 $i$ 次(全部样本是未知的),将多次采样的估计量(均值等)的分布作为整体的分布结果。而蒙特卡罗是在已知总体样本的情况下,不想计算全部值,就从中抽取一个样本(或多个),用这个抽取样本的估计量当做整体估计。



下一篇 Git 常规语法

Comments

Content