首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我是否可以使用RandomForestClassifier创建随机森林,它将由相同的树组成?

我是否可以使用RandomForestClassifier创建随机森林,它将由相同的树组成?
EN

Data Science用户
提问于 2018-07-05 13:13:41
回答 1查看 89关注 0票数 3

根据对问题的回答,我应该能够使用bootstrap = False, max_features = None, random_state = 42参数构建一个具有所有相同树的随机森林。

我写了测试它的快速代码,似乎创建了不同的树。

是否有可能使用RandomForestClassifier创建一个随机森林,从而产生相同的树?

EN

回答 1

Data Science用户

回答已采纳

发布于 2018-07-06 23:23:33

您想要创建一个随机林,其中所有决策树都是相同的。(我相信你正试图把这作为一种教育活动,而不是严肃的事情。:)

你试图通过设置random_state来做到这一点,并引用了我的答案

事实上,正如你所发现的,我的答案并不完全正确。

我编辑了它以添加

虽然这消除了训练的随机性成分,但决策树仍然是不同的。问题是,sklearn组合根据给出的随机状态为每个孩子生成一个新的随机种子。它们不传递相同的random_state。您可以通过从集成基模块(特别是_set_random_states )中检查这条线方法来看到这种情况,后者将random_state传播到组件的子模块中。

如您所见,sklearn使用给RandomForest的RandomForest为每个子节点创建新的随机状态,

代码语言:javascript
复制
for key in sorted(estimator.get_params(deep=True)):
    if key == 'random_state' or key.endswith('__random_state'):
        to_set[key] = random_state.randint(MAX_RAND_SEED)

因此,他们将是不同的。之所以这样做,大概是因为异质性是使集合强大的原因。请注意,这并不是特定于RandomForest,而是任何一个滑雪组合。

对不起,我对你所提问题的回答不正确。如果需要,可以使用随机林实现。那是完全同质的。

票数 4
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/34038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档