我一直在学习机器学习提升方法(例如,ADA 提升、梯度提升),并且信息来源提到提升树方法比其他机器学习方法不太可能过度拟合。为什么会这样?
由于提升未正确预测的超重输入,它似乎很容易最终拟合噪声和过度拟合数据,但我一定是误解了一些东西。
我一直在学习机器学习提升方法(例如,ADA 提升、梯度提升),并且信息来源提到提升树方法比其他机器学习方法不太可能过度拟合。为什么会这样?
由于提升未正确预测的超重输入,它似乎很容易最终拟合噪声和过度拟合数据,但我一定是误解了一些东西。
总体思路是,每棵树都会过拟合数据的某些部分,但会欠拟合数据的其他部分。但是在提升中,您不使用单个树,而是将它们“平均”在一起,因此对于特定数据点(或点组),过度拟合该点(那些点)的树将与在合适的树和组合的平均值不应该过拟合或过拟合,但应该是正确的。
与所有模型一样,您应该在一些模拟数据上进行尝试,以帮助自己了解正在发生的事情。此外,与所有模型一样,您应该查看诊断并使用您的科学知识和常识来确保建模合理地代表您的数据。
这是已经观察了一段时间但不一定在理论上解释的事情之一。 在一篇原始的随机森林论文中, Breiman 假设 adaboost 在其后期作为一种随机森林发挥作用,因为权重基本上是从随机分布中提取的。他的全部假设尚未得到证实,但给出了合理的直觉。
在现代梯度提升机器等中,通常使用数据特征的学习率和子采样来使树的生长显式随机化。
还值得注意的是,它们是相对较少的超参数来调整,它们的作用非常直接,可以对抗过度拟合。因此,虽然有可能使用增强模型过度拟合,但它也很容易回拨树深度、叶子大小、学习率等和/或添加随机化来解决这个问题。
这不是一个非常正式的理由,但本文中的讨论为这个问题提供了一些有趣的观点。我建议阅读这篇文章本身(它很短,技术性也不强),但这里是基本论点的概述:
boosting 选择树的方式在算法上类似于计算 LASSO 的“正则化路径”的技术(即 as变化),称为最小角回归,由许多相同的作者在这里首次引入。此外,提升的工作方式(从没有预测变量的模型中连续添加更多树)可以被认为是从具有大量正则化(高,如此小有很多 0 ) 到很少有正则化(因此更大) 有更多的 0)。在这种观点中,作为一种算法的提升倾向于保证找到的解决方案是“稀疏”的,而早期停止可以被认为是进行交叉验证以调整隐式正则化参数的一种数值有效的方法.
然后,作者讨论了正则化的优点,使用他们所谓的“稀疏性赌注”原则来证明为什么这种提升算法的观点可以解释为什么它似乎运作良好。