随机森林

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

随机森林

为了克服决策树容易过度拟合的缺点,Breiman(2001)提出了一种新的组合分类器算法——随机森林算法(Random Forests , RF)。他把分类决策树组合成随即森林,即在变量(列)的使用和数据(行)的使用上进行随机化,生成很多分类树,再汇总分类树的结果。随机森林在运算量没有显著提高的前提下提高了预测精度,对多元共线性不敏感,可以很好地预测多达几千个解释变量的作用,被称为当前最好的算法之一。

基本原理

1.随机森林的定义

随机森林是一个由决策树分类器集合{}

θ构成的组合分类器模

x

,2,1

k

h

(=

),

,

k

型,其中参数集{}

θ是独立同分布的随机向量,x是输入向量。当给定输入向量

k

时每个决策树有一票投票权来选择最优分类结果。每一个决策树是由分类回归树(CART)算法构建的未剪枝的决策树。因此与CART相对应,随机森林也分为随机分类森林和随机回归森林。目前,随机分类森林的应用较为普遍,它的最终结果是单棵树分类结果的简单多数投票。而随机回归森林的最终结果是单棵树输出结果的简单平均。

2.随机森林的基本思想

随机森林是通过自助法(Bootstrap)重复采样技术,从原始训练样本集N 中有放回地重复随机抽取k个样本生成新的训练集样本集合,然后根据自助样本生成k决策树组成的随机森林。其实质是对决策树算法的一种改进,将多个决策树合并在一起,每棵树的建立依赖一个独立抽取的样本,森林中的每棵树具有相同的分布,分类误差取决于每一棵树的分类能力和它之间的相关性。

3.随机森林的生成过程

根据随机森林的原理和基本思想,随机森林的生成主要包括以下三个步骤:首先,通过Bootstrap方法在原始样本集S中抽取k个训练样本集,一般情况下每个训练集的样本容量与S一致;

其次,对k个训练集进行学习,以此生成k个决策树模型。在决策树生成过

程中,假设共有M个输入变量,从M个变量中随机抽取F个变量,各个内部节点均是利用这F个特征变量上最优的分裂方式来分裂,且F值在随机森林模型的形成过程中为恒定常数;

最后,将k个决策树的结果进行组合,形成最终结果。针对分类问题,组合方法是简单多数投票法;针对回归问题,组合方法则是简单平均法。

4.重要参数

(1)随机森林中单棵树的分类强度和任意两棵树间的相关度。在随机森林中,每一棵决策树的分类强度越大,即每棵树枝叶越是茂盛,则整体随机森林的分类性能越好;树与树之间的相关度越大,即树与树之间的枝叶相互穿插越多,则随机森林的分类性能越差。减少树之间的相关度可以有效地降低随机森林的总体误差率,同时增加每棵决策树的强度。因为它是由Bootstrap方法来形成训练集的,并且随机抓取特征来分裂,并且不对单棵树进行剪枝,使得随机森林模型能够具有较高的噪声容忍度和较大的分类强度,同时也降低了任意两棵树之间的相关度。

(2)OOB估计。应用Bootstrap方法时,在原始样本集S中进行k次有放回的简单随机抽样,形成训练样本集。在使用Bootstrap对S进行抽样时,每个样本未被抽取的概率p为()n n/1-1。当n足够大时,p=0.368,表明原始样本集S 中接近37%的样本不会出现在训练样本集中,这些为被抽中的样本称为OOB (Out of Bag)。利用这部分样本进行模型性能的估计称为OOB估计,这种估计方法类似于交叉验证的方法。在随机分类模型中,它是分类模型的出错率;在随机回归模型中,它是回归模型的残差。

(3)对模型中变量重要性的估计。随机森林计算变量重要性有两种方法:一种是基于OOB误差的方法,称为MDA(Mean Decrease Accuracy);另一种是基于Gini不纯度的方法,称为MDG(Mean Decrease Gini)。两种方法都是下降的越多表示变量越重要。

MDA具体描述如下:

第一,训练随机森林模型,利用袋外样本数据测试模型中每棵树的OOB误差;

第二,随机打乱袋外样本数据中变量v的值,重新测试每棵树的OOB误差;

第三,两次测试的OOB误差的差值的平均值,即为单棵树对变量v重要性

的度量值,计算公式为:MDG具体描述如下:

()

∑-

=

t

t

t

errOOB

errOOB

ntree

v

MDA'

1

)

(

基于Gini 的变量重要性是用变量v 导致的Gini 不纯度的降低来衡量的。在分类节点t 出,Gini 系数不纯度的计算公式为:

其中Q 代表目标变量的类别总数,)/(t k p 代表在节点t 中目标变量为第k 类的条件概率。根据公式计算每棵树的Gini 不纯度下降值,再将所有树的结果进行平均。

5.随机森林模型的优缺点

优点:

(1)相对于其他算法,随机森林具有极高的预测精度,且不易过度拟合;

(2)能处理海量数据,对高维数据,无需进行变量删减或筛选;

(3)模型内部产生的OOB 估计具有无偏性;

(4)对噪声不敏感,具有较好的容噪能力。

缺点:

(1)对少量数据集和低维数据集的分类不一定可以得到很好的效果。因为在不断重复的随机选择过程中,可供选择的样本很少,会产生大量的重复选择,可能让最有效的选择不能表现出优势;

(2)执行速度虽然比Boosting 等快,但是比单个的决策树慢很多。

()∑=-=Q

K t k p t G 12/1)(

相关文档
最新文档