很多单变量决策树学习器实现(C4.5等)确实存在,但实际上有人知道多变量决策树学习器算法吗?
答案 0 :(得分:6)
Bennett和Blue的A Support Vector Machine Approach to Decision Trees通过对树中的每个决策使用嵌入式SVM进行多变量分割。
同样,在Multicategory classification via discrete support vector machines (2009) 中,Orsenigo和Vercellis将离散支持向量机(DSVM)的多类别变体嵌入到决策树节点中。
答案 1 :(得分:1)
决策树的CART算法可以制成多变量。 CART是二进制分裂算法,而不是C4.5,它为离散值的每个唯一值创建一个节点。它们对MARS使用与缺失值相同的算法。
要创建多变量树,您可以计算每个节点的最佳分割,但不是丢弃所有不是最好的分割,而是将其中的一部分(可能全部)分开,然后按每个分析评估所有数据的属性由该顺序加权的该节点处的潜在分裂。因此,第一次分裂(导致最大增益)被加权为1.然后,下一个最高增益分裂被加权一些分数<1。 1.0,依此类推。当权重减少时,权重减少。然后将该数字与左节点内的节点的相同计算进行比较,如果它高于该数字左侧。否则就走吧。这是非常粗略的描述,但这是决策树的多变量分割。
答案 2 :(得分:0)
是的,有一些,例如OC1,但它们不像那些进行单变量分裂的常见。添加多变量分割会极大地扩展搜索空间。作为一种妥协,我看到一些逻辑学习者只是简单地计算线性判别函数并将它们添加到候选变量列表中。