什么是随机森林

2024-05-10 22:12

1. 什么是随机森林

 Bagging是 bootstrap aggregating 。思想就是从总体样本当中 随机取一部分样本进行训练,通过多次这样的结果,进行投票获取平均值作为结果输出 ,这就极大可能的 避免了不好的样本数据,从而提高准确度 。因为有些是不好的样本,相当于噪声,模型学入噪声后会使准确度不高。Bagging降低 Variance ,因此采用的都是强学习器。
    举个例子 :
   假设有1000个样本,如果按照以前的思维,是直接把这1000个样本拿来训练,但现在不一样,先抽取800个样本来进行训练,假如噪声点是这800个样本以外的样本点,就很有效的避开了。重复以上操作,提高模型输出的平均值。
   Random Forest(随机森林)是 一种基于树模型的Bagging的优化版本 ,一棵树的生成肯定还是不如多棵树,因此就有了随机森林,解决 决策树泛化能力弱的 特点。(可以理解成三个臭皮匠顶过诸葛亮)
   而同一批数据,用同样的算法只能产生一棵树,这时Bagging策略可以 帮助我们产生不同的数据集 。 Bagging 策略来源于bootstrap aggregation:从样本集(假设样本集N个数据点)中重采样选出Nb个样本(有放回的采样,样本数据点个数仍然不变为N),在所有样本上,对这n个样本建立分类器(ID3\C4.5\CART\SVM\LOGISTIC), 重复以上两步m次,获得m个分类器 ,最后根据这m个分类器的投票结果,决定数据属于哪一类。
    每棵树的按照如下规则生成: 
   一开始我们提到的随机森林中的“随机”就是指的这里的两个随机性。两个随机性的引入对随机森林的分类性能至关重要。由于它们的引入,使得随机森林 不容易陷入过拟合,并且具有很好得抗噪能力 (比如:对缺省值不敏感)。
   总的来说就是随机选择样本数,随机选取特征,随机选择分类器,建立多颗这样的决策树,然后通过这几课决策树来投票,决定数据属于哪一类( 投票机制有一票否决制、少数服从多数、加权多数 )
   减小 特征选择个数m,树的相关性和分类能力也会相应的降低 ;增大m,两者也会随之增大。所以关键问题是 如何选择最优的m (或者是范围),这也是随机森林唯一的一个参数。
    优点: 
    缺点: 
   根据随机森林创建和训练的特点,随机森林对缺失值的处理还是比较特殊的。
   其实,该缺失值填补过程类似于推荐系统中采用协同过滤进行评分预测,先计算缺失特征与其他特征的相似度,再加权得到缺失值的估计,而随机森林中计算相似度的方法(数据在决策树中一步一步分类的路径)乃其独特之处。
    OOB :
   上面我们提到,构建随机森林的关键问题就是 如何选择最优的m ,要解决这个问题主要依据计算 袋外错误率oob error(out-of-bag error) 。
   bagging方法中Bootstrap每次约有 1/3的样本不会出现在Bootstrap所采集的样本集合中 ,当然也就没有参加决策树的建立,把这1/3的数据称为 袋外数据oob(out of bag) ,它可以用于 取代测试集误差估计方法 。
    袋外数据(oob)误差的计算方法如下: 
    优缺点 :
   这已经经过证明是 无偏估计的 ,所以在随机森林算法中 不需要再进行交叉验证或者单独的测试集来获取测试集误差 的无偏估计。

什么是随机森林

2. 随机森林的介绍


3. 随机森林是用来干嘛的

随机森林本质上属于机器学习的一大分支——集成学习(Ensemble Learning),是将许多棵决策树(Decision Tree)整合成森林并用来预测最终结果的方法。
随机森林顾名思义,是用随机的方式建立一个森林,森林里面有很多的决策树组成,随机森林的每一棵决策树之间是没有关联的。在得到森林之后,当有一个新的输入样本进入的时候,就让森林中的每一棵决策树分别进行一下判断,看看这个样本应该属于哪一类(对于分类算法),然后看看哪一类被选择最多,就预测这个样本为那一类。

随机森林的由来
上世纪八十年代Breiman等人发明分类树的算法(Breiman et al. 1984),通过反复二分数据进行分类或回归,计算量大大降低。2001年Breiman把分类树组合成随机森林(Breiman 2001a),即在变量(列)的使用和数据(行)的使用上进行随机化,生成很多分类树,再汇总分类树的结果。
随机森林在运算量没有显著提高的前提下提高了预测精度。随机森林对多元公线性不敏感,结果对缺失数据和非平衡的数据比较稳健,可以很好地预测多达几千个解释变量的作用(Breiman 2001b),被誉为当前最好的算法之一(Iverson et al. 2008)。

随机森林是用来干嘛的

4. 随机森林算法是什么?


5. 随机森林的优点

随机森林的优点有:1. 对于很多种资料,它可以产生高准确度的分类器。2. 它可以处理大量的输入变量。3. 它可以在决定类别时,评估变量的重要性。4. 在建造森林时,它可以在内部对于一般化后的误差产生不偏差的估计。5. 它包含一个好方法可以估计遗失的资料,并且,如果有很大一部分的资料遗失,仍可以维持准确度。6. 它提供一个实验方法,可以去侦测 variable interactions 。7. 对于不平衡的分类资料集来说,它可以平衡误差。8. 它计算各例中的亲近度,对于数据挖掘、侦测偏离者(outlier)和将资料视觉化非常有用。9. 使用上述。它可被延伸应用在未标记的资料上,这类资料通常是使用非监督式聚类。也可侦测偏离者和观看资料。10. 学习过程是很快速的。

随机森林的优点

6. 随机森林算法是什么?

随机森林是一种比较新的机器学习模型。
经典的机器学习模型是神经网络,有半个多世纪的历史了。神经网络预测精确,但是计算量很大。上世纪八十年代Breiman等人发明分类树的算法(Breiman et al. 1984),通过反复二分数据进行分类或回归,计算量大大降低。
2001年Breiman把分类树组合成随机森林(Breiman 2001a),即在变量(列)的使用和数据(行)的使用上进行随机化,生成很多分类树,再汇总分类树的结果。随机森林在运算量没有显著提高的前提下提高了预测精度。
随机森林对多元共线性不敏感,结果对缺失数据和非平衡的数据比较稳健,可以很好地预测多达几千个解释变量的作用(Breiman 2001b),被誉为当前最好的算法之一(Iverson et al. 2008)。

随机森林优点:
随机森林是一个最近比较火的算法,它有很多的优点:
a、在数据集上表现良好,两个随机性的引入,使得随机森林不容易陷入过拟合。
b、在当前的很多数据集上,相对其他算法有着很大的优势,两个随机性的引入,使得随机森林具有很好的抗噪声能力。
c、它能够处理很高维度(feature很多)的数据,并且不用做特征选择,对数据集的适应能力强:既能处理离散型数据,也能处理连续型数据,数据集无需规范化。

7. 随机森林通俗理解

随机森林通俗理解如下:
要了解随机森林模型,必须首先了解决策树,即随机森林的基本构成元素。我们所有人都在日常生活中使用决策树,即使您不知道这个名字,我也相信您会认识到这一过程。为了说明这一概念,我们将使用一个日常示例,预测我们城市明天的最高气温。

我们首先根据已知的知识形成一个初始的合理的温度取值范围,例如,如果我们不知道目前是一年中的哪个时间段,那么温度可能是30-70度(华氏度)。随后,通过一系列问题和答案,我们逐渐缩小了范围,直到我们有足够的信心做出单点预测。

你可能会想,有什么好问的?好吧,如果我们想尽可能地限制取值范围,那么考虑与当前问题相关的问题是最合理的。由于温度高度依赖于一年中的时间,因此一个合适的问题是:现在处于什么季节?如果季节是冬季,那么,我们就可以将预测范围限制在30–50度。
因此,为了得出估计值,我们使用了一系列问题,每个问题都会缩小我们的可能值,直到我们有足够的信心做出单个预测。我们在日常生活中一遍又一遍地重复此决策过程,只是问题和答案发生了变化。此时,我们也就解决了与决策树建立连接的问题。

随机森林通俗理解

8. 随机森林通俗理解

随机森林通俗理解是:
随机森林分解开来就是“随机”和“森林”。“随机”的含义我们之后讲,我们先说“森林”,森林是由很多棵树组成的,因此随机森林的结果是依赖于多棵决策树的结果。

这是一种集成学习的思想。森林里新来了一只动物,森林举办森林大会,判断这到底是什么动物,每棵树都必须发表意见,票数最多的结果将是最终的结果。

随机森林是现在比较流行的一个算法。对于回归和分类问题有很好的效果。大家有可能有过这样的经历,辛辛苦苦搭好神经网络,最后预测的准确率还不如随机森林。
最新文章
热门文章
推荐阅读