我必须使用 R 软件和 rpart 包创建决策树。在我的论文中,我应该首先定义 ID3 算法,然后实现各种决策树。
我发现 rpart 包不适用于 ID3 算法。它使用 CART 算法。我想了解其中的差异,并可能在我的论文中解释差异,但我没有找到任何比较双方的文献。
你能帮助我吗?你知道一篇比较两者的论文吗,或者你能向我解释一下区别吗?
我必须使用 R 软件和 rpart 包创建决策树。在我的论文中,我应该首先定义 ID3 算法,然后实现各种决策树。
我发现 rpart 包不适用于 ID3 算法。它使用 CART 算法。我想了解其中的差异,并可能在我的论文中解释差异,但我没有找到任何比较双方的文献。
你能帮助我吗?你知道一篇比较两者的论文吗,或者你能向我解释一下区别吗?
我无法访问原始文本1,2但使用一些辅助资源,这些递归(“贪婪”)分区(“树”)算法之间的主要区别似乎是:
学习类型:
rpart()
,您可以指定method='class'
或method='anova'
,但rpart
可以从因变量的类型(即因子或数值)推断出这一点。用于分割选择的损失函数。
有趣的是,作为一名从业者,我几乎从没听说过使用 ID3 一词,而 CART 经常被用作决策树的一个包罗万象的术语。CART 在 R 的rpart
包中有一个非常流行的实现。 ?rpart
注意到“在大多数细节上,它非常接近 Breiman 等人 (1984)。”
但是,您可以通过rpart(..., parms=list(split='information'))
覆盖默认行为并拆分信息增益。
1 Quinlan, JR 1986。决策树的归纳。马赫 学。1, 1 (1986 年 3 月), 81–106
2布雷曼,里奥;弗里德曼,JH;奥尔森,RA;斯通,CJ(1984 年)。分类和回归树。加利福尼亚州蒙特雷:Wadsworth & Brooks/Cole Advanced Books & Software。
http://www.cs.umd.edu/~samir/498/10Algorithms-08.pdf
阅读本文的1 C4.5 及以上内容,它将澄清您的所有疑问,帮助我解决我的问题。不要被标题气馁,它是关于不同树算法的差异。无论如何都是一篇值得阅读的好论文