上课的时候老师说,随机森林(Random Forest)的随机体现在随机选择一部分特征和一部分的样本来训练很多决策树。我在试着用sklearn里的RandomForestClassifier做一次,结果并没有看到有哪个参数是对应样本的数量的。特征的数量倒是有,是max_features,默认选项是auto,就是每次选根号下总特征数个特征。那到底哪个参数是用来选随机样本的数量的呢?有点着急,谢谢了!
附上RandomForestClassifier的所有参数:
(n_estimators=10, criterion='gini', max_depth=None, min_samples_split=2, min_samples_leaf=1, min_weight_fraction_leaf=0.0, max_features='auto', max_leaf_nodes=None, min_impurity_split=1e-07, bootstrap=True, oob_score=False, n_jobs=1, random_state=None, verbose=0, warm_start=False, class_weight=None)
1个回答
也许你记错了?你说的像是Boosted Trees。随机森林是会有放回地随机选取样本的,但是会选择出和原样本一样数量的样本。
举个栗子,比如你的训练集有5000行20列,我们从这5000行里进行有放回的抽样,抽出5000行,这个就是你的随机样本
SofaSofa数据科学社区DS面试题库 DS面经 相关讨论
sklearn模块里的DecisionTreeClassifier为什么每次结果不同(数据相同的情况下)
怎么得到sklearn里的RandomForestClassifier训练好之后每棵树的叶节点的个数?
sklearn里的RandomForestClassifier和ExtraTreesClassifier有什么区别吗?
lightgbm.LGBMModel和lightgbm.LGBMClassifier该用哪个?
随便看看