我试图从数据创建决策树。我正在使用树来猜测动物游戏的应用程序。用户使用是/否回答问题,程序猜测答案。这个计划是为了完成家庭作业。
我不知道如何根据数据创建决策树。我无法知道根节点是什么。每次数据都不同。我无法手工完成。我的数据是这样的:
Animal1: property1, property3, property5
Animal2: property2, property3, property5, property6
Animal3: property1, property6
etc.
我搜索了stackoverflow,我找到了ID3和C4.5算法。但我不知道我是否应该使用它们。
在这种情况下,有人可以指导我,我应该使用什么算法来构建决策树?
答案 0 :(得分:2)
我搜索了stackoverflow,我找到了ID3和C4.5算法。但是我 不知道我是否应该使用它们。
是的,你应该。它们是非常常用的决策树,并为它们提供了一些很好的开源实现。 (Weka's J48是C4.5)的示例实现
如果您需要从头开始实现某些功能,那么实现一个简单的决策树非常简单,并且可以迭代完成:
S
,其中包含属性集P = {p1,p2,...,pk} 一些指示:
pi
(在步骤2中),尽可能地最小化树的高度(找到最佳解决方案是NP-Hard,但有贪婪的方法例如,最小化entropy。