在我看来,集成学习总是会比仅使用单一学习假设提供更好的预测性能。
那么,为什么我们不一直使用它们呢?
我的猜测可能是因为计算限制?(即便如此,我们使用弱预测器,所以我不知道)。
在我看来,集成学习总是会比仅使用单一学习假设提供更好的预测性能。
那么,为什么我们不一直使用它们呢?
我的猜测可能是因为计算限制?(即便如此,我们使用弱预测器,所以我不知道)。
一般来说,它总是表现得更好是不正确的。有几种集成方法,每种方法都有自己的优点/缺点。使用哪一个,然后取决于手头的问题。
例如,如果您的模型具有高方差(它们过度拟合您的数据),那么您可能会从使用 bagging 中受益。如果您有偏差模型,最好将它们与 Boosting 结合使用。也有不同的策略来形成合奏。这个话题太广泛了,无法在一个答案中涵盖它。
但我的观点是:如果你在设置中使用了错误的集成方法,你就不会做得更好。例如,将 Bagging 与有偏见的模型一起使用不会有帮助。
此外,如果您需要在概率环境中工作,集成方法也可能不起作用。众所周知,Boosting(以最流行的形式,如 AdaBoost)提供的概率估计很差。也就是说,如果您希望有一个模型可以让您对数据进行推理,而不仅仅是分类,那么使用图形模型可能会更好。
你应该 !如果您指的是模型集合(也称为混合、分段、堆叠)。不幸的是,合奏背后的意义相当模糊。基于集成(随机森林......)的模型本身可能不会比其他模型(线性回归,神经网络)表现更好。
在他的文章:Stacked generalization (1992) 中,David H. Wolpert 说:
结论是,对于几乎任何现实世界的泛化问题,都应该使用某种版本的堆叠泛化来最小化泛化错误率。
直到今天,这仍然是正确的。
但是,这些模型比单个模型更难调整和发布。它们还具有更长的预测时间,因为您可能需要数百个模型的预测。而且,即使他们有更好的预测,准确度的增加也可能不值得麻烦。
在看到关于集成学习的各种问题后,我写了为什么模型阶段工作探索了他们成功的原因。