Random Forest

自助采样法

给定包含m 个样本的数据集D , 我们对它进行采样产生数据集D':

  1. 每次随机从D 中挑选一个样本将其拷贝放入D'
  2. 再将该样本放回初始数据集D 中,使得该样本在下次采样时仍有可能被采到;
  3. 这个过程重复执行m 次,我们就得到了包含m个样本的数据集D'

通过自助来样,初始数据集D 中约有36.8% 的样本未出现在采样数据集D'中.于是我们可将D' 用作训练集,Random Forest用作测试集;这样我们仍有数据总量约1/3 的样本没在训练集中出现, 成为"包外估计" .

  • 优点:自助法在数据集较小、难以有效划分训练/测试集时很有用;此外,自助法能从初始数据集中产生多个不同的训练集,这对集成学习等方法有很大的好处.
  • 缺点:自助法产生的数据集改变了初始数据集的分布,这会引入估计偏差.在初始数据量足够时,留出法和交叉验证法更常用一些.

Bagging

Bagging是并行式集成学习方法最著名的代表,它基于我们在前面介绍的自助采样法。Bagging基本流程:

输入: 训练集D, 基学习算法Random Forest,训练轮数T.

  1. for t = 1,2,...,T do
  2.      Random Forest
  3. end for

输出:Random Forest

在对预测输出结果结合时,通常对分类任务使用简单投票法,对回归任务使用简单平均法。若同时出现票数相同的两类,可进一步考察学习器投票的置信度来确定最终获胜者。从偏差-方差角度来看,Bagging算法主要关注降低方差,因此在不剪枝决策树、神经网络等易受样本扰动的学习器上效用更为明显。

Bagging通过在构建模型的过程中引入样本随机性,来减少基估计器的方差.因为 bagging 方法可以减小过拟合,所以通常在强分类器和复杂模型上使用时表现的很好(完全决策树),相比之下 boosting 方法则在弱模型上表现更好(浅层决策树)

随机森林

RF在以决策树为基学习器构建Bagging集成的基础上,并在在决策树的训练过程中引入了随机属性选择: 传统决策树在选择划分属性时是在当前结点的属性集合中选择一个最优属性;而在RF中,对基决策树的每个结点,先从该结点的属性集合中随机选择一个包含k个属性的子集,然后再从这个子集中选取一个最优属性用于划分。这里k控制了随机性的引入程度,若k=d则基决策树的构建与传统决策树相同;若令k=1,则是随机选择一个属性进行划分。一般推荐Random Forest

 所以与Bagging中基学习器的“多样性”仅通过样本扰动而来不同,随机森林中基学习器的多样性不仅来自样本扰动,还来自属性扰动,这就使得最终集成的泛化性能可通过个体学习器之间差异度的增加而进一步提高。

结合策略

学习器结合三个好处:

  1. 统计。学习任务假设空间很大,多个假设在训练集上达到同等性能,此时若用单学习器可能会因为误选而导致泛化性能不佳
  2. 计算。学习算法通过多次运行后进行结合,可降低陷入糟糕局部极小值的风险
  3. 表示。某些学习任务的真实假设可能不在当前学习算法所考虑的假设空间内,而通过结合多个学习器,相应的假设空间有所扩大,有可能学得更好的近似。

Random Forest

假设集成包含T个基学习器Random Forest,其中Random Forest在示例x上的输出为Random Forest。下面介绍对Random Forest进行结合的常见策略:

平均法

对于回归任务的数值型输出Random Forest,常用平均法

  • 简单平均(simple averaging)

                                       Random Forest

  • 加权平均(weighted averaging)

                                      Random Forest

一般而言,在个体学习器性能相差较大时宜使用加权平均;个体学习器性能相近时宜使用简单平均法。

投票法

类别标记集合Random Forest,我们将Random Forest在样本x上的预测输出表示为一个N维向量Random ForestRandom ForestRandom Forest在类别标记Random Forest的输出.

  • 绝对多数投票法: 若某标记得票数过半,则预测为该标记;否则拒绝预测

                              Random Forest

  • 相对多数投票法:即预测为得票最多的标记,若同时有多个标记获得最高票,则随机选取一个

                                             Random Forest

  • 加权投票法(weighted voting)

                                         Random Forest