机器学习 —— Bagging算法

xiaoxiao2021-02-28  50

Bagging算法

特点:

Boosting是一种框架算法,以随机森林(RDF)算法为代表。采用的是随机有放回的选择训练数据然后构造分类器,最后组合。从原始样本集中使用Bootstraping方法随机抽取n个训练样本,共进行k轮抽取,得到k个训练集。(k个训练集之间相互独立,元素可以有重复)对于k个训练集,我们训练k个模型(这k个模型可以根据具体问题而定,比如决策树,knn等)对于分类问题:由投票表决产生分类结果;对于回归问题:由k个模型预测结果的均值作为最后预测结果。(所有模型的重要性相同)

图示


随机森林算法(Random Forests)

算法的优缺点

随机森林的主要优点是:

具有极高的准确率随机性的引入,使得随机森林不容易过拟合随机性的引入,使得随机森林有很好的抗噪声能力能处理很高维度的数据,并且不用做特征选择既能处理离散型数据,也能处理连续型数据,数据集无需规范化训练速度快,可以得到变量重要性排序容易实现并行化

随机森林的主要缺点是:

当随机森林中的决策树个数很多时,训练时需要的空间和时间会较大随机森林模型还有许多不好解释的地方,有点算个黑盒模型

算法过程

从原始训练集中使用Bootstraping方法随机有放回采样选出m个样本,共进行n_tree次采样,生成n_tree个训练集对于n_tree个训练集,我们分别训练n_tree个决策树模型对于单个决策树模型,假设训练样本特征的个数为n,那么每次分裂时根据信息增益/信息增益比/基尼指数选择最好的特征进行分裂每棵树都一直这样分裂下去,直到该节点的所有训练样例都属于同一类。在决策树的分裂过程中不需要剪枝将生成的多棵决策树组成随机森林。对于分类问题,按多棵树分类器投票决定最终分类结果;对于回归问题,由多棵树预测值的均值决定最终预测结果

图示

转载请注明原文地址: https://www.6miu.com/read-2624632.html

最新回复(0)