堆叠模型与过拟合的避免

机器学习领域,构建一个新模型通常涉及到使用不同的算法(例如kNN、决策树或SVM)来提高预测的准确性。然而,这个过程也带来了过拟合的风险,尤其是在使用全部训练数据来创建模型和生成预测时。为了避免这种情况,可以采取一些策略来减少过拟合的可能性。本文将探讨这些策略,并介绍堆叠模型的不同变体。

视频教程

如果更倾向于通过视听方式学习概念,提供了下面视频,详细解释了整篇文章的内容。如果更喜欢阅读,可以继续往下看。

堆叠模型的基本概念

堆叠模型的核心在于利用多个模型(通常称为基学习器或基模型)对训练数据进行处理,并生成预测。这些预测(Pred 1到Pred n)被输入到一个新的模型中,而不是简单地通过最大投票或平均值来决定最终预测。根据问题的性质(回归或分类),可以选择适当的模型来完成这一任务。堆叠模型的概念非常有趣,它为提供了许多可能性。

过拟合的风险

然而,以这种方式进行堆叠可能会导致模型过拟合,因为使用了全部的训练数据来创建模型和生成预测。因此,需要变得更聪明,以不同的方式使用训练数据和测试数据,以减少过拟合的风险。本文将讨论其中一种流行的堆叠使用方法。

减少过拟合的策略

为了减少过拟合,可以将训练数据随机分成10个部分。然后,在这10个部分中的9个上训练模型,并在第10个部分上进行预测。例如,使用决策树作为建模技术,在第2部分到第10部分的数据上训练模型,并在第1部分上进行预测。这样,每个预测都来自一个未曾见过相同训练数据点的模型。对于测试数据集,使用整个训练数据集来训练模型,并在测试数据上进行预测。

堆叠模型的变体

创建了10个模型来获取训练数据的预测,并创建了第11个模型来获取测试数据的预测。所有这些模型都是决策树模型。这样,就得到了一组预测,相当于模型M1的预测。可以使用相同的方法,使用第二种建模技术(例如KNN),并对测试数据集运行第11个KNN模型。也可以对第三种建模技术(可能是线性或逻辑回归)做同样的事情。这些成为了新基学习器。现在有了来自三种不同建模技术的预测,同时避免了过拟合的风险。

选择分割数量的理由

可能会问,为什么选择10作为分割的数量?实际上,10这个数字并没有什么特别之处。如果使用少于2或3,不会获得太多好处。如果使用超过15或20,计算量会增加。因此,这是一个在减少过拟合和不大幅增加复杂性之间的权衡。可以选择7或8,没有什么特定的数字要求。通常,人们会根据情况使用5到11或12。在集成学习中,有指导方针,但最终需要根据资源、复杂性和生产指南来做出决策。

堆叠模型的其他变体

讨论了堆叠模型的一些变体。以下是一些其他变体:

  1. 使用给定特征和新预测
  2. 为测试生成多个预测并聚合它们
  3. 增加堆叠模型的层数
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485