解出
我的错误是,如果所有的都是一种类型,我没有意识到熵是0。因此,如果它们都是正的,熵是0,如果它们都是负的,那么也是零。如果等量为正和负,熵将为1。
一个人获得负面信息是没有意义的。
然而,基于这个例子,我得到了一个负面的信息增益。
以下是数据:

如果我计算湿度属性的信息增益,我得到如下结果:

很明显我在这里漏掉了什么。
编辑:澄清我是如何理解它的。
整个系统的熵被定义为:

在这种情况下是:

每个分配的信息增益被定义为:

我计算的湿度是:
系统熵-(1/4)湿度正常熵-(3/4)湿度高熵
根据这个Libre Office Calc:

还是我对属性信息增益公式的理解是不正确的?
发布于 2015-07-11 22:31:37
首先,我假设您的S变量是EnjoySport。(我认为你可以把案文说得更清楚些,BTW。)
所以S的熵是0.8113,但这是我同意的最后一部分。
给定正规的S的熵是0,因为它是确定性的。
给定高的S的熵是0.91829583405448945,但是你需要把它乘以0.75,因为这是正常的概率。那你就有0.68872187554086706了。
正如预期的那样,两者的差别是非负的。
请注意,信息增益是期望熵差,期望需要考虑条件事件的概率。
https://stackoverflow.com/questions/31362320
复制相似问题