当前位置: 首页 > 网络应用技术

机器学习的RandomForestClassifier

时间:2023-03-07 18:33:51 网络应用技术

  整体学习现在是一种非常受欢迎的机器学习算法。它不是单独的机器学习算法,而是在数据上构建多个模型以集成所有模型的建模结果。集成算法将考虑多个评估者的建模结果,并在摘要后获得全面的结果以获得更好的回归。或分类性能比单个模型。

  将多个模型集成到集成评估设备(集合估计器)中,并且形成集成评估器的每个模型都称为基本估计器。

  一般而言,集成算法有三种类型:装袋,增强和堆叠。

  装袋方法的核心思想是建立多个独立评估者,然后为其预测做出平均或大多数投票原则,以确定综合评估者的结果。袋子的代表性模型是一个随机的森林。在促销方法中,基础审稿人是相关的,是按顺序建立的。核心思想是结合弱评估设备的功能,一次又一次地预测评估样品的难度,从而构成了强大的评估设备。增强方法的代表性模型包括Adaboost和Adaboost和梯度饲养树木。

  基本审阅者的数量。此参数对随机森林模型准确性的影响是单调的。n_estimators越大,模型的效果就越好,但是任何模型都有制定边界。在N_Estimators达到一定程度之后,随机森林的准确性通常不会上升或开始波动,并且N_Estimators越大,所需的计算和记忆越大,训练的训练时间将越来越多。该参数,应在训练难度和模型的效果之间达到平衡

  随机森林结果高于决策树的结果

  有10个子验证,尽管决策树的结果有时与随机森林相同,但通常,随机森林的结果明显优于决策树。

  当随机_STATE固定时,随机森林将作为一组固定树生成,但是每棵树仍然不一致,消除了每个结果的随机性。我们可以证明,当这种随机性更大时,袋子的效果会更好更好的是,当与袋子方法集成时,基本分类器应独立且不同。但是这种方法的局限性非常强。当我们需要数千棵树时,数据可能无法提供数千个功能,让我们尽可能多地构建树木。除了Random_state,我们还需要其他随机性。

  为了使基本分类器尽可能多地使用不同的训练集进行训练,并且该袋方法用于通过将随机抽样技术放置回来来形成不同的训练数据。Bootstrap是用于控制采样技术的参数。在包含N样品的原始训练浓度中,我们进行随机样品,每个样品样本,然后将样品放回原始训练集中,然后在绘制下一个样品之前,就是SayCollect,以这种方式收集n次,并最终获得一个由n个样本组成的自我服务集,该样本与原始培训集一样大。

  因为它是随机的采样,所以此自我服务集和原始数据集是不同的,而其他示例集也不同。

  这样,它就有取之不尽的使用,而自我服务集则彼此不同。这些自助服务集用于培训我们的基本分类器,我们的基本分类器自然不同。这样,将浪费一些培训数据。这些数据被调用 - 袋数据(从包数据中,缩写为OOB)。除了在开始时进行的测试集外,这些数据还用作集成算法集合集。

  换句话说,当使用随机森林时,我们不能将测试集和训练集分开,只需使用-bag数据来测试模型。当然,这不是绝对的。当n_estimators不够大时,很可能不会出现数据外,并且自然无法使用OOB数据来测试模型。

  如果要使用删除数据进行测试,则需要在实例化时将OOB_SCORE参数调整为true。训练后,我们可以使用另一个随机森林的重要属性:OOB_SCORE_在Bagtest结果的外部查看我们的数据:

  随机森林界面与决策树完全一致,因此仍然有四个常见的接口:应用,拟合,预测和得分。

  此外,有必要注意随机森林的预测界面界面。该接口返回将与每种类型的标签样本相对应的标签类型的概率。标签有几类返回几个概率。

  如果这是第二类问题,则Prective_proba返回的值大于0.5,分为1,小于0.5,并将其分为0。

  传统的随机森林是袋子方法中的规则,而平均或少数人要确定大多数人以确定整合。Sklearn中的随机森林是返回与每个样品相对应的平均预测_proba的概率。样本分类。

  **在使用随机森林之前,请确保检查用于形成随机森林的分类树是否至少具有预测率的50%。