————致力于用代码改变世界

机器学习之——决策树信息增益计算[程序+例题]

0 前言

1 信息增益计算公式

image

  • g(D,A)表示在条件A下对于目标变量D的信息增益。
  • H(D)表示随机变量D的信息熵。
  • H(D|A)表示在随机变量A条件下对于目标变量D的条件熵。

2 信息增益的计算

2.1 g(play,outlook)的计算

g(play,outlook)表示在随机变量outlook条件下对于目标变量play的信息增益,计算步骤如下。

  • 完整公式:g(play,outlook)=H(play)-H(play|outlook)

  • 首先要计算H(play),详细计算方法请看信息熵,计算式如下所示。
    image

  • 然后计算H(play|outlook),详细计算方法请看条件熵,计算式如下。
    image

  • 最后计算g(play,outlook),计算式如下。
    image

2.2 g(play,temperature)的计算

g(play,temperature)表示在随机变量temperature条件下对于目标变量play的信息增益,计算步骤如下。

  • 完整公式:g(play,temperature)=H(play)-H(play|temperature)

  • 首先要计算H(play),详细计算方法请看信息熵,计算式如下所示。
    image

  • 然后计算H(play|temperature),详细计算方法请看条件熵,计算式如下。
    H(play|temperature='cool')=-(1.0/4.0)log2(1.0/4.0)-(3.0/4.0)log2(3.0/4.0)=0.8113
    H(play|temperature='hot')=-(2.0/4.0)log2(2.0/4.0)-(2.0/4.0)log2(2.0/4.0)=1.0000
    H(play|temperature='mild')=-(2.0/6.0)log2(2.0/6.0)-(4.0/6.0)log2(4.0/6.0)=0.9183
    H(play|temperature)=(4.0/14)* H(play|temperature='cool')+(4.0/14)* H(play|temperature='hot')+(6.0/14)* H(play|temperature='mild')=0.9111

  • 最后计算g(play,temperature),计算式如下。
    g(play,temperature)=H(play)-H(play|temperature)=0.9403-0.9111=0.0292

3 计算程序

程序

4 结语

如有错误请指正,禁止商用。

posted @ 2024-09-02 17:57  hello_nullptr  阅读(155)  评论(0编辑  收藏  举报