首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ID3决策树澄清

ID3决策树澄清
EN

Stack Overflow用户
提问于 2014-12-19 10:28:42
回答 2查看 3.4K关注 0票数 0

我目前正在实现一个ID3算法。我已经看过了经典的网球例子,但是我似乎不明白为什么属性温度被忽略在最后一棵树中。有人能解释一下为什么会这样吗?

数据集

最终决策树

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-12-19 10:39:37

ID3算法在以下三种场景中的一种结束:

  • 子集中的每个元素都属于同一个类(+或-),然后将节点转换为叶,并使用示例类进行标记。
  • 没有更多的属性要选择,但是示例仍然不属于同一个类(有些是+的,有些是-),然后节点变成一个叶,并在子集中标上最常见的示例类。
  • 子集中没有示例,如果没有发现父集合中的任何示例与所选属性的特定值匹配,例如,如果没有年龄为>= 100的示例,则会发生这种情况。然后创建一个叶,并用父集中最常见的示例类进行标记。

例如,Outlook:晴天和湿度:高/正常。有三排“高”的,他们都说不网球。因此,出现了第一个场景,并且可以创建叶子。有更多的信息,但不需要它来作出决定。

票数 0
EN

Stack Overflow用户

发布于 2019-01-03 20:06:35

创建ID3树是如何工作的?

你必须做的第一件事就是获取每个属性的信息增益。但是有一条规则,也许你是在跳,它是:-分析积极和消极的数量。如果所有带有该属性的记录都只有正或负记录。你不用再问了。

知道了这个规则,解释了为什么在温度的情况下,我没有不断地增加分支。

但是,如果在计算行数时有正的和负的结果,您将需要问另一个问题,例如,您将检查所有可能的组合,例如晴天与阴天或雨,而信息增益最高的组合将作为该分支的子代。

该过程将这样做,直到您发现所有行都只有负或正。当它通过时,它将将结果定义为工作表。

此外,还需要注意的是,根据数据集的行数,树将增长。

我在javascript中实现了ID3,我离开了存放它的存储库。https://github.com/Danils123/Id3Algoritmo.git

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27564067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档