信息增益和信息增益比

要理解这两个概念,首先要分清楚三个定义:
数据集经验熵
特征对数据集的经验条件熵
数据集对特征值的熵

符号

A : 特 征 D : 训 练 样 本 ∣ D ∣ : 样 本 容 量 D i : 根 据 每 个 特 征 A 的 特 征 值 , 把 样 本 D 划 分 的 第 i 个 划 分 训 练 样 本 ∣ D i ∣ : 第 i 个 划 分 样 本 容 量 l a b e l : 样 本 标 签 列 C k : 样 本 标 签 是 第 k 类 , 相 当 于 通 过 标 签 列 , 把 D 做 了 K 个 划 分 ∣ C k ∣ : 第 k 类 的 样 本 个 数 D i k = D i ∩ C k A: 特征 \\ D: 训练样本 \\ |D|: 样本容量 \\ D_i: 根据每个特征 A 的特征值,把样本 D 划分的第 i 个划分训练样本 \\ |D_i|: 第 i 个划分样本容量 \\ label: 样本标签列 \\ C_k: 样本标签是第 k 类,相当于通过标签列,把 D 做了 K 个划分 \\ |C_k|:第 k 类的样本个数 \\ D_{ik} = D_i \cap C_k A:D:D:Di:ADiDi:ilabel:Ck:kDKCkkDik=DiCk

几个概念

数据集经验熵

H ( D ) = − ∑ k = 1 K ∣ C k ∣ ∣ D ∣ l o g 2 ∣ C k ∣ ∣ D ∣ H(D) = -\sum_{k = 1}^K \frac{|C_k|}{|D|}log_2 \frac{|C_k|}{|D|} H(D)=k=1KDCklog2DCk
这里的 H ( D ) H(D) H(D) 可以认为是按照 l a b e l label label 划分的熵 H l a b e l ( D ) H_{label}(D) Hlabel(D)

特征对数据集的经验条件熵

H ( D ∣ A ) = ∑ i = 1 n ∣ D i ∣ ∣ D ∣ H ( D i ) H(D|A) = \sum_{i=1}^n \frac{|D_i|}{|D|}H(D_i) H(DA)=i=1nDDiH(Di)
其中 H ( D i ) H(D_i) H(Di)是按照特征 A A A划分之后的样本集,再按照 l a b e l label label进行划分的经验熵。那么:
H ( D ∣ A ) = ∑ i = 1 n ∣ D i ∣ ∣ D ∣ H ( D i ) = ∑ i = 1 n ∣ D i ∣ ∣ D ∣ ∗ ( − ∑ k = 1 K ∣ D i k ∣ ∣ D i ∣ l o g 2 ∣ D i k ∣ ∣ D i ∣ ) H(D|A) = \sum_{i=1}^n \frac{|D_i|}{|D|}H(D_i) = \sum_{i=1}^n \frac{|D_i|}{|D|} *(- \sum_{k = 1}^K \frac{|D_{ik}|}{|D_i|}log_2 \frac{|D_{ik}|}{|D_i|}) H(DA)=i=1nDDiH(Di)=i=1nDDik=1KDiDiklog2DiDik

数据集对特征值的熵

H A ( D ) = − ∑ i = 1 n ∣ D i ∣ ∣ D ∣ l o g 2 ∣ D i ∣ ∣ D ∣ H_A(D) = - \sum_{i=1}^n \frac{|D_i|}{|D|}log_2 \frac{|D_i|}{|D|} HA(D)=i=1nDDilog2DDi

为什么要用信息增益比

信息增益: g ( D , A ) = H ( D ) − H ( D ∣ A ) g(D, A) = H(D) - H(D|A) g(D,A)=H(D)H(DA)
信息增益比: g R ( D , A ) = g ( D , A ) H A ( D ) = − ∑ k = 1 K ∣ C k ∣ ∣ D ∣ l o g 2 ∣ C k ∣ ∣ D ∣ − ∑ i = 1 n ∣ D i ∣ ∣ D ∣ ∗ ( − ∑ k = 1 K ∣ D i k ∣ ∣ D i ∣ l o g 2 ∣ D i k ∣ ∣ D i ∣ ) − ∑ i = 1 n ∣ D i ∣ ∣ D ∣ l o g 2 ∣ D i ∣ ∣ D ∣ g_R(D, A) = \frac{g(D,A)}{H_A(D)} \\= \frac{-\sum_{k = 1}^K \frac{|C_k|}{|D|}log_2 \frac{|C_k|}{|D|} - \sum_{i=1}^n \frac{|D_i|}{|D|} *(- \sum_{k = 1}^K \frac{|D_{ik}|}{|D_i|}log_2 \frac{|D_{ik}|}{|D_i|})}{- \sum_{i=1}^n \frac{|D_i|}{|D|}log_2 \frac{|D_i|}{|D|}} gR(D,A)=HA(D)g(D,A)=i=1nDDilog2DDik=1KDCklog2DCki=1nDDi(k=1KDiDiklog2DiDik)

我们来假设一种情况,当特征 A A A是连续型变量时,每一个值,都对应一个类别。
那么 ∣ D i k ∣ = ∣ D i ∣ |D_{ik}| = |{D_i}| Dik=Di,导致 H ( D ∣ A ) = 0 H(D|A)=0 H(DA)=0,因为信息熵是大于零的,所以此时选择特征 A A A得到的信息熵最大 g ( D , A ) = H ( D ) − H ( D ∣ A ) = H ( D ) − 0 = H ( D ) g(D, A) = H(D) - H(D|A)=H(D) - 0=H(D) g(D,A)=H(D)H(DA)=H(D)0=H(D),与此同时 H A ( D ) H_A(D) HA(D)会变得非常大。

从直觉上讲,如果特征连续,导致每个结点都只包含一种类别,确实把确定性调到了最大。但是,由于从上层结点引入了过多的分支,反而在整个系统中引入了不确定性。

所以,信息增益比,是对这种额外引入的不确定性的而一种校准。

参考

《统计学习方法》李航
https://www.zhihu.com/question/22928442

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
信息增益信息增益比和都是决策树算法中常用的指标,用于选择最优的划分属性。 信息增益是在给定数据集D的条件下,从所有可能的划分属性中选择一个使得划分后的子集纯度最高的属性。纯度的计算是使用的概念,即信息信息增益越高,表示使用该属性进行划分后,所得到的子集的纯度越高,对于决策树的构建来说,信息增益越高的属性越优先选择。 信息增益比是在信息增益的基础上,对属性的取值数目进行了惩罚。即信息增益比=信息增益/属性的固有值。固有值是一个属性所包含的信息量,与属性的取值数目有关。因此,信息增益比考虑了属性的取值数目对信息增益的影响,可以避免对取值数目较多的属性的过度偏好。 是用于衡量数据集的不确定性,越高表示数据集的不确定性越大。在决策树中,用于衡量划分子集的纯度,即使用该属性进行划分后,所得到的子集的不确定性。信息增益信息增益比的计算都基于的概念,因此在决策树算法中具有重要作用。 综上所述,信息增益信息增益比和都是决策树算法中常用的指标,用于选择最优的划分属性。信息增益信息增益比都考虑了属性对子集纯度的影响,而信息增益比还考虑了属性取值数目的影响。用于衡量数据集的不确定性,是信息增益信息增益比的计算基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值