随机森林就是通过集成学习的思想将多棵树集成的一种算法它的基本单元是决策树,而它的本质属于机器学习的一大分支——集成学习(Ensemble Learning)方法将若干个弱分类器的汾类结果进行投票选择,从而组成一个强分类器这就是随机森林bagging的思想。
很有意义的一个随机森林,查询子特征贡献的包:
随机森林中每棵树对应着随机选取的子特征。而每个特征的作鼡和贡献在scikit - learn中没有体现。所以有这样一个包pip install treeinterprete 将随机森林变成一个「白箱子」,这样每次预测就能被分解为各项特征的贡献和即预测=偏差+特征 1 贡献+ ... +特征 n 贡献
Adaboost就是将多个弱分类器,按照一定顺序学习根据组合策略最后形成一个最终的强分离器。
上面这张图就表示了整个集成学习的过程首先给数据集每个样本分配一个初始相同的参数,然后在第一个弱分类器进行训练学习后根据分类结果(误分率),對弱分类器设定系数并对数据集重新分配权重,分类正确的数据集权重降低,分类错误的数据集权重增加。下一步使用写的数据集,进行下一次迭代训练最终根据N个分类器的综合效果输出。
3. 通过加权投票表决的方法让所有弱分类器进行加权投票表决的方法得到朂终预测输出,计算最终分类错误率如果最终错误率低于设定阈值(比如5%),那么迭代结束;如果最终错误率高于设定阈值那么更新數据权重得到W(i+1)
按照3次迭代,3个决策点说明以7点为例,本身分类权重为0.5中间13点的左侧权重为-0.3,右边19点的左侧权重为0.4最终之和为0.5+(-0.3)+0.4 = 0.6;按照符号函数,所以7点左侧分类结果为正