具有复杂性或性能比较的不同决策树算法
classification
machine-learning
4
0

我正在研究数据挖掘,更确切地说是决策树。

我想知道是否有多种算法可以构建决策树(或者只有一个?),并且基于以下标准,哪种更好?

  • 性能
  • 复杂
  • 决策错误
  • 和更多。
参考资料:
Stack Overflow
收藏
评论
共 1 个回答
高赞 时间 活跃

决策树的实现主要在以下方面有所不同:

  • 分割标准 (即“方差”的计算方式)

  • 是否建立回归模型(连续变量,例如分数)以及分类模型 (离散变量,例如类别标签)

  • 消除/减少过度拟合的技术

  • 是否可以处理不完整的数据


决策树的主要实现是:

  • ID3 (或迭代二分器)是Ross Quinlan开发的三个决策树实现中的第一个(Quinlan,JR1986。Inductionof DecisionTrees。Mach.Learn。1,1(1986年3月),第81-106页。)

  • CART或“ 分类和回归树”通常被用作“决策树”一词的通用缩写,尽管它显然具有更具体的含义。总而言之,CART实现与C4.5非常相似。一个显着的区别是CART基于递归应用于数据的数值拆分准则构造树,而C4.5包括构造规则集 s的中间步骤。

  • C4.5 ,昆兰的下一个迭代。新功能(相对于ID3)是:(i)接受连续和离散功能; (ii)处理不完整的数据点; (iii)通过(非常聪明的)自下而上的技术(通常称为“修剪”)解决过拟合问题; (iv)可以对构成训练数据的特征应用不同的权重。其中,前三个非常重要-我建议您选择的任何DT实现都具有这三个。第四(差分加权)的重要性要小得多

  • C5.0 ,最新的Quinlan迭代。此实现已包含在专利中,因此可能很少实现(在商业软件包之外)。我从来没有亲自编写过C5.0实现的代码(甚至从未见过源代码),因此无法提供C5.0与C4.5的知情比较。我一直对它的发明者(罗斯·昆兰(Ross Quinlan))声称的改进表示怀疑,例如,他声称它比C4.5快“几个数量级”。其他要求也同样广泛(“显着提高存储效率”),依此类推。我只为您指出一些研究 ,这些研究报告了两种技术的比较结果,您可以自己决定。

  • CHAID (卡方自动交互检测器)实际上比最初的ID3实现早了大约六年(1980年由Gordon Kass发表在博士学位论文中)。我对此技术一无所知.R平台有一个名为CHAID的软件包,其中包含出色的文档

  • MARS (多适应回归样条)实际上是MARS的原始发明者Salford Systems的商标。结果,非Salford出售的库中的MARS克隆被命名为MARS以外的其他名称-例如,在R中,相关功能是多样条库中的polymars。 Matlab和Statistica也具有具有MARS功能的实现

我建议使用CART或C4.5(尽管再次,尽管我熟悉它们的功能集,但我对C5.0或CHAID没有直接的经验)。

C4.5是在Orange中实现的决策树风格; CART是sklearn中的特色-都是出色的ML库中的出色实现。

C4.5是超越ID3-的重要一步,无论是在范围方面 (C4.5具有更广泛的用例范围,因为它都可以处理训练数据中的连续变量)和模型质量

与C4.5相比,C5.0所宣称的最显着改进是对增强树的支持。对DT的集成支持(增强树和随机森林)已包含在Orange的DT实现中;在这里,集成支持已添加到C4.5算法中。 sklearn还具有一系列随机森林和增强方法。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号