【问题标题】:ID3 Decision Tree ClarificationID3 决策树说明
【发布时间】:2015-02-18 06:32:30
【问题描述】:

我目前正在实施 ID3 算法。我一直在经历经典的打网球示例,但是我似乎无法理解为什么属性 TEMPERATURE 被排除在最终树之外。谁能解释为什么会这样?

数据集

最终决策树

【问题讨论】:

    标签: java decision-tree


    【解决方案1】:

    如何创建 ID3 树?

     你要做的第一件事就是取出每个属性的信息增益。但是有一个规则,也许你在跳跃,它是: - 正面和负面的数量分析。如果所有具有该属性的记录作为结果只有正面或负面。你不用再问了。

    知道这条规则解释了为什么在温度的情况下我没有继续添加后果。

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

    该过程将这样做,直到您发现所有行都只有负数或正数。当它通过时,它会将结果定义为一张纸。

    另外,重要的是要提到树会根据数据集的行数而增长。

    我在 javascript 中实现了 ID3,我将存储库留在了托管它的位置。 https://github.com/Danils123/Id3Algoritmo.git

    【讨论】:

      【解决方案2】:

      ID3 algorithm 在以下三种情况之一中结束:

      • 子集中的每个元素都属于同一个类(+ 或 -),然后将节点变成叶子并用示例的类标记
      • 没有更多的属性可供选择,但示例仍然不属于同一类(有些是+,有些是-),然后将节点变成叶子并用最常见的类标记子集中的示例
      • 子集中没有示例,当父集中没有示例与所选属性的特定值匹配时会发生这种情况,例如,如果没有年龄 >= 100 的示例。那么叶子是已创建,并标有父集中示例中最常见的类。

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

      【讨论】:

        猜你喜欢
        • 2016-10-13
        • 1970-01-01
        • 2012-05-28
        • 1970-01-01
        • 2011-01-18
        • 1970-01-01
        • 2018-07-07
        • 2011-12-31
        • 1970-01-01
        相关资源
        最近更新 更多