首页 / 算法 / 集成算法(随机森林)【知识整理】
集成算法(随机森林)【知识整理】
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了集成算法(随机森林)【知识整理】,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3539字,纯文字阅读大概需要6分钟。
内容图文
![集成算法(随机森林)【知识整理】](/upload/InfoBanner/zyjiaocheng/839/dbe3353eeba84ec7bb02dd568ceaf9ae.jpg)
集成算法·随机森林的原理介绍(分析基础)
综述
整理一些关于数据分析的知识:本章为集成算法(随机森林)的原理介绍,具体的实现代码在下一章的titanic获救数据分析中具体讲述。
Ensemble Learning
- 目的:让机器学习的效果更好。例如:单个决策树模型预测的准确性不太高,如果我们同时采用50棵决策树时可能达到的效果就比较好了。
- 典型的两个模型:
1、Bagging:训练多个分类器取平均值f(x)=M1?m=1∑M?fm?(x)
2、Boosting:从弱学习器开始加强,通过加权来进行训练Fm?(x)=Fm?1?(x)+argminh?i=1∑n?L(Fm?1?(xi?)+h(xi?))(加入一棵树后,效果上升)
3、Stacking:聚合多个分类或回归模型(简单来说就是用很多个预测模型对数据进行预测,再将所有的预测值与实际值做线性回归,得到各个预测模型的权重,最后使用整个预测系统进行预测的方式)
Bagging模型
- 全称:bootstrap aggregation (简单说就是并行的训练一堆分类器),最典型的代表就是随机森林
- 随机处理:为了使得每次分类器得到的结果都不一样,我们通常采用随机选取60%-80%的样本和一定数据的特征,作为一个分类器的分类输入。注意:同一个模型中样本选取比例相同,特征值选取的数量相同
- 森林:就是将多个分类器(决策树)并行放在一起,注意:并是树的数量越多越好有时候当数量达到一定值时,效果可能很难提升,甚至会下降
Random Forest
- 构造树模型:由于二重随机性,使得每次树基本上都不会一样,最终的结果也会有区别
- 树模型:每个树模型中我们都进行随机选取输入,是保证泛化能力,如果每棵树都一样就没有实际意义了。
- 模型优势:
1、它能处理很高纬度的数据,并且不用做特征选择(也可以做)
2、在训练完后,它能够给出重要性较高的feature
3、容易做成并行化方法,速度比较快
4、可以进行可视化操作(但是当树过于庞大时不建议) - 拓展部分(随机森林如何判断feature重要性)
现有A,B,C,D这4个特征这时候我们做随机森林的模型:A+B+C+D→E1?
当我们需要判断A特征的重要性时,我们可以将A中的数据用噪音数据代替掉,我们用A′表示,在应用模型A′+B+C+D→E2?
此时我们就得到了对于特征A的两个结果值,如果这两个结果值得偏差很小,那我们认为A对回归的作用是微乎其微的;反之,A有具体的作用。
KKN
该方法不太适合,使用这种方法很难去随机让模型的泛化能力变强。(具体介绍之后补充)
Boosting模型
该模型典型代表有Adaboost,Xgboost后者在以后哦的数据分析中具体说明。
Adaboost
Adaboost会根据前一次的分类效果调整数据的权重
- 具体实现方式:如果一个数据在这次分错了,那么在下一次我就会给它更大的权重
- 最终结果:每个分类器根据自身的准确性来确定各种的权重,再结合
- 实例:
0 | 1 | 2 | 3 | 4 |
---|---|---|---|---|
0.2 | 0.2 | 0.2 | 0.2 | 0.2 |
开始我们给这些数据的权重是相同的,当进行预测后:
0 | 1 | 2 | 3 | 4 |
---|---|---|---|---|
0.2 | 0.2 | 0.2 | 0.2 | 0.2 |
√ | × | √ | √ | √ |
发现 1 数据出错了,此时我们再调成权重:
0 | 1 | 2 | 3 | 4 |
---|---|---|---|---|
0.1 | 0.6 | 0.1 | 0.1 | 0.1 |
大致上是这样一个思想。然后每个分类器都会有优劣,好的分类器权重越大,差的越小。
Stacking模型
- 堆叠思想:简单粗暴,直接用很多个回归模型套数据,分类器可以多种多样(KNN,SVM,RF等等)
- 分阶段:第一阶段每个模型得出各自的结果,第二阶段将用前一阶段结果进行训练得出模型。
大致思想: - 第一阶段:单独预测
model | 1 | 2 | 3 | 4 |
---|---|---|---|---|
RF | 1 | 0 | 1 | 0 |
LR | 1 | 0 | 1 | 0 |
SVM | 1 | 1 | 0 | 0 |
Xgboost | 0 | 0 | 1 | 0 |
第二阶段:结果训练
?????1110?0010?1101?0000??????LR?(1?0?1?0?)(2)
小结
如果数据分析时没有太好的方法做回归,推荐先使用随机森林看看效果。此外,集成算法看着比较高级,适合数学建模使用。具体的实现方式,在titanic分析中展示。
内容总结
以上是互联网集市为您收集整理的集成算法(随机森林)【知识整理】全部内容,希望文章能够帮你解决集成算法(随机森林)【知识整理】所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。