机器学习中的自助法(Bootstrap)

机器学习领域,自助法(Bootstrap)是一种常见的方法论。本文将尝试深入理解其工作原理及其效率,并探讨自助法的“力量之源”。文章末尾,期望能够理解自助法为何有效,以及在何种情况下可能不适用。

自助法的必要性

自助法为何必要?首先,需要了解其背景。所有机器学习方法,至少是统计学习方法,本质上都采取相同的方法——选择一个模型并调整参数以最佳拟合现实世界。现在,参数值会因选择不同的训练集而有所变化。因此,为参数值引用置信区间是一种普遍且良好的实践,特别是在进行推断任务时,例如假设检验以确定某个特征在分析中的相关性。

这些置信区间是如何构建的呢?通常是基于一些逻辑上合理、经过时间考验的假设,并基于这些假设进行一些数学推导。这一直是统计学家的领域。例如,在线性回归模型y_i = a + bx_i + e_i中,对e_i做出了各种假设,如假设其来自均值为0的分布,e_i之间不相关等。这些假设有助于构建围绕ab估计值的置信区间。

然而,在现实世界中,这些假设很少成立。此外,大多数机器学习模型与线性回归不同,它们过于复杂,无法进行这样的分析策略。那么,机器学习社区的前进方向是什么呢?采取了一种蛮力方法,从现在起将称之为“朴素方法”。取多个训练集,对每个数据集拟合模型以获得一系列参数值。这一系列参数值的标准差有助于构建置信区间。

非常简单,但不幸的是,几乎从未这样做过。在现实世界中从未拥有如此多的训练集。正是在这种情况下,自助法变得相关。

自助法简介

自助法试图复制的步骤是取多个相同大小的训练集。有一个100个样本的训练集。需要从这个训练集中随机选择(有放回)100个样本以获得另一个训练集。通过这种方式,可以获取所需的任意多的训练集。其余方法与上述相同。

因此,自助法本质上假设通过重新抽样一个训练集以产生许多训练集副本,可以复制拥有多个训练集的情况。假设有一组三个观测值——(1,4,9)。需要另外两组这样的集合。自助法从这个训练集中重新抽样以获得,比如说(1,1,9)和(4,9,1)。

将验证这种假设的有效性。

评估自助法的策略

首先需要了解一个训练集与另一个训练集之间的关系。它们因为来自同一总体而有一些相似之处。但由于一个样本自然倾向于与另一个样本不同,它们也有所不同。需要确定一些特征来捕捉这些相似性和差异性。

训练集的均值、标准差、四分位数范围是总体的特征。从同一总体派生的所有一定大小的训练集将显示出这些参数几乎相同的值。训练集的分布是各不相同的。如果为训练集制作直方图,一个图与另一个图的差异将表明这种差异。

为了量化这一点,决定使用一个度量标准——直方图条形差异的平方和——称之为“差异度量”。如果通过朴素方法和自助法生成的训练集分别显示出上述度量值足够接近,那么将考虑自助法作为朴素方法的可能替代品。

自助法的有效性

训练集是使用(0, 10.0)之间的均匀分布生成的。训练集大小为1000,分别为朴素方法和自助法生成了100个这样的训练集。以下是100个——均值、标准差(STD)、0, 25, 50, 75和100百分位数——的差异度量。对于均值、STD和分位数分布,两种方法之间的差异在一位小数以内。对于差异度量,它们非常相似。

自助法的主要挑战

假设有一个训练集(1, 2),均值为1.5。自助法生成了另外两个训练集(1, 1)和(2, 2),每个的概率分别为25%,均值分别为1和2。朴素方法给出了另外两个训练集(1, 3)和(4, 5)。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485