信息熵笔记

信息熵的定义

热力学中的热熵是表示分子状态混乱程度的物理量。数学家香农用信息熵的概念来描述信源的不确定度,信息熵是来度量信息的不确定性的,熵越大,表示不确定性越高;熵越小,表示不确定性越低。不确定性是概率 p p p 的减函数,独立的两个信息的熵是可以相加的,对数函数同时满足这两个条件,设事件 A A A 有取值 a 1 a_1 a1 a 2 a_2 a2 a N a_N aN,对应的概率为 p 1 p_1 p1 p 2 p_2 p2,…, p N p_N pN,信息熵为事件各取值的期望,表达式如下

H ( A ) = ∑ i = 1 N p i l o g   p i H(A)=\sum_{i=1}^Np_ilog\,p_i H(A)=i=1Npilogpi

其中 p i = P ( A = a i ) p_i=P(A=a_i) pi=P(A=ai),表示取值为 a i a_i ai 的概率

熵的性质
  1. 非负性
  2. 对称性,关于 p = 0.5 p=0.5 p=0.5 对称
  3. 确定性,在 p = 1 p=1 p=1 p = 0 p=0 p=0 就是确定状态,此时非常确定,信息熵为0
  4. 极值性,熵表达式是关于 p p p 的上凸函数,在 p = 0.5 p=0.5 p=0.5 达到极大值,在 p = 0 p=0 p=0 p = 1 p=1 p=1 达到极小值0
条件信息熵的定义

条件 A A A ,可以取值 a 1 a_1 a1 a 2 a_2 a2 a N a_N aN,对应的概率为 p 1 p_1 p1 p 2 p_2 p2 p N p_N pN
H ( D ∣ A = a i ) H(D|A=a_i) H(DA=ai) 表示在特征 A A A 取值为 a i a_i ai 的情况下,数据集 D ( A = A i ) D(A=Ai) D(A=Ai) 的信息熵

H ( D ∣ A ) = ∑ i = 1 N p i H ( D ∣ A = a i ) H(D|A)=\sum_{i=1}^Np_iH(D|A=a_i) H(DA)=i=1NpiH(DA=ai)

信息增益

信息熵在机器学习中有一个重要的应用,决策树如何选择分裂叶节点时的参考指标就是分裂前后整体信息熵的变化量(信息增益)设样本数据集是 D D D ,整体的信息熵为 H ( D ) H(D) H(D),按照特征 A A A 的不同取值对数据集进行切分,假设 A A A N N N 个取值 a 1 , a 2 , . . . , a N a_1,a_2,...,a_N a1,a2,...,aN 切分后信息熵为条件信息熵 H ( D ∣ A ) H(D|A) H(DA),信息增益的表示如下

g a i n ( D , A ) = H ( D ) − H ( D ∣ A ) gain(D,A)=H(D)-H(D|A) gain(D,A)=H(D)H(DA)

其中 H ( D ∣ A ) = ∑ i N p ( A = a i ) H ( D ∣ A = a i ) = − ∑ i N p ( A = a i ) ∑ j K D j ∣ D ∣ l o g D j ∣ D ∣ H(D|A)=\sum_i^Np(A=a_i)H(D|A=a_i)=-\sum_i^Np(A=a_i)\sum_j^K\frac{D_j}{|D|}log\frac{D_j}{|D|} H(DA)=iNp(A=ai)H(DA=ai)=iNp(A=ai)jKDDjlogDDj

D j D_j Dj表示在 A = a i A=a_i A=ai的条件下分到类别 j j j 的数据集合

我们在选择特征进行分裂的时候,选择新信息增益最大的特征进行分裂,这样一次分裂最大程度的减少了整个数据集的不确定性

但是单纯使用信息增益作为评价标准,会倾向于取值较多的特征。有一个极端的例子:用户的ID特征,整个特征每个用户都不同,按照这个特征的取值去划分,会得到每个叶子节点都只有一个实例, H ( D ∣ A ) = 0 H(D|A)=0 H(DA)=0 g a i n = H ( D ) gain=H(D) gain=H(D)最大,但是这样划分是没有意义的,因此需要一个约束来解决这个情况,这就是信息增益率

g a i n _ r a t i o = g a i n ( D , A ) / H ( D ∣ A ) gain\_ratio=gain(D,A)/H(D|A) gain_ratio=gain(D,A)/H(DA)

基尼指数也是度量数据的不确定性,越均匀基尼指数越小,越无序表示基尼指数越大

G i n i ( D ) = 1 − ∑ i K p i 2 Gini(D)=1-\sum_i^Kp_i^2 Gini(D)=1iKpi2

按照特征 A A A 的取值划分,划分后的基尼指数表示为

G i n i ( D , A ) = ∑ i N P ( A = a i ) G i n i ( D ∣ A = a i ) Gini(D,A)=\sum_i^NP(A=a_i)Gini(D|A=a_i) Gini(D,A)=iNP(A=ai)Gini(DA=ai)

划分节点的时候,不论是基尼指数还是信息熵,本质都是一样的

参考
  1. 信息熵-百度百科
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值