【问题标题】:Shannon's Entropy measure in Decision Trees决策树中的香农熵测度
【发布时间】:2013-02-07 18:58:21
【问题描述】:

为什么在决策树分支中使用香农熵度量?

熵(S) = - p(+)log( p(+) ) - p(-)log( p(-) )

我知道这是衡量数字的标准。编码信息所需的比特数;分布越均匀,熵越大。但我不明白为什么它如此频繁地应用于创建决策树(选择分支点)。

【问题讨论】:

    标签: encoding machine-learning decision-tree entropy information-theory


    【解决方案1】:

    您似乎了解该方法背后的数学原理,但这里有一个简单的示例,可能会让您对为什么使用这种方法有一些直觉:假设您在一个有 100 名学生的教室里。每个学生都坐在一张课桌前,课桌被组织成 10 行 10 列。 100 名学生中有 1 名有奖品,但你必须猜出是哪个学生才能获得奖品。问题是,每次您猜测时,奖品的价值都会减少。您可以先单独询问每个学生是否有奖品。但是,最初,您只有 1/100 的机会猜对,而且很可能当您找到奖品时,它已经毫无价值(将每个猜测都视为决策树中的一个分支)。相反,您可以提出广泛的问题,从而大大减少每个问题的搜索空间。例如“学生在第 1 行到第 5 行的某个地方吗?”无论答案是“是”还是“否”,您都将树中潜在分支的数量减少了一半。

    【讨论】:

      【解决方案2】:

      为了决策树,忘记位数,只关注公式本身。考虑一个二进制 (+/-) 分类任务,其中您的训练数据中有相同数量的 + 和 - 示例。最初,熵将是 1,因为p(+) = p(-) = 0.5。您希望在最能降低熵的属性上拆分数据(即,使类的分布最不随机)。如果选择一个与类完全无关的属性 A1,那么在将数据按 A1 的值进行拆分后,熵仍然为 1,因此熵没有减少。现在假设另一个属性 A2 完美地分隔了类(例如,对于 A2="yes",类始终为 +,对于 A2="no",类始终为 -。在这种情况下,熵为零,这是理想情况。

      在实际情况下,属性通常不能完美地对数据进行分类(熵大于零)。因此,您选择对数据进行“最佳”分类的属性(提供最大的熵减少)。一旦以这种方式分离数据,则以类似方式从第一次拆分中为每个分支选择另一个属性,以进一步减少沿该分支的熵。这个过程继续构建树。

      【讨论】:

      • 根据你的解释,你能解释一下为什么需要日志功能吗?
      • 如果你注意到p(+) = 1 - p(-),在方程中有log 函数给它一个很好的属性,当p(+) 是零或一并且有它的最大值 (1) 当p(+) 为 1/2 时(即,当两个类的可能性相等时)。公式本身不需要log 函数。您可以使用备用对称函数,当p(+) 为零或一时为零,最大值为 0.5,并随着与 p(+) = 0.5 的距离单调递减。
      【解决方案3】:

      因为你想问一个能给你最多信息的问题。目标是尽量减少树中决策/问题/分支的数量,因此您可以从能够为您提供最多信息的问题开始,然后使用以下问题填写详细信息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-12-02
        • 2014-03-31
        • 1970-01-01
        • 1970-01-01
        • 2021-05-27
        • 2013-05-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多