我有两个问题。 1.为了提高分类器的性能,大多数时候我们会使用bagging或boosting方法。可以使用boosting来提高决策树分类器的准确率吗? 2. 我们计算某些属性的概念层次结构。在数据挖掘之前计算它们的目的是什么?当元数据不可用时,是否存在半监督方法来获取它?
最佳答案
Can we use boosting to improve the accuracy of decision tree classifier?
我假设你所说的决策树是一棵“深度”决策树。根据我的经验,Boosting 可以用作组合深度决策树的集成方法。然而,性能提升非常有限。 Boosting 更适用于“弱”分类器,例如非常浅的决策树或“决策 stumps”(深度 1 决策树)。
下面是我从ESL复制的图- 统计学习的要素 - 第 10 章。在此图中,我们改变树的大小(从 1 个节点到 100 个节点)(弱分类器),并根据提升迭代绘制测试误差。您会发现树桩表现最好。这背后的直觉是,树中的节点越多,变量之间的交互程度就越高。当使用决策树桩时,不允许交互。当节点数为3时,允许二变量交互作用,依此类推。然而,adaBoost 背后的生成函数是加性的,因此节点数 > 2 的 boost 模型会产生不必要的方差,从而导致更高的测试误差。作者建议保留节点数 <= 6。
We calculate concept hierarchies for certain attributes. What is the purpose of calculating them before data mining.
数据集群的动机之一可能是可扩展性。我们以 SVM 分类器为例。标准SVM的训练时间为O(n^3)
。因此,它对于非常大的数据集来说是不可扩展的。解决这个问题的一个想法是添加一个预处理步骤:聚类特征,使每个聚类的质心成为整个聚类的代表特征。参见下图。每个圆圈代表一个簇。现在每个簇的质心被用作特征来进行SVM训练。这大大减少了实例空间。假设您现在有 m
集群。那么训练时间就是O(m^3)
。自 m << n
, 问题解决了。请参阅here有关此层次聚类 SVM 的详细信息。
Are there any semi-supervised method existing to obtain it when meta data is not available?
参见Agglomerative Clustering对于无监督方法。 还有监督方法,通常用于学习特征空间的层次结构。最先进的是:
- 用于次线性排名的标签分区(来自 google)
- fastXML(来自 microsoft research)
我从未使用过任何半监督层次聚类算法,但这里是one我通过谷歌搜索找到的。
关于machine-learning - 使用决策树提升和概念层次结构的重要性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26410001/