【问题标题】:Multivariate Decision Tree learner多元决策树学习器
【发布时间】:2011-01-29 21:31:29
【问题描述】:

确实存在很多单变量决策树学习器实现(C4.5 等),但实际上有人知道多变量决策树学习器算法吗?

【问题讨论】:

  • 您能进一步解释您的问题吗?据我了解,C4.5 是一种多元算法,在某种意义上,它将任意维度的向量作为输入。
  • 是的,C4.5 将任意维度的向量作为输入。但我的意思是关于分裂机制的单变量/多变量。单变量分割是轴正交的,多变量意味着被任意超平面分割。
  • 这更清楚,但我没有给你答案:) 我能做的最好的就是建议线性分类器的集合(我猜是提升)可能在某种程度上相当于多元决策树。
  • 是的,集成方法很好,我已经使用了诸如 boosting 之类的集成方法。从技术上讲,它们更接近目标模型,但仍然使用单变量特征空间分割。

标签: machine-learning pattern-recognition decision-tree


【解决方案1】:

Bennett 和 Blue 的 A Support Vector Machine Approach to Decision Trees 通过对树中的每个决策使用嵌入式 SVM 来进行多元拆分。

同样,在Multicategory classification via discrete support vector machines (2009) 中,Orsenigo 和 Vercellis 将离散支持向量机 (DSVM) 的多类别变体嵌入到决策树节点中。

【讨论】:

  • 这些是我以前不知道的有趣论文!无论如何,他们不提供任何现成的实现来评估这些方法。但是由于论文链接,我将此问题标记为答案!仍然欢迎提供实现链接!
【解决方案2】:

决策树的CART算法可以做成Multivariate。 CART 是一种二进制拆分算法,与 C4.5 不同,C4.5 为离散值的每个唯一值创建一个节点。他们对 MARS 使用与缺失值相同的算法。

要创建多变量树,您需要计算每个节点的最佳拆分,但不是丢弃所有不是最好的拆分,而是取其中的一部分(可能全部),然后按每个节点评估所有数据的属性该节点的潜在分裂按顺序加权。因此,第一个分割(导致最大增益)的权重为 1。然后下一个最高增益分割的权重小于 1.0,依此类推。权重随着拆分的增益减少而减少。然后将该数字与左节点内的节点的相同计算进行比较,如果它高于该数字,则左转。否则向右走。这是相当粗略的描述,但这是决策树的多变量拆分。

【讨论】:

    【解决方案3】:

    是的,有一些,例如 OC1,但它们不如进行单变量拆分的常见。添加多变量拆分极大地扩展了搜索空间。作为一种折衷方案,我见过一些逻辑学习器,它们简单地计算线性判别函数并将它们添加到候选变量列表中。

    【讨论】:

      猜你喜欢
      • 2013-04-21
      • 1970-01-01
      • 2011-05-06
      • 2013-01-07
      • 1970-01-01
      • 2011-06-23
      • 2015-12-13
      • 2012-12-31
      • 2015-12-11
      相关资源
      最近更新 更多