上一节学习了决策树:https://blog.csdn.net/qq_35946969/article/details/85039097
最后说到提升决策树的性能,集成就是非常强大的解决方案。
借助一个图,直观的了解集成学习:
Bagging
Bagging是集成个体学习器的一种方式,它的思想十分简单:
a.对原始样本进行有放回采样,得到一个样本子集,用这个样本子集去训练,得到一个学习器。
b.重复以上步骤,得到n个样本子集,训练出n个学习器。
c.预测目标样本时,用这n个学习器进行投票法(分类问题中)、平均值法(回归问题中)等方法。
Random Fores(随机森林,RF)
随机森林时Bagging方法的典型代表,同时也是决策树的提升优化。
随机森林的过程:(1)、从总样本中有放回的随机采样,得到m组样本子集。
(2)、在m组样本子集中,各自分别随机选择K个特征值作为本子集的训练特征,训练出m个决策树。
(3)、predict——以m个弱分类器预测的结果投票或者取平均值。
以上即是随机森林的思想,sklearn的实现中,需要调整的参数一般是决策树的数目(50~100),特征数量K,结果的预测的方法以及决策树中的一些参数。
Extra Tree
Extra Tree 是随机森林的一个变种,不常用。但是在随机森林都过拟合的情况下,可以尝试这个算法。
Extra Tree和随机森林的主要区别如下:
(1)、RF用于训练的样本子集是随机采样的,而Extra Tree每次都直接使用原始样本。
(2)、RF特征选择使用的是最优选择(即使用信息增益、基尼系数等选择),而Extra Tree则是使用随机选择的方式。因为是随机选择,所以一般Extra Tree生成的决策森林一般比较大,方差较小,泛化能力强。
Totally Random Tree Embedding(TRTE)
TRTE不是分类回归算法,而是一种非监督的数据转化方式,可以将低维的数据映射到高维,从而让高维的数据更好得用于分类回归模型。。
Isolation Forest(IForest)
一种异常点检测算法。