当前位置: 首页 > news >正文

决策树算法基础:信息熵相关知识

本文对信息熵等概念进行系统梳理,为后续学习决策树系列算法做好准备

挖坑待填:ID3、C4.5、CART、随机森林、LightGBM

相关文章

  • 理解决策树模型原理,看这30页PPT就够了 - 数说新语的文章 - 知乎https://zhuanlan.zhihu.com/p/108433962
  • 【机器学习】决策树(上)——ID3、C4.5、CART(非常详细) - 阿泽的文章 - 知乎https://zhuanlan.zhihu.com/p/85731206

一、信息熵

1.1、度量公式

【信息量】

如何量化信息?理想的度量标准应符合以下直觉:

  • 信息量不能为负数:任何事件都是”有信息的“
  • 信息量之间可以相加:已知事件A、事件B,两者的信息量可以累加
  • 信息量应该随着概率单调递减:越容易发生(概率大小)的事件信息量越少,例如”明天会刮台风“相比于”明天太阳从东边升起“,就包含更多的信息
  • 信息量应该连续依赖于概率:事件A、事件B发生概率相近,两者的信息量也接近

1928年,哈特莱给出了信息量的度量公式(满足以上要求):事件发生概率的倒数的对数(底数为2)
I=log21P=−log2PI=log_2{\frac{1}{P}}=-log_2 P I=log2P1=log2P

【信息熵】

信息熵是衡量一个概率分布所蕴含的“不确定性”的期望值,综合考虑了事件发生概率及事件的信息量,公式如下(对于离散型变量):
H(I)=−∑pilog2piH(I) = -\sum p_i log_2 p_i H(I)=pilog2pi

  • −pilog2pi-p_ilog_{2}p_ipilog2pi为事件发生概率与事件信息量的乘积,表示单个事件iii发生时,对整体不确定性的“平均贡献”
  • −∑pilog2pi-\sum p_i log_{2}p_ipilog2pi为所有可能事件iii的贡献之和,表示整个随机变量III的平均不确定性,即信息熵H(I)H(I)H(I)

H(I)≥0H(I)\ge 0H(I)0,且值越大,说明不确定性越高(越“混乱”)

  • 最小值:仅有1种事件会发生,即pi=1p_i=1pi=1,其余为0,此时H(I)=0H(I)=0H(I)=0(规定 0log20=00log_2 0=00log20=0

  • 最大值:所有事件发生的概率相等,即pi=1Np_i=\frac{1}{N}pi=N1,此时H(I)=log2NH(I)=log_2 NH(I)=log2N

  • 举例说明:袋子中共3个球(可能为红绿蓝3种颜色),取一次球,计算所取球颜色的信息熵

    • 最小值:若袋子中只有红色球,则pred=1,H(I)=0p_{red}=1, H(I)=0pred=1,H(I)=0
    • 最大值:若袋子中红绿蓝球各一个,则H(I)=−3∗13∗log213=log23H(I)=-3*\frac{1}{3}*log_2 \frac{1}{3}=log_2 3H(I)=331log231=log23

1.2、最大值证明

对于H(I)=−∑i=1Npilog2piH(I) = -\sum_{i=1}^{N} p_i log_2 p_iH(I)=i=1Npilog2pi,满足0≤pi≤1,∑i=1Npi=10\le p_i\le 1, \sum_{i=1}^N p_i=10pi1,i=1Npi=1,则H(I)H(I)H(I)的最大值为log2Nlog_2 Nlog2N

1.2.1、拉格朗日乘子法

利用拉格朗日乘子法构造函数:G(pi,λ)=−∑i=1Npilog2pi+λ(∑i=1Npi−1)G(p_i, \lambda)=-\sum_{i=1}^{N} p_i log_2 p_i+\lambda(\sum_{i=1}^N p_i-1)G(pi,λ)=i=1Npilog2pi+λ(i=1Npi1)

分别对pip_ipiλ\lambdaλ求偏导:∂G∂pi=−log2pi−1+λ,∂G∂λ=∑i=1Npi−1\frac{\partial G}{\partial p_i}=-log_2 p_i-1+\lambda, \frac{\partial G}{\partial \lambda}=\sum_{i=1}^N p_i-1piG=log2pi1+λ,λG=i=1Npi1

∂G∂pi=0\frac{\partial G}{\partial p_i}=0piG=0∂G∂λ=0\frac{\partial G}{\partial \lambda}=0λG=0,则pi=2λ−1,∑i=1Npi=1p_i=2^{\lambda-1}, \sum_{i=1}^N p_i=1pi=2λ1,i=1Npi=1

p1=p2=...pN=1Np_1=p_2=...p_N=\frac{1}{N}p1=p2=...pN=N1时,函数H(I)H(I)H(I)为极值,因为H(I)H(I)H(I)为凹函数,则为最大值(−∑i=1N1Nlog21N=−log21N=log2N-\sum_{i=1}^{N} \frac{1}{N} log_2 \frac{1}{N}=-log_2\frac{1}{N}=log_2 Ni=1NN1log2N1=log2N1=log2N

  • 说明:当某个pi=1p_i=1pi=1,其余为0时,为边界点,此时H(X)=0H(X)=0H(X)=0(规定 0log20=00log_2 0=00log20=0),小于log2Nlog_2 Nlog2N

拉格朗日乘子法相关链接(几何意义):

  • 如何理解拉格朗日乘子法? - 马同学的回答 - 知乎https://www.zhihu.com/question/38586401/answer/457058079

  • 如何理解拉格朗日乘子法? - 戏言玩家的回答 - 知乎https://www.zhihu.com/question/38586401/answer/105588901

  • 如何理解拉格朗日乘子法? - 卢健龙的回答 - 知乎https://www.zhihu.com/question/38586401/answer/105273125

1.2.2、基于KL散度的非负性

DKL(P∣∣Q)=∑i=1Npilog2(piqi)≥0D_{KL}(P||Q)=\sum_{i=1}^N p_i log_2 (\frac{p_i}{q_i}) \ge 0 DKL(P∣∣Q)=i=1Npilog2(qipi)0

  • 其中,pip_ipiqiq_iqi是分布PPPQQQ在事件iii上的概率

QQQ为均匀分布,即qi=1Nq_i=\frac{1}{N}qi=N1

DKL(P∣∣Q)=∑i=1Npilog2(pi1/N)=∑i=1Npilog2(piN)=∑i=1Npilog2pi+∑i=1Npilog2N=∑i=1Npilog2pi+log2N∑i=1NpiD_{KL}(P||Q)=\sum_{i=1}^N p_i log_2 (\frac{p_i}{1/N})=\sum_{i=1}^N p_i log_2 (p_i N)=\sum_{i=1}^N p_i log_2 p_i + \sum_{i=1}^N p_i log_2 N=\sum_{i=1}^N p_i log_2 p_i + log_2 N\sum_{i=1}^N p_iDKL(P∣∣Q)=i=1Npilog2(1/Npi)=i=1Npilog2(piN)=i=1Npilog2pi+i=1Npilog2N=i=1Npilog2pi+log2Ni=1Npi

因为∑i=1Npi=1\sum_{i=1}^N p_i=1i=1Npi=1,所以DKL(P∣∣Q)=∑i=1Npilog2pi+log2ND_{KL}(P||Q)=\sum_{i=1}^N p_i log_2 p_i + log_2 NDKL(P∣∣Q)=i=1Npilog2pi+log2N

应用非负性,则DKL(P∣∣Q)=∑i=1Npilog2pi+log2N≥0D_{KL}(P||Q)=\sum_{i=1}^N p_i log_2 p_i + log_2 N \ge 0DKL(P∣∣Q)=i=1Npilog2pi+log2N0

可得−∑i=1Npilog2pi≤log2N-\sum_{i=1}^N p_i log_2 p_i \le log_2 Ni=1Npilog2pilog2N

因此 H(I)≤log2NH(I)\le log_2 NH(I)log2N 得证

等号成立,当且仅当∀i,pi=qi=1N\forall i, p_i=q_i=\frac{1}{N}i,pi=qi=N1

二、交叉熵与KL散度(相对熵)

2.1、交叉熵

信息熵是衡量一个概率分布所蕴含的“不确定性”的期望值,交叉熵就是用一个预测分布度量真实分布所蕴含的“不确定性”的期望值,即在真实分布PPP的情况下,用预测分布QQQ度量信息量时的平均信息量。对于离散随机变量,其公式如下:

H(P,Q)=−∑i=1Npilog2qiH(P,Q) = -\sum_{i=1}^N p_i log_2 q_i H(P,Q)=i=1Npilog2qi

  • 其中,pip_ipiqiq_iqi是分布PPPQQQ在事件iii上的概率

举例说明(详见文章1中 “2.3 熵的估计部分” ):预测天气

  • 天气的真实概率分布PPP未知,使用模型QQQ进行预测(预估的概率分布)
  • 若只考虑模型PPP,信息熵H(P)H(P)H(P)表示天气预测所需的平均信息量(也是最低信息量);
  • 若只考虑模型QQQ,信息熵H(Q)H(Q)H(Q)式中的“概率”及“信息量”均“未知”
  • 假设经过观测后,得到了真实概率分布PPP(将观测分布作为真实分布,详见 文章3 对于最大似然估计与交叉熵的说明),则H(P,Q)H(P,Q)H(P,Q)表示真实分布PPP的情况下,用预测分布QQQ预测天气时,所需的平均信息量

性质:H(P,Q)≥H(P)H(P,Q)\ge H(P)H(P,Q)H(P)

  • 等号成立当且仅当P=QP=QP=Q,即∀i,pi=qi\forall i, p_i=q_ii,pi=qi(同样可采用拉格朗日乘子法证明)
  • 可以认为信息熵H(P)H(P)H(P)表示天气预测所需的最低信息量,而交叉熵H(P,Q)H(P,Q)H(P,Q)表示基于预测模型QQQ要付出的信息量,额外付出的信息量就是相对熵DKL(P∣∣Q)D_{KL}(P||Q)DKL(P∣∣Q)

【交叉熵相关文章】

  1. 一文搞懂熵(Entropy),交叉熵(Cross-Entropy) - 将为帅的文章 - 知乎https://zhuanlan.zhihu.com/p/149186719
  2. 深入理解KL散度(番外篇一) - zjc的文章 - 知乎https://zhuanlan.zhihu.com/p/1923892456325380081
  3. 为什么交叉熵(cross-entropy)可以用于计算代价? - 灵剑的回答 - 知乎https://www.zhihu.com/question/65288314/answer/849294209
  4. 说明:文章3中关于PPPQQQ、观测分布的讨论
    • 文章中观点:对数里面那个分布理解为真实的随机变量分布,而将对数外面那个理解为观察到的频率
    • 疑问:很多文章里都把对数里面的分布Q当作预测的分布,对数外面的分布P当作真实分布,那么是否可以把观测分布当作真实分布?
    • 回答:对于最优化问题,我们是认为优化完成的时候模型输出的恰好就是真实的概率,这是我们期望得到的结果。于是我们认为对应似然值越高说明模型效果越好,所以优化目标就变成让似然值最高,也就是让交叉熵尽量低。

2.2、KL散度(相对熵)

2.2.1、定义及性质

KL散度(Kullback-Leibler Divergence),也称相对熵(Relative Entropy),可以度量两个概率分布PPPQQQ的差异。对于离散随机变量(包含NNN个事件),其公式如下:
DKL(P∣∣Q)=∑i=1Npilog2(piqi)D_{KL}(P||Q)=\sum_{i=1}^N p_i log_2 (\frac{p_i}{q_i}) DKL(P∣∣Q)=i=1Npilog2(qipi)

  • 其中,pip_ipiqiq_iqi是分布PPPQQQ在事件iii上的概率
  • log2piqi=log2pi−log2qilog_2 \frac{p_i}{q_i}=log_2 p_i - log_2 q_ilog2qipi=log2pilog2qi,可以认为是事件iii在不同分布下的信息量之差,如果把PPP当作真实分布,QQQ当作拟合分布,则该式表示对于事件iii,模型QQQ相对于真实情况PPP的预测偏差所带来的信息损失
  • DKL(P∣∣Q)=∑i=1Npilog2(piqi)=∑i=1Npi(log2pi−log2qi)D_{KL}(P||Q)=\sum_{i=1}^N p_i log_2 (\frac{p_i}{q_i})=\sum_{i=1}^N p_i(log_2 p_i - log_2 q_i)DKL(P∣∣Q)=i=1Npilog2(qipi)=i=1Npi(log2pilog2qi),如果把PPP当作真实分布,QQQ当作拟合分布,则该式表示用分布QQQ拟合分布PPP时,分布PPP所有可能发生事件的信息损失的期望值,即平均信息损失
  • DKL(P∣∣Q)=∑i=1Npi(log2pi−log2qi)=∑i=1Npilog2pi−∑i=1Npilog2qi=−∑i=1Npilog2qi−(−∑i=1Npilog2pi)=H(P,Q)−H(P)D_{KL}(P||Q)=\sum_{i=1}^N p_i(log_2 p_i - log_2 q_i)=\sum_{i=1}^N p_i log_2 p_i - \sum_{i=1}^N p_i log_2 q_i=- \sum_{i=1}^N p_i log_2 q_i - (-\sum_{i=1}^N p_i log_2 p_i)=H(P,Q) - H(P)DKL(P∣∣Q)=i=1Npi(log2pilog2qi)=i=1Npilog2pii=1Npilog2qi=i=1Npilog2qi(i=1Npilog2pi)=H(P,Q)H(P)
    • DKL(P∣∣Q)=H(P,Q)−H(P)D_{KL}(P||Q)=H(P,Q)-H(P)DKL(P∣∣Q)=H(P,Q)H(P),散度等于交叉熵与信息熵之差,如果把PPP当作真实分布,QQQ当作拟合分布,则散度表示用分布QQQ近似分布PPP时多付出的冗余信息量,直接量化了两个分布的差异

非负性DKL(P∣∣Q)≥0D_{KL}(P||Q)\ge 0DKL(P∣∣Q)0

  • 等号成立当且仅当P=QP=QP=Q,即∀i,pi=qi\forall i, p_i=q_ii,pi=qi
  • KL散度用来衡量两个分布之间的差异程度,两者差异越小,KL散度越小,当两分布一致时,KL散度为0

不对称性DKL(P∣∣Q)≠DKL(Q∣∣P)D_{KL}(P||Q)\neq D_{KL}(Q||P)DKL(P∣∣Q)=DKL(Q∣∣P)

【KL散度不对称性相关文章】

  1. 深入理解 KL 散度(Kullback-Leibler Divergence):从直觉、数学到前沿应用的全方位解析 - Laurie的文章 - 知乎https://zhuanlan.zhihu.com/p/1950257135775642370

  2. 机器学习中的散度 - Taylor Wu的文章 - 知乎https://zhuanlan.zhihu.com/p/45131536

  3. 深入理解KL散度(番外篇一) - zjc的文章 - 知乎https://zhuanlan.zhihu.com/p/1923892456325380081

  4. 说明:可将文章1中 “4. 关键特性:为何它不是“距离”?” 所举例子与文章2中 “1. 熵 vs. KL-散度” 的示例图对照理解

2.2.2、非负性证明

说明:使用Jensen不等式证明非负性

已知DKL(P∣∣Q)=∑i=1Npilog2(piqi)D_{KL}(P||Q)=\sum_{i=1}^N p_i log_2 (\frac{p_i}{q_i})DKL(P∣∣Q)=i=1Npilog2(qipi),即DKL(P∣∣Q)=−∑i=1Npilog2(qipi)D_{KL}(P||Q)=-\sum_{i=1}^N p_i log_2 (\frac{q_i}{p_i})DKL(P∣∣Q)=i=1Npilog2(piqi)

已知对数函数是凹函数(二阶导数为负),满足Jensen不等式,即log2(∑i=1nλixi)≥∑i=1nλilog2(xi)log_2 (\sum_{i=1}^n\lambda_i x_i)\ge \sum_{i=1}^n\lambda_i log_2 (x_i)log2(i=1nλixi)i=1nλilog2(xi)

pip_ipi看作λi\lambda_iλiqipi\frac{q_i}{p_i}piqi看作xix_ixi,其中,∀pi,pi≥0\forall p_i, p_i \ge 0pi,pi0∑i=1npi=1\sum_{i=1}^n p_i=1i=1npi=1(另外,∑i=1nqi=1\sum_{i=1}^n q_i=1i=1nqi=1

DKL(P∣∣Q)=−∑i=1Npilog2(qipi)≥log2(∑i=1npiqipi)=log2(∑i=1nqi)=0D_{KL}(P||Q)=-\sum_{i=1}^N p_i log_2 (\frac{q_i}{p_i})\ge log_2 (\sum_{i=1}^n p_i \frac{q_i}{p_i})=log_2 (\sum_{i=1}^n q_i)=0DKL(P∣∣Q)=i=1Npilog2(piqi)log2(i=1npipiqi)=log2(i=1nqi)=0,得证

DKL(P∣∣Q)=0D_{KL}(P||Q)=0DKL(P∣∣Q)=0,当且仅当所有qipi=c\frac{q_i}{p_i}=cpiqi=c,即所有的qi=pi=1Nq_i=p_i=\frac{1}{N}qi=pi=N1

2.3、Jensen不等式

2.3.1、凸函数与凹函数

【定义】

函数fff是定义区间上凸函数:如果对于区间内任意两点x1x_1x1x2x_2x2和任意实数λ∈[0,1]\lambda \in [0,1]λ[0,1],都有以下不等式成立:
f(λx1+(1−λ)x2)≤λf(x1)+(1−λ)f(x2)f(\lambda x_1 + (1-\lambda) x_2) \le \lambda f(x_1) + (1-\lambda) f(x_2) f(λx1+(1λ)x2)λf(x1)+(1λ)f(x2)
【说明】

  • 不等式中的“≤\le”换成“<<<”,则称函数为严格凸函数

  • λx1+(1−λ)x2\lambda x_1 + (1-\lambda) x_2λx1+(1λ)x2:表示x1x_1x1x2x_2x2的一个凸组合,实际上就是连接x1x_1x1x2x_2x2的线段上的任意一点

  • λf(x1)+(1−λ)f(x2)\lambda f(x_1) + (1-\lambda) f(x_2)λf(x1)+(1λ)f(x2):表示函数值f(x1)f(x_1)f(x1)f(x2)f(x_2)f(x2)的一个凸组合,实际上就是弦(两点连线)上对应点的值

【凸组合说明】

λx1+(1−λ)x2=x2−λ(x2−x1)\lambda x_1 + (1-\lambda) x_2=x_2-\lambda(x_2-x_1)λx1+(1λ)x2=x2λ(x2x1)

  • λ=0\lambda=0λ=0时:x2−λ(x2−x1)=x2x_2-\lambda(x_2-x_1)=x_2x2λ(x2x1)=x2
  • λ=1\lambda=1λ=1时:x2−λ(x2−x1)=x1x_2-\lambda(x_2-x_1)=x_1x2λ(x2x1)=x1
  • 0<λ<10<\lambda<10<λ<1时:x2−λ(x2−x1)x_2-\lambda(x_2-x_1)x2λ(x2x1)表示x1x_1x1x2x_2x2之间的任意一点
  • λ\lambdaλ越大,点越靠近x1x_1x1(为方便理解,可以0<x1<x20<x_1<x_20<x1<x2为例进行分析,此时x2−x1x_2-x_1x2x1表示两点之间的距离)

【几何意义】

凸函数意味着始终在函数图像的上方
在这里插入图片描述

2.3.2、Jensen不等式

函数ϕ\phiϕ是定义区间上的凹函数:对于任意点x1,x2,...,xn∈Ix_1, x_2,..., x_n \in Ix1,x2,...,xnI和权重λ1,λ2,...,λn≥0\lambda_1, \lambda_2,..., \lambda_n \ge 0λ1,λ2,...,λn0满足∑i=1nλi=1\sum_{i=1}^n \lambda_i=1i=1nλi=1,有:
ϕ(∑i=1nλixi)≥∑i=1nλiϕ(xi)\phi(\sum_{i=1}^n\lambda_i x_i)\ge \sum_{i=1}^n\lambda_i \phi(x_i) ϕ(i=1nλixi)i=1nλiϕ(xi)
若函数ϕ\phiϕ严格凹函数,则等号成立当且仅当所有xix_ixi(对应权重λi>0\lambda_i>0λi>0完全相等,即x1=x2=...xnx_1=x_2=...x_nx1=x2=...xn

【取等条件证明】

【充分性】:若所有xix_ixi相等(设xi=cx_i=cxi=c),则ϕ(∑i=1nλixi)=∑i=1nλiϕ(xi)\phi(\sum_{i=1}^n\lambda_i x_i)=\sum_{i=1}^n\lambda_i \phi(x_i)ϕ(i=1nλixi)=i=1nλiϕ(xi)

若所有xix_ixi相等(设xi=cx_i=cxi=c),则:

  • ϕ(∑i=1nλixi)=ϕ(c∑i=1nλi)=ϕ(c)\phi(\sum_{i=1}^n\lambda_i x_i)=\phi(c\sum_{i=1}^n\lambda_i)=\phi(c)ϕ(i=1nλixi)=ϕ(ci=1nλi)=ϕ(c)

  • ∑i=1nλiϕ(xi)=∑i=1nλiϕ(c)=ϕ(c)\sum_{i=1}^n\lambda_i \phi(x_i)=\sum_{i=1}^n\lambda_i \phi(c)=\phi(c)i=1nλiϕ(xi)=i=1nλiϕ(c)=ϕ(c)

  • 等式成立

【必要性】:若ϕ(∑i=1nλixi)=∑i=1nλiϕ(xi)\phi(\sum_{i=1}^n\lambda_i x_i)=\sum_{i=1}^n\lambda_i \phi(x_i)ϕ(i=1nλixi)=i=1nλiϕ(xi),则所有xix_ixi相等

已知条件:函数ϕ\phiϕ是严格凹函数,即ϕ(λx1+(1−λ)x2)>λϕ(x1)+(1−λ)ϕ(x2)\phi(\lambda x_1 + (1-\lambda) x_2) > \lambda \phi(x_1) + (1-\lambda) \phi(x_2)ϕ(λx1+(1λ)x2)>λϕ(x1)+(1λ)ϕ(x2)

假设ϕ(∑i=1nλixi)=∑i=1nλiϕ(xi)\phi(\sum_{i=1}^n\lambda_i x_i)=\sum_{i=1}^n\lambda_i \phi(x_i)ϕ(i=1nλixi)=i=1nλiϕ(xi),但存在xj≠xkx_j \neq x_kxj=xk(对应权重λj>0,λk>0\lambda_j>0, \lambda_k>0λj>0,λk>0),将点集分为两组:

  • 组A:与xjx_jxj相同的点(权重和α=∑i∈Aλi>0\alpha=\sum_{i\in A}\lambda_i>0α=iAλi>0

  • 组B:其他点(权重和β=∑i∈Bλi>0\beta=\sum_{i\in B}\lambda_i>0β=iBλi>0xkx_kxk),α+β=1\alpha+\beta=1α+β=1

  • 两组的加权平均值分别记为:y=∑i∈Aλixiα=xjy=\frac{\sum_{i\in A}\lambda_i x_i}{\alpha}=x_jy=αiAλixi=xjz=∑i∈Bλixiβz=\frac{\sum_{i\in B}\lambda_i x_i}{\beta}z=βiBλixi

  • ϕ(∑i=1nλixi)=ϕ(αy+βz)\phi(\sum_{i=1}^n\lambda_i x_i)=\phi(\alpha y + \beta z)ϕ(i=1nλixi)=ϕ(αy+βz),为严格凹函数,当y≠zy\neq zy=z时可推出ϕ(αy+βz)>αϕ(y)+βϕ(z)\phi(\alpha y + \beta z)>\alpha\phi(y) + \beta\phi(z)ϕ(αy+βz)>αϕ(y)+βϕ(z)

  • ∑i=1nλiϕ(xi)=∑i∈Aλiϕ(xi)+∑i∈Bλiϕ(xi)≤αϕ(y)+ϕ(∑i∈Bλxi)=αϕ(y)+βϕ(z)\sum_{i=1}^n\lambda_i \phi(x_i)=\sum_{i\in A}\lambda_i \phi(x_i) + \sum_{i\in B}\lambda_i \phi(x_i)\le \alpha \phi(y) + \phi(\sum_{i\in B}\lambda x_i)=\alpha \phi(y) + \beta \phi(z)i=1nλiϕ(xi)=iAλiϕ(xi)+iBλiϕ(xi)αϕ(y)+ϕ(iBλxi)=αϕ(y)+βϕ(z)

  • 所以:ϕ(∑i=1nλixi)=ϕ(αy+βz)>αϕ(y)+βϕ(z)≥∑i=1nλiϕ(xi)\phi(\sum_{i=1}^n\lambda_i x_i)=\phi(\alpha y + \beta z)>\alpha\phi(y) + \beta\phi(z)\ge \sum_{i=1}^n\lambda_i \phi(x_i)ϕ(i=1nλixi)=ϕ(αy+βz)>αϕ(y)+βϕ(z)i=1nλiϕ(xi)

因为ϕ(∑i=1nλixi)=∑i=1nλiϕ(xi)\phi(\sum_{i=1}^n\lambda_i x_i)=\sum_{i=1}^n\lambda_i \phi(x_i)ϕ(i=1nλixi)=i=1nλiϕ(xi)

  • 可得y=zy=zy=z,即ϕ(αy+βz)=αϕ(y)+βϕ(z)\phi(\alpha y + \beta z)=\alpha\phi(y) + \beta\phi(z)ϕ(αy+βz)=αϕ(y)+βϕ(z)
  • 可得∑i∈Bλiϕ(xi)=ϕ(∑i∈Bλxi)\sum_{i\in B}\lambda_i \phi(x_i)=\phi(\sum_{i\in B}\lambda x_i)iBλiϕ(xi)=ϕ(iBλxi),对组BBB中的元素继续划分组AAA、组BBB,可证明所有xix_ixi相等

三、其他度量指标

3.1、条件熵

对于随机变量X,YX,YX,Y,条件熵H(Y∣X)H(Y|X)H(YX)表示在已知随机变量XXX的条件下随机变量YYY的不确定性
H(Y∣X)=∑x∈XpxH(Y∣X=x)=−∑x∈Xpx∑y∈Ypy∣xlog2py∣xH(Y|X)=\sum_{x\in X}p_x H(Y|X=x)=-\sum_{x \in X}p_x\sum_{y \in Y}p_{y|x}log_2 p_{y|x} H(YX)=xXpxH(YX=x)=xXpxyYpyxlog2pyx

举例说明:

  • 对于样本数据集DDD,样本个数为∣D∣|D|D,可分为KKK个类别,∣Ck∣|C_k|Ck表示类CkC_kCk的样本个数,则∑k=1KCk=∣D∣\sum_{k=1}^K{C_k}=|D|k=1KCk=D

  • 则数据集的信息熵H(D)=−∑k=1K∣Ck∣∣D∣log2∣Ck∣∣D∣H(D)=-\sum_{k=1}^K\frac{|C_k|}{|D|}log_2 \frac{|C_k|}{|D|}H(D)=k=1KDCklog2DCk

  • AAA为数据集DDD的某一个特征变量,有nnn个不同的取值a1,a2,...,ana_1,a_2,...,a_na1,a2,...,an,根据特征AAA的取值,将DDD划分为nnn个子集D1,D2,...,DnD_1,D_2,...,D_nD1,D2,...,Dn∣Di∣|D_i|Di表示子集DiD_iDi的样本个数,则有∑i=1n∣Di∣=∣D∣\sum_{i=1}^n|D_i|=|D|i=1nDi=D

  • 记子集中DiD_iDi属于类CkC_kCk的样本集合为DikD_{ik}Dik,则∣Dik∣|D_{ik}|DikDikD_{ik}Dik的样本个数

  • 则针对特征AAA,数据集DDD的条件熵H(D∣A)=−∑i=1n∣Di∣∣D∣∑k=1K∣Dik∣∣Di∣log2∣Dik∣∣Di∣H(D|A)=-\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=1nDDik=1KDiDiklog2DiDik,表示在已知特征AAA的条件下DDD的不确定性

【条件熵相关文章】

通俗理解条件熵 - 忆臻的文章 - 知乎https://zhuanlan.zhihu.com/p/26551798

3.2、信息增益及信息增益率

信息增益G(D,A)=H(D)−H(D∣A)G(D,A)=H(D)-H(D|A)G(D,A)=H(D)H(DA),表示已知特征AAA对于减少DDD未知量的贡献

  • 信息增益越大表示使用特征AAA来划分所获得的“纯度提升越大”
  • 缺点:若根据信息增益的大小确定分类特征则偏向于可取值数较多的特征,例如“编号”类的特征使得条件熵取0,信息增益最大

利用信息增益率可以克服信息增益的缺点,其公式为:
GR=G(D,A)HA(D)HA(D)=−∑i=1n∣Di∣∣D∣log2∣Di∣∣D∣G_R=\frac{G(D,A)}{H_A(D)}\\ H_A(D)=-\sum_{i=1}^n\frac{|D_i|}{|D|}log_2 \frac{|D_i|}{|D|} GR=HA(D)G(D,A)HA(D)=i=1nDDilog2DDi
HA(D)H_A(D)HA(D)表示特征AAA的不确定性(“不纯度”),不同取值的分布越分散,该值越大,因此可以修正“偏向于可取值数较多的特征”的缺陷,但随之而来的是对可取值较少的特征有所偏好(分母越小,整体越大)

3.3、基尼指数

与信息熵类似,基尼指数也是度量随机变量不纯度的指标,对于离散随机变量,其公式为:
Gini(I)=∑i=1Npi(1−pi)=1−∑i=1Npi2Gini(I)=\sum_{i=1}^N p_i(1-p_i)=1-\sum_{i=1}^N p_i^2 Gini(I)=i=1Npi(1pi)=1i=1Npi2
0≤Gini(I)≤10\le Gini(I)\le 10Gini(I)1,且值越大,说明不确定性越高(越“混乱”)

  • 最小值:仅有1种事件会发生,即pi=1p_i=1pi=1,其余为0,此时Gini(I)=0Gini(I)=0Gini(I)=0
  • 最大值:所有事件发生的概率相等,即pi=1Np_i=\frac{1}{N}pi=N1,此时Gini(I)=1−1N2Gini(I)=1-\frac{1}{N^2}Gini(I)=1N21
  • 信息熵的计算公式中包含大量耗时的对数运算,基尼指数在简化公式的同时性能也接近熵模型
    • 对于函数log2(x)log_2(x)log2(x),一阶泰勒展开为log2(x)=−1+x+o(x)log_2(x)=-1+x+o(x)log2(x)=1+x+o(x)
    • 所以H(X)=−∑pxlog2px≈∑px(1−px)H(X)=-\sum p_x log_2 p_x\approx \sum p_x(1-p_x)H(X)=pxlog2pxpx(1px),即基尼指数可以理解为熵模型的一阶泰勒展开

对于样本数据集DDDGini(D)=∑k=1K∣Ck∣∣D∣(1−∣Ck∣∣D∣)Gini(D)=\sum_{k=1}^K\frac{|C_k|}{|D|}(1-\frac{|C_k|}{|D|})Gini(D)=k=1KDCk(1DCk)

  • 基尼指数反映了从数据集中随机抽取两个样本,其类别标记不一致的概率。因此基尼指数越小,则数据集纯度越高。

  • 基尼指数偏向于特征值较多的特征,类似信息增益

附上一张二分类情况下,信息熵、基尼指数、分类误差的对比图

在分析Gini系数,熵,分类误差率时。其中,分类误差率具体是什么,为什么一定小于等于0.5? - 曹佳鑫的回答 - 知乎https://www.zhihu.com/question/351016937/answer/859497058

http://www.dtcms.com/a/431447.html

相关文章:

  • C#基础08-面向对象
  • 网站建设公司费用网站开发遵循
  • php做网站 价格商城网站开发技术可行性分析
  • 10.仅使用 CSS 实现波浪形卡片 UI 设计
  • 太原市手机微网站建设网络推广都有哪些方式
  • display ospf interface 概念及题目
  • 专栏导航:《数据中心网络与异构计算:从瓶颈突破到架构革命》
  • 基层单位不能建设网站织梦做有网站有后台 能下载备份所有代码文件么
  • 爱网站关键词查询工具长尾美食网站建设项目预算
  • Swift 属性
  • 服务器做网站用什么环境好页游平台网站
  • 在手机上做网站是什么软件网店推广软件
  • 无锡网站建设服务公司如何给网站的关键词做排名
  • java线上问题排查-占用内存的大对象
  • 公司网站维护一年多少钱做网站网站代理
  • 【51单片机计时器1中断的60秒数码管倒计时】2023-1-23
  • 广州网站建设知名乐云seo淘宝上开做网站的店铺
  • 品牌型网站成功案例图片五是做好纪检监察网站建设
  • 【文献笔记】remote sensing 2024 | PointStack
  • Vue2 学习记录
  • 手写MyBatis第87弹:从SqlNode树到可执行SQL的转换奥秘
  • Hot100——普通数组
  • Linux 软件安装和进程管理
  • [创业之路-645]:手机属于通信?还是属于消费类电子?还是移动互联网?
  • 网站建设 交易保障公众号推广一个6元
  • Nodejs--如何获取前端请求
  • 【项目】基于Spring全家桶的论坛系统 【下】
  • 红黑树可视化工具
  • 深圳公司网站建设设徐州关键词优化排名
  • 三角函数速度规划方法介绍