资讯

重采样法是什么?按权重或需要重新抽取训练样本

2026-11-053 分钟阅读百科
TL;DR重采样法(Re-sampling)是根据样本权重或特定目的从原始数据中重新抽取样本构成新训练集的方法,在 Boosting 中按权重抽样以替代重赋权,在 Bagging 中用有放回的自助采样,在类别不平衡中用过采样或欠采样,在统计中则用自助法和交叉验证估计模型性能与不确定性。

重采样法(Re-sampling)是指从原始的数据集中,按照一定的规则重新抽取样本,构成新的数据集的方法。它在机器学习和统计学中有多种用途:在集成学习中用来训练多样的基学习器,在类别不平衡的问题中用来平衡各类样本,在统计推断中用来评估模型的效果和估计的不确定性。

在提升法中:替代重赋权

提升法,比如 AdaBoost,在每一轮训练之后,会提高被分错的样本的权重,让下一个学习器更加关注这些难以分对的样本。实现这一点有两种方式:一种是重赋权法,直接把样本的权重交给学习算法,在计算损失时考虑每个样本的权重;另一种就是重采样法,根据样本的权重进行有放回的抽样,权重越大的样本被抽中的概率越高、在新数据集中出现的次数越多,然后用这个新的数据集来训练下一个学习器,学习器本身不需要知道权重。重采样法适用于那些无法直接接受样本权重的学习算法。周志华在《机器学习》中还提到:在提升法中,如果某一轮训练出的学习器表现太差,重采样法可以根据当前的权重重新进行抽样,再训练一个学习器,从而避免训练过程过早地停止。

在 Bagging 中:自助采样

Bagging 和随机森林使用自助采样来生成多个不同的训练集:从包含 m 个样本的原始训练集中,有放回地随机抽取 m 次,得到一个同样大小的新训练集。由于是有放回的抽样,有些样本会被抽到多次,有些一次也没有被抽到,平均来说,每个新训练集大约包含原始数据中 63.2% 的不同样本。在这些略有不同的训练集上分别训练基学习器,它们之间就会产生差异,组合起来的效果更好。没有被抽到的那部分样本还可以用来进行包外估计。

在类别不平衡中:过采样和欠采样

当某一类的样本远远少于其他类时,可以通过重采样来平衡数据。过采样增加少数类的样本,比如随机地复制少数类样本,或者用 SMOTE 方法在少数类样本之间插值,合成新的样本。欠采样减少多数类的样本,比如随机地删除一部分多数类样本,或者有选择地删除那些靠近类别边界、可能是噪声的样本。也可以把两者结合起来使用。需要注意,这类重采样只能在训练集上进行,不能对测试集进行,否则会让评估的结果失真。

在统计推断中:自助法和交叉验证

自助法:由统计学家布拉德利·埃弗隆在 1979 年提出。它的思路是把手中的样本当作总体的一个缩影,通过从样本中反复地进行有放回的抽样,生成成百上千个“自助样本”,在每一个自助样本上计算我们关心的统计量,比如平均值、中位数、模型的准确率,然后观察这些统计量的分布,就能估计它的标准误差和置信区间。这种方法不需要对数据的分布做很强的假设,对于那些难以用公式推导出误差的复杂统计量尤其有用,被认为是 20 世纪统计学最重要的进展之一。交叉验证:把数据分成若干份,轮流用其中一份作为测试集、其余作为训练集,重复多次,以更稳定地估计模型的泛化能力。刀切法:每次从样本中去掉一个观测,计算统计量,用来估计偏差和方差,是自助法的前身之一。置换检验:通过随机地打乱数据的标签或分组,生成在“没有效果”的假设下统计量的分布,以此来判断观察到的效果是否显著。在机器学习中,置换的思想也被用来计算特征的重要性。