对决策树使用提升和概念层次结构的重要性

时间:2014-10-16 17:03:30

标签: machine-learning artificial-intelligence classification decision-tree ensemble-learning

我有两个问题。 1.为了提高分类器的性能,大多数时候我们都使用套袋或​​增强方法。我们可以使用增强来提高决策树分类器的准确性吗? 我们计算某些属性的概念层次结构。在数据挖掘之前计算它们的目的是什么。当元数据不可用时,是否存在任何半监督方法来获取它?

2 个答案:

答案 0 :(得分:3)

  

我们可以使用提升来提高决策树分类器的准确性吗?

我认为你说的决策树是一个“深层”决策树。根据我的经验,增强可以用作组合深度决策树的集合方法。但是,性能增益非常有限。提升更适用于“弱”分类器,例如,非常浅的决策树或“决策stumps”(深度1决策树)。

下面是我从ESL复制的数字 - 统计学习要素 - 第10章。在此图中,我们改变了树的大小(从1个节点到100个节点)(弱分类器),并且我们绘制了针对增强迭代的测试误差。你会看到树桩表现最好。这背后的直觉是,树中的更多节点在变量之间引入了更高级别的交互。使用决策树桩时,不允许任何交互。当节点号为3时,允许双变量交互效果,依此类推。然而,adaBoost背后的生成功能是附加的,因此使用节点数>增强模型。 2会产生不必要的变化,从而导致更高的测试误差。作者建议保留节点号< = 6.

enter image description here

  

我们计算某些属性的概念层次结构。是什么   在数据挖掘之前计算它们的目的。

数据集群的动机之一可能是可伸缩性。我们以SVM分类器为例。标准SVM的训练时间为O(n^3)。因此,对于非常大的数据集,它不可扩展。解决此问题的一个想法是添加预处理步骤:群集功能,以便每个群集的质心成为整个群集的代表性功能。见下图。每个圆圈代表一个群集。现在,每个集群的质心被用作进行SVM训练的特征。这大大减少了实例空间。假设您现在有m个群集。然后训练时间为O(m^3)。自m << n以来,问题就解决了。有关此层次结构集群SVM的详细信息,请参阅hereenter image description here

  

当元数据不存在时,是否存在任何半监督方法来获取它   可用?

有关无监督方法,请参阅Agglomerative Clustering。 还有监督方法,通常用于学习特征空间的层次结构。最先进的是:

我从未使用过任何半监督的分层聚类算法,但我通过谷歌搜索找到one

答案 1 :(得分:0)

正如所讨论的hereRandom Forest models是决策树的袋装扩展。

由于增强算法试图钳制正确的预测并仅向后续训练轮次提供错误分类的观测结果,因此在后期训练阶段会导致相当严重的过度拟合,因为树木的样本数量有限且不适合那种预测。

将此与套袋进行对比,其中随机选择用于后续轮次训练的子集,而不是选择为不正确标记的样本。这意味着装袋步骤中的每个弱分类器都有合理的机会辨别数据中的结构,并且没有被限制在人为的小子集中。对于决策树,这非常重要。定性地说,这是装箱(随机森林)与决策树相同的一个原因,而增压则不常见。

最后,最近有关于分类噪音(训练标签中的错误)的提升准确性的最新争议研究:"Random Classification Noise Defeats All Convex Potential Boosters"。结论是,对于给定的增强算法(来自这类算法的特殊系列),基本分类器类型和噪声速率,您可以构建适合情况的数据集,如果噪声率为零,则可以有效地学习,但是在存在任何非零噪声率的情况下,最终(后增强)预测精度优于1/2,无法学习。这种旨在劝阻从业者不使用凸助推器的程度仍然存在争议,还有其他类型的助推器不会受到同样的限制,但在开源学习中不太常见且不太普及库。