什么是阶段性选拔? (解释和示例)
在机器学习领域,我们的目标是创建一个模型,可以有效地使用一组预测变量来预测响应变量的值。
给定一组p个总预测变量,我们可以构建许多模型。我们可以用来选择最佳模型的一种方法称为最佳子集选择,它尝试从可以使用预测变量集构建的所有可能模型中选择最佳模型。
不幸的是,这种方法有两个缺点:
- 这可能需要大量计算。对于一组p个预测变量,有 2 p个可能的模型。例如,如果有 10 个预测变量,则有 2 10 = 1000 个可能的模型需要考虑。
- 因为它考虑了大量的模型,所以它可能会找到一个在训练数据上表现良好但在未来数据上表现不佳的模型。这可能会导致过度拟合。
选择最佳子集的另一种方法称为逐步选择,它会比较较小的模型集。
步选择方法有两种:前向步选择和后向步选择。
一步步向前选择
逐步前向选择的工作原理如下:
1.设 M 0为空模型,不包含预测变量。
2.对于 k = 0, 2, … p-1:
- 使用额外的预测变量来拟合所有增加 M k中的预测变量的 pk 模型。
- 从这些 pk 模型中选择最好的一个,并将其称为 M k+1 。将“最佳”定义为具有最高 R 2或同等地最低 RSS 的模型。
3.使用交叉验证预测误差、Cp、BIC、AIC 或调整后的 R 2从 M 0 … M p中选择单个最佳模型。
逐步向后选择
后退步骤选择的工作原理如下:
1.令 M p为完整模型,其中包含所有p个预测变量。
2.对于 k = p, p-1, … 1:
- 拟合Mk中包含除一个预测变量之外的所有预测变量的所有 k 个模型,总共 k-1 个预测变量。
- 从这 k 个模型中选择最好的一个,并将其称为 M k-1 。将“最佳”定义为具有最高 R 2或同等地最低 RSS 的模型。
3.使用交叉验证预测误差、Cp、BIC、AIC 或调整后的 R 2从 M 0 … M p中选择单个最佳模型。
选择“最佳”模型的标准
逐步向前和向后选择的最后一步是选择具有最低预测误差、最低Cp、最低BIC、最高AIC low 或最高调整R 2的模型。
以下是用于计算每个指标的公式:
Cp: (RSS+2dσ̂) / n
AIC: (RSS+2dσ̂ 2 ) / (nσ̂ 2 )
BIC: (RSS+log(n)dσ̂ 2 ) / n
R 2调整: 1 – ( (RSS / (nd-1)) / (TSS / (n-1)) )
金子:
- d:预测变量的数量
- n:观察总数
- σ̂:与回归模型中每个响应度量相关的误差方差的估计
- RSS:回归模型的残差平方和
- TSS:回归模型的总平方和
阶段性选择的优缺点
阶段性选择具有以下优点:
该方法比选择最佳子集的计算效率更高。给定p 个预测变量,最佳子集的选择必须对应于 2 p个模型。
相反,逐步选择应该只适合 1+p(p+ 1)/2 模型。对于 p = 10 个预测变量,最佳子集选择应适合 1,000 个模型,而逐步选择应仅适合 56 个模型。
然而,阶段性选择有以下潜在缺点:
不能保证在所有潜在2p模型中找到最好的模型。
例如,假设我们有一个包含 p = 3 个预测变量的数据集。最佳可能的单预测器模型可能包含 x 1 ,而最佳可能的双预测器模型可能包含 x 1和 x 2 。
在这种情况下,前向逐步选择将无法选择最佳的双预测模型,因为 M 1将包含 x 1 ,因此 M 2也必须包含 x 1以及另一个变量。