随机森林是利用多棵树对样本进行训练和预测的一种分类器,使用的是bagging的思想。
1. 随机森林构造过程
- 若训练集有N个样本,则有放回的随机选择N个样本作为一个子训练集
- 在所有的M个特征中随机选择m个特征,结合步骤1中的子训练集训练当前树
- 每棵树都尽最大程度生长,没有剪枝过程
2. 随机森林优、缺点
1. 优点
- 训练速度快,训练时各个树之间是独立的,可以并行训练
- 在训练过程中,能够监测到feature间的互相影响
- 能处理高维度的数据,不用做特征选择
- 随机样本和随机特征两个随机性的引入,使得随机森林不容易过拟合
-
2. 缺点
-
3. 随机森林与GBDT的异同
相同:
都由多棵树组成
-
不同:
组成随机森林的树可以并行生成,而GBDT是串行生成
- 随机森林的结果是多数表决表决的,而GBDT则是多棵树累加之和
- 随机森林对异常值不敏感,而GBDT对异常值比较敏感
- 随机森林(bagging)是通过减少模型的方差来提高性能,而GBDT(boosting)是减少模型的偏差来提高性能的
随机森林不需要进行特征归一化。而GBDT则需要进行特征归一化(gbdt、xgb、lgb等是在上一棵树的基础上通过梯度下降求最优解,而归一化能加快梯度下降优化速度,所以它们需要归一化)都不需要进行归一化,虽然GBDT求了梯度,但是并不进行梯度下降