Scikit Learn中不确定的RandomForest文档

时间:2015-02-09 14:25:13

标签: python scikit-learn random-forest

1.9.2.3部分的Scikit-Learn http://scikit-learn.org/stable/modules/ensemble.html#id6的整体方法文档中。参数我们读到:

  

(...)当与min_samples_split = 1(即完全开发树木时)一起设置max_depth = None时,通常也会达到最佳结果。请记住,这些值通常不是最佳的。应始终交叉验证最佳参数值。

那么最佳结果和最佳结果之间有什么区别?我认为通过最佳结果,作者意味着最佳的交叉验证预测结果。

  

此外,请注意默认情况下,bootstrap样本在随机林中使用(bootstrap = True),而默认策略是使用原始数据集构建额外树(bootstrap = False)。

我通过以下方式理解这一点:默认情况下,在Scikit-Learns实现中使用bootstrapping,但默认策略是 not 使用bootstrapping。如果是,那么默认策略的来源是什么?为什么它不是实现中的默认策略?

1 个答案:

答案 0 :(得分:3)

我同意第一句话是自相矛盾的。也许以下会更好:

  

使用完全开发的树(max_depth = None和min_samples_split = 1)也经常达到最佳效果。请记住,这些值通常不能保证是最佳的。应始终对最佳参数值进行交叉验证。

对于第二个引用,它将随机林bootstrapRandomForestClassifier的{​​{1}}参数的默认值与类{{1}中实现的极随机树进行比较}和RandomForestRegression。以下可能更明确:

  

此外,请注意默认情况下,bootstrap样本在随机林中使用(bootstrap = True),而对于构建额外树,默认策略是使用原始数据集(bootstrap = False)。

如果您发现这些配方更清楚易懂,请随时提交带有修复的PR。