理解随机森林

    

随机森林利用随机的方式将许多决策树组合成一个森林,每个决策树在分类的时候投票决定测试样本的最终类别。下面我们再详细说一下随机森林是如何构建的。


随机森林主要包括4个部分:随机选择样本;随机选择特征;构建决策树;随机森林投票分类。


1.随机选择样本


放回采样到N个样本,构成一个新的训练集。注意这里是有放回的采样,所以会采样到重复的样本。详细来说,就是采样N次,每次采样一个,放回,继续采样。即得到了N个样本。

    然后我们把这个样本集作为训练集,进入下面的一步。


2. 随机选择特征


    在构建决策树的时候,我们前面已经讲过如何在一个节点上,计算所有特征的Information Gain(ID3) 或者 Gain Ratio(C4.5),然后选择一个最大增益的特征作为划分下一个子节点的走向。

随机选择m个特征,其中m可以等于sqrt(M),然后计算m个特征的增益,选择最优特征(属性)。注意,这里的随机选择特征是无放回的选择!


所以,随机森林中包含两个随机的过程:随机选择样本,随机选择特征。


3. 构建决策树


Information Gain(ID3) 或者 Gain Ratio(C4.5)。


4. 随机森林投票分类


投票机制,或者该测试样本的最终分类结果。


5. 优缺点分析


优点:

  • 它能够处理很高维度(feature很多)的数据,并且不用做特征选择;
  • 由于随机选择样本导致的每次学习决策树使用不同训练集,所以可以一定程度上避免过拟合;



缺点:

  • 随机森林已经被证明在某些噪音较大的分类或回归问题上会过拟合;
  • 对于有不同级别的属性的数据,级别划分较多的属性会对随机森林产生更大的影响,所以随机森林在这种数据上产出的属性权值是不可信的。