随机森林和决策树算法


14

随机森林是遵循装袋概念的决策树的集合。当我们从一个决策树移动到下一个决策树时,从上一个决策树中学到的信息将如何前进到下一个决策树?

因为,按照我的理解,没有什么像训练过的模型那样可以为每个决策树创建然后在下一个决策树开始从错误分类的错误中学习之前加载的。

那么它是怎样工作的?


“当我们从一个决策树移动到下一个决策树时”。这表明是线性过程。我们建立了并行的实现,在每个CPU内核中,我们只在一棵树上工作。除非您在训练中每个CPU内核使用单独的随机数生成器,并且所有这些共享相同的种子,否则这将很好地工作。在这种情况下,您可能会得到很多相同的树。
MSalters

Answers:


23

没有信息在树之间传递。在随机森林中,所有树木的分布均相同,这是因为树木是针对所有树木使用相同的随机化策略进行生长的。首先,对数据进行引导采样,然后使用来自随机选择的特征子集的拆分来生长树。这对于每棵树都是单独发生的,而不会关注集合中的任何其他树。但是,仅通过对来自公共训练数据池的样本上的每棵树进行训练,就可以使树完全相关。来自同一数据集的多个样本将趋于相似,因此树将对某些相似性进行编码。

您可能会发现从高质量的文本中阅读随机森林的介绍会有所帮助。其中之一是里奥·布雷曼(Leo Breiman)的“随机森林”。Hastie等人在《统计学习要素》中也有一章。

您可能已经将随机森林与诸如AdaBoost或梯度增强树之类的增强方法混淆了。提升方法并不相同,因为它们使用有关先前提升轮的失配信息来告知下一轮提升。请参阅:随机森林是增强算法吗?


11

随机森林是它的多棵决策树的集合进行培训,相互独立的。因此,没有顺序依赖训练的概念(在Boosting算法中就是这种情况)。结果,如另一个答案中所述,可以对树进行并行训练。

您可能想知道随机森林中“随机”的来源:通过两种方式将随机性注入学习树木的过程中。首先是随机选择用于训练每棵树的数据点,其次是随机选择用于构建每棵树的特征。由于单个决策树通常倾向于对数据过度拟合,因此以这种方式注入随机性会导致有一堆树,其中每棵树在可用训练数据的不同子集上具有良好的准确性(并可能过度拟合) 。因此,当我们对所有树做出的预测取平均值时,我们会发现过拟合的减少(与在所有可用数据上训练一个决策树的情况相比)。

MN

  1. i=0
  2. MMSi
  3. iTiSi
    • 训练过程与训练决策树相同,不同之处在于,在树中的每个节点上,仅随机选择特征用于该节点中的拆分。
  1. i=i+1
  2. i<N

T1T2TN

  • 如果将其用于回归任务,则将预测的平均值作为随机森林的最终预测。

  • 如果将其用于分类任务,请使用软投票策略:取树为每个类别预测的概率的平均值,然后将平均概率最高的类别声明为随机森林的最终预测。

此外,值得一提的是,有可能以顺序依赖的方式训练树,而这正是梯度增强树算法所做的,这与随机森林完全不同。


8

随机森林是一种装袋算法,而不是增强算法。

随机森林使用数据的随机样本独立地构建树。并行实现是可能的。

您可能想检查一下梯度增强的方法,其中按顺序构建树,而新树尝试纠正先前犯的错误。


6

那么它是如何工作的呢?

随机森林是决策树的集合。树木是独立建造的。每棵树都经过特征子集和替换选择的样本子集的训练。

在预测时(例如对于分类),将输入参数提供给森林中的每棵树,并且分类中的每棵树“投票”,得票最多的标签将获胜。

为什么在简单决策树上使用随机森林?偏差/方差折衷。与单个决策树相比,随机森林是由简单得多的树构建而成。通常,随机林提供了因方差而导致的错误的大幅度减少,以及因偏见而导致的误差的小幅度增加。


如果我们为每个决策树选择不同的功能,那么当我们将未分类的值提前发送给下一个决策树时,通过上一个决策树中的一组功能进行的学习将如何改善,因为完全有一组新功能?
Abhay Raj Singh,

3
@AbhayRajSingh-您不要在Random Forest中“提前发送错误分类的值”。正如Akavall所说,“树木是独立建造的”
亨利

1

是的,正如上面的作者所说,随机森林算法是一种装袋算法,而不是增强算法。

套袋可以减少分类器的方差,因为适合于不同样本的基本算法及其误差在投票中得到了相互补偿。套袋是指对同一模型的稍有不同的版本进行平均,以提高预测能力。要应用套袋,我们只需使用B个自举训练集构建B个回归树,然后对所得预测取平均值

套袋是一种常见且非常成功的应用,它是随机森林

但是,当在随机森林中构建这些决策树时,每次考虑在树中进行拆分时,都会m从整个p个预测变量集中选择一个随机的预测变量样本作为拆分候选。拆分只允许使用那些m预测变量之一。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.