13集成算法与随机森林
唐宇迪《python数据分析与机器学习实战》学习笔记 13集成算法与随机森林 竞赛题使用较多中准确率较高,三种集成算法 1.Bagging模型 (并形算法) 并行训练多棵树,结果累加取平均。随机森林构造了N棵树,最终结果把树进行分类取众数。 二重随机性:数据采样随机性(例如100个有放回选60-80个),特征随机性(寻则部分特征) feature比较原理,举例:比如ABCD四个特征,B为年龄(36、27、65…),用着四个特征建模错误率为err1;后面对B特征进行破坏加上噪音,替换为垃圾值(0.1、68…),然后继续用这四个特征建模,错误率为err2; 如果err1=err2,则B特征没啥用。如果err2>>err1,则B重要。最后特征的重要性排序如上图右下角。 其他算法的Bagging模型,例如KNN模型缺点比较明显。公认的集成算法还是是上面的树模型。 树模型的树数量对效果的影响,数量增加效果浮动。(虽然理论上数量越多泛化能力越强) 2. Boosting模型 (串形算法) 从弱学习器开始,例如实际1000,第一棵A树预测950,差异50,让这个50值越小越好;第二棵B树,为了弥补50误差,就预测残差50,可能预测为30;第三棵C树,1000-950-30=20,就预测残差20,可能预测为18.最终预测值为998,实际为1000. 典型代表:AdaBoost,Xgboost