{Python中的[随机森林]是增强算法吗?

时间:2018-10-31 06:36:56

标签: python random-forest xgboost gradient-descent boosting

我正在寻找随机森林和梯度增强之间的主要区别,我不知道随机森林是否使用增强技术,如果不使用,为什么。谢谢!

2 个答案:

答案 0 :(得分:1)

模型构建故事分为两个部分。他们是

1。如何进行培训和测试?

2。哪种算法用于预测?

通过理解以上两个问题,可以轻松理解随机森林和增强算法之间的区别。

Random Forest使用引导法进行训练/测试(上述Q1)和决策树进行预测(上述Q2)。自举只是意味着从数据集中生成随机样本进行替换。每个自举的样本都有一个用于测试的对应保留或“袋外”样本。这意味着,如果您生成100个自举样本,则每次都会得到一组预测。最终预测只是所有100个预测的平均值。

在使用增强技术时,我们基本上只关注上面的Q1。我们可以自由使用任何算法……它可以是决策树,NN或KNN或SVM。现在,让我们看看这里的培训/测试方式。增强方法还会产生多个随机样本,但是要更加谨慎。随后的样本取决于之前样本中记录的权重,该权重无法正确预测-因此称为弱学习者。最终预测也不是所有100个预测的简单平均值,而是加权平均值。

希望这会有所帮助,随机森林和增强是两种很难快速掌握的强大高级方法。干杯!

有关进一步的知识,您可以参考以下youtube链接:

  1. https://www.youtube.com/watch?v=2Mg8QD0F1dQ&feature=youtu.be

  2. https://www.youtube.com/watch?v=GM3CDQfQ4sw&feature=youtu.be

希望有帮助!

答案 1 :(得分:0)

不。

差异是微妙的,但很重要-它的装袋(Bootstrap聚合)算法。 Random Forrest中的重采样是随机的,而Boosting中的重采样不是随机的。

混淆可能来自事实,AdaBoost(提升算法)可以在几次优化迭代后使用RF。