其他分享
首页 > 其他分享> > 随机森林, Random Forest

随机森林, Random Forest

作者:互联网

我们前边提到,随机森林是一种很灵活实用的方法,它有如下几个特点:

————————————————
原文链接:https://blog.csdn.net/zhongjunlang/article/details/79488955

 

随机森林中的随机是什么意思?
随机性主要体现在两个方面:

  1. 随机采样:随机森林在计算每棵树时,从全部训练样本(样本数为n)中选取一个可能有重复的、大小同样为n的数据集进行训练(即booststrap采样)。
  2. 特征选取的随机性:在每个节点随机选取所有特征的一个子集,用来计算最佳分割方式。

————————————————
原文链接:https://blog.csdn.net/zhongjunlang/article/details/79488955

 

 

特征重要性评估

用随机森林进行特征重要性评估的思想其实很简单,说白了就是看看每个特征在随机森林中的每颗树上做了多大的贡献,然后取个平均值,最后比一比特征之间的贡献大小。

好了,那么这个贡献是怎么一个说法呢?通常可以用基尼指数(Gini index)或者袋外数据(OOB)错误率作为评价指标来衡量。

1 袋外数据错误率 (原文链接:https://blog.csdn.net/XindiOntheWay/article/details/82077651)
计算某个特征X的重要性时,具体步骤如下:

1)对每一颗决策树,选择相应的袋外数据(out of bag,OOB)​计算袋外数据误差,记为$errOOB_1$。

所谓袋外数据是指,每次建立决策树时,通过重复抽样得到一个数据用于训练​决策树,这时还有大约1/3的数据没有被利用,没有参与决策树的建立。这部分数据可以用于对决策树的性能进行评估,计算模型的预测错误率,称为袋外数据误差。

​这已经经过证明(?)是无偏估计的,所以在随机森林算法中不需要再进行交叉验证或者单独的验证集来获取测试集误差的无偏估计

​2)随机对袋外数据OOB所有样本的特征X加入噪声干扰(可以随机改变样本在特征X处的值),再次计算袋外数据误差,记为$errOOB_2$。

3)​假设森林中有$N$棵树,则特征X的重要性=$\sum_{i=1}^N (errOOB_{2, i}−errOOB_{1, i}) / N$。这个数值之所以能够说明特征的重要性是因为,如果加入随机噪声后,袋外数据准确率大幅度下降(即$errOOB_2$上升),说明这个特征对于样本的预测结果有很大影响,进而说明重要程度比较高。

​2 特征选择 (原文链接:https://blog.csdn.net/zrh_CSDN/article/details/81395735)

在特征重要性的基础上,特征选择的步骤如下:

1)计算每个特征的重要性,并按降序排序

2)确定要剔除的比例,依据特征重要性剔除相应比例的特征,得到一个新的特征集

3)用新的特征集重复上述过程,直到剩下m个特征(m为提前设定的值)。

4)根据上述过程中得到的各个特征集和特征集对应的袋外误差率,选择袋外误差率最低的特征集。


 

标签:特征,errOOB,Random,袋外,随机,Forest,重要性,森林
来源: https://www.cnblogs.com/raylan/p/15142271.html