随机森林是一种集成学习方法,基本思想是把几棵不同参数的决策树(参考:Python+sklearn决策树算法使用入门)打包到一起,每棵决策树单独进行预测,然后计算所有决策树预测结果的平均值(适用于回归分析)或所有决策树“投票”得到最终结果(适用于分类)。在随机森林算法中,不会让每棵树都生成最佳的节点,而是在每个节点上随机选择一个特征进行分裂。
扩展库sklearn在ensemble模块中提供了随机森林分类器RandomForestClassifier和随机森林回归器RandomForestRegressor。本文重点介绍随机森林分类器的用法,该类构造方法语法为
__init__(self, 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_decrease=0.0, min_impurity_split=None, bootstrap=True, oob_score=False, n_jobs=1, random_state=None, verbose=0, warm_start=False, class_weight=None)
RandomForestRegressor类构造方法常用参数以及RandomForestRegressor类对象常用方法如下面的两个表所示。