资讯

自助采样是什么?有放回地抽出与原数据同样多的样本

2026-11-053 分钟阅读百科
TL;DR自助采样(Bootstrap Sampling),又称有放回采样或可重复采样,指从含 m 个样本的数据集中每次随机抽取一个并放回、重复 m 次得到新数据集;新集中约有 63.2% 的不同原始样本,其余约 36.8% 未被抽中,可用于包外估计,它是 Bagging 与随机森林产生基学习器多样性的关键。

自助采样(Bootstrap Sampling),也叫有放回采样或可重复采样,是一种从数据集中抽取样本的方式:每次从数据集中随机地抽取一个样本,记录下来之后再把它放回去,使它在下一次抽取时仍有可能被抽中,如此重复,直到抽出的样本数量与原数据集相同。它是自助法和 Bagging 等方法的基础操作。

与无放回采样的区别

无放回采样是指抽出的样本不再放回,每个样本最多只会被抽中一次,比如抽奖时抽中的人不再参与后面的抽奖。如果用无放回的方式从 m 个样本中抽 m 次,得到的就是原数据集本身,只是顺序被打乱了。而在有放回采样中,同一个样本可能被抽中多次,也可能一次都没被抽中,因此每次得到的新数据集都与原数据集有所不同。

一个重要的比例:63.2%

假设原数据集有 m 个样本,进行 m 次有放回的抽取。对于某一个特定的样本,它在一次抽取中没有被抽中的概率是 1 减去 m 分之一;在 m 次抽取中始终没被抽中的概率,就是这个数的 m 次方。当 m 很大时,这个值趋近于 1 除以自然常数 e,约等于 0.368。也就是说,原数据集中大约有 36.8% 的样本不会出现在自助采样得到的新数据集中,而新数据集中实际包含的不同样本约占原数据集的 63.2%,其余的位置被重复抽中的样本填满。即使数据集只有几十个样本,这个比例也已经相当接近 36.8%。

它的用途

集成学习:Bagging 方法用自助采样为每个基学习器生成一个不同的训练集,每个训练集只包含约 63.2% 的不同原始样本,而且各有重复,这让训练出的基学习器之间产生差异,组合起来效果更好。随机森林在此基础上还对特征进行随机选择。包外估计:每个基学习器训练时没有用到的那约 36.8% 的样本,叫作它的包外样本,可以用来评估这个学习器,汇总起来就能估计整个集成模型的泛化误差,而不需要另外留出验证集。模型评估:用自助采样得到的数据训练模型,用没被抽中的样本测试,这在数据很少时特别有用。统计推断:在大量的自助样本上反复计算某个统计量,用这些结果的分布来估计它的标准误差和置信区间。

需要注意的地方

自助采样得到的数据集改变了原始数据的分布:有些样本被重复,有些被遗漏,因此用它来评估模型时可能引入一定的偏差。当数据中存在相互关联的结构时,比如时间序列,或者同一个用户的多条记录,简单的逐个样本自助采样会破坏这种结构,需要使用块自助法(按时间段整块抽取)或按组抽取等变体。此外,如果原数据集本身就很小或者代表性不足,自助采样也无法凭空创造出原数据中没有的信息。