1.什么是随机森林
随机森林是将多颗决策树整合成森林,并合起来用来预测最终的结果。这里提现了集成学习(Ensemble)的思想
所谓集成学习(ensemble)即,为了解决单个模型或某一组参数模型固有的缺陷,从而整合起更多的模型,取长补短,避免局限性。
2.随机森林算法原理
(1)自助法(bootstrap)
即从样本自身中获得很多可用的同等规模的新样本,从自己中产生和自己类似的,所以叫做自助,即不需要借助其他样本数据。
例如有一个大小为N的样本,采用有放回的随机抽样,抽一个大小为N的新样本(这个样本里面可能有重复的),重复m次,即可得到m个大小为N的新样本。
自助法在样本较小的情况时很有用,因为当样本较小时,由于还要拿一部分数据集来做验证集,因此样本更小了,而自助法不会降低训练规模,又能留出验证集。
自助法能留多少验证集---(包外估计:out-of-bag estimate)
可以做个简单的估计,样本在m此采样中均不被采到的概率是(1-1/m)^m,取极限为
因此,假定数据集为D,D'为选中的样本的集合,因此知道有36.8%比例的样本不会被选中,即D-D‘,可用来做验证集。’
以这些为验证集的方式叫做包外估计(out-of-bag estimate)
(2)bagging(全称bootstrap aggregating:即套袋法)
bootstrap 中文为引导,aggregating为聚集,意思为自助抽样集成。这种方法将数据集分成m个新的训练集,然后在每一个训练集上构建一个模型,各自不相干,最后预测的时候将m个模型的结果进行整合,得到最终的结果,整合的方式就是:分类用majority voting,回归用均值。
如下就是随机分类算法模型,包含了bootstrap自助法生成多个模型,用bagging实现分类投票,回归均值。
下面是将决策树与这些算法框架进行结合所得到的新的算法:
https://www.cnblogs.com/liuwu265/p/4690486.html
1)Bagging + 决策树 = 随机森林
2)AdaBoost + 决策树 = 自适应提升树
3)Gradient Boosting + 决策树 = GBDT
reference
https://blog.csdn.net/edogawachia/article/details/79357844
https://blog.csdn.net/weixin_43336281/article/details/88883762
https://baijiahao.baidu.com/s?id=1612329431904493042&wfr=spider&for=pc