在RandomForestClassifier
中,max_features
的默认值为sqrt(n_features)
,在RandomForestRegressor
中为n_features
,有什么具体原因吗?
这是一个基于经验结果的启发式算法。平均而言,作为默认设置,为分类设置max_features=sqrt(n_features),为回归设置max_fFeatures=n_feature似乎是一个更好的选择。
这种启发源于本文:http://orbi.ulg.ac.be/bitstream/2268/9357/1/geurts-mlj-advance.pdf
在任何情况下,交叉验证这个参数当然总是一个更好的主意。
注意,您可能需要设置:
max_features = 'sqrt'
而不是建议的:
max_features=sqrt(n_features)
取决于您运行的版本。