1. 自助采样法的步骤是:给定包含 个样本的数据集:

      • 先随机取出一个样本放入采样集中,再把该样本放回原始数据集。
      • 这样经过 三、Bagging - 图1 次随机采样操作,得到包含 个样本的采样集。

      初始训练集中有的样本在采样集中多次出现,有的则从未出现。一个样本始终不在采样集中出现的概率是 三、Bagging - 图2

      根据 ,因此初始训练集中约有 63.2% 的样本出现在了采样集中。

    2. 自助采样法给Bagging算法带来了额外的优点:由于每个基学习器只用初始训练集中约 63.2% 的样本来训练,剩下的约 36.8% 的样本可用作验证集来对泛化性能进行包外估计。

    3. Bagging的基本流程:

      • 经过 三、Bagging - 图3 轮自助采样,可以得到 个包含 三、Bagging - 图4 个训练样本的采样集。
      • 然后基于每个采样集训练出一个基学习器。
    4. 在使用 Bagging学习器进行预测时:

      • 分类任务采取简单投票法,取每个基学习器的预测类别的众数。
      • 回归任务使用简单平均法,取每个基学习器的预测值的平均。
      • Bagging主要关注降低方差,它能平滑强学习器的方差。

        因此它在非剪枝决策树、神经网络等容易受到样本扰动的学习器上效果更为明显。

      • Boosting 主要关注降低偏差,它能将一些弱学习器提升为强学习器。

        因此它在SVMknn 等不容易受到样本扰动的学习器上效果更为明显。

    3.2 随机森林

    1. 随机森林 是Bagging的一个扩展变体。

    2. 随机森林对Bagging做了小改动:

    3. 随机森林在以决策树为基学习器构建Bagging集成模型的基础上,进一步在决策树的训练过程中引入了随机属性选择。

      • 传统决策树在选择划分属性时,是在当前结点的属性集合(假定有 个属性)中选择一个最优属性。

      • 随机森林中,对基决策树的每个结点,先从该结点的属性集合中随机选择一个包含 三、Bagging - 图5 个属性的子集,然后再从这个子集中选择一个最优属性用于划分。

        • 如果 ,则基决策树的构建与传统决策树相同。
        • 如果 三、Bagging - 图6,则随机选择一个属性用于划分。
        • 通常建议 。
    4. 随机森林的优点:

      • 训练效率较高。因为随机森林使用的决策树只需要考虑所有属性的一个子集。
      • 随机森林简单、容易实现、计算开销小。
    5. 但是树的数量增加并不会纠正偏差,因此随机森林还是会有过拟合。