bootstrap sampling自助采样
自助法(bootstrap)的一个通俗的解释为:有放回抽样。
bootstrap的过程为,对于包含m个样本的数据集D,我们对它进行采样产生数据集D’:每次随机从D中挑选一个样本,将其拷贝放入D’,然后再将该样本放回初始数据集D中,使得该样本在下次采样时仍有可能被采到;这个过程重复执行m次后,我们就得到了包含m个样本的数据集D’,这就是自助采样的结果。
显然,D中有一部分样本会在D’中多次出现,而另一部分样本不出现。可以做一个简单的估计,样本在m次采样中始终不被采到的概率是
(
1
−
1
m
)
m
(1-\frac{1}{m})^m
(1−m1)m ,取极限得:
即通过自助采样,初始数据集D中约有36.8%得样本未出现在采样数据集D’中。于是我们可将D’作为训练集,D\D’作为测试集;这样,实际评估的模型与期望评估的模型都使用m个训练样本,而我们仍有数据总量约1/3的、没有在训练集中出现的样本用于测试。这样的测试结果,亦称“包外估计”(out-of-bag-estimate)。
bagging
Bagging直接基于自助采样法(bootstrap)。由公式1可知,初始训练集中约有63.2%的样本出现在采样集中。
照这样,可以采出采样出T个含K个样本的采样集合,然后基于每个采样集合训练出一个基学习器,再将这些基学习器进行结合,这就是Bagging的基本流程。
在对预测输出进行结合式,Bagging通常对分类任务使用简单投票法,对于回归任务使用简单平均法。若分类预测时出现两个类收到同样票数的情形,则最简单的做法是随机选择一个,也可进一步考察学习器投票的置信度来确定最终胜者。