随机森林算法(RF)和LightGBM

一、随机森林算法(RF)

1.1、简介

集成学习中,主要分为套袋法(Bagging)提升法(Boosting),其中随机森林属于套袋(bagging)算法。

在机器学习中,随机森林指的是利用多棵树对样本进行训练并预测的一种分类器,包含多个决策树,并且输出的类别由个别树输出的类别的众数而定。

1.2、 Bagging(套袋法)

Bagging的算法过程如下:
1.对原始样本集中使用Bootstraping方法随机抽取n个训练样本,进行k轮抽取,得到k个训练集。(k个训练集之间相互独立,元素可以有重复)
2.对于k个训练集,训练k个模型(根据具体问题而定,比如决策树,knn等)
3.对于分类问题,由投票表决产生分类结果;对于回归问题:由k个模型预测结果的均值作为最后预测结果

1.3、 决策树

决策树是一种基本的分类器,一般是将特征分为两类。构建好的决策树呈树形结构,可以认为是if-then规则的集合,主要优点是模型具有可读性,分类速度快。
在这里插入图片描述

1.4、 随机森林

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

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

  • 缺点:
    ①随机森林中决策树个数很多时,训练需要大量的空间和时间
    ②有许多不好解释的地方

1.5、 相关概念

  • 分裂:在决策树的训练过程中,一次次的将训练数据集分裂成两个子数据集
  • 特征:在分类问题中,输入到分类器中的数据叫做特征
  • 待选特征:在决策树的构建过程中,按照一定次序从全部特征中选取特征。待选特征是在步骤之前还没有被选择的特征的集合

例如,全部的特征是 ABCDE,第一步的时候,待选特征就是ABCDE,第一步选择了C,那么第二步的时候,待选特征就是ABDE。

  • 分裂特征:接待选特征的定义,每一次选取的特征就是分裂特征

例如,在上面的例子中,第一步的分裂特征就是C。因为选出的这些特征将数据集分成了一个个不相交的部分,所以叫它们分裂特征。

二、LightGBM

LightGBM算法:https://zhuanlan.zhihu.com/p/99069186

©️2020 CSDN 皮肤主题: 游动-白 设计师:上身试试 返回首页