信息量用于度量信息的不确定性,信息量与事件发生的概率有关,事件随机性越大,信息量越大.
若事件 X X X的信息量为 I ( X ) I(X) I(X),由于观察两个独立事件同时发生时获得的信息量等于观察到事件各自发生时获得的信息量之和,即
信息量满足
I ( X , Y ) = I ( X ) + I ( Y ) I(X, Y)=I(X) + I(Y) I(X,Y)=I(X)+I(Y)
P ( X , Y ) = P ( X ) P ( Y ) P(X, Y)=P(X)P(Y) P(X,Y)=P(X)P(Y),故 X X X的信息量定义为
I ( X ) = − log P ( X ) I(X) = -\log P(X) I(X)=−logP(X)
信息熵用于衡量随机事件的不确定性,是所有随机事件信息量的期望. 若随机变量 X X X的分布为 P ( X ) P(X) P(X),则 X X X的信息熵
H ( X ) = − ∑ x ∈ X P ( x ) log P ( x ) H(X)=-\sum_{x \in X}P(x)\log P(x) H(X)=−x∈X∑P(x)logP(x)
熵只依赖与随机变量的分布,与随机变量的取值无关;
经典熵的定义中,对数的底数为2,单位为bit;
随机变量的可能值越多,信息熵就越大,不确定性越大;
当随机变量均匀分布时,熵最大,且 0 ≤ H ( X ) ≤ log N 0 \leq H(X)\leq \log N 0≤H(X)≤logN;
证明: 0 ≤ H ( X ) ≤ log N 0 \leq H(X)\leq \log N 0≤H(X)≤logN
由于所有事件的概率之和为1(约束条件),构造拉个朗日函数
L ( P , λ ) = − ∑ x P ( x ) log P ( x ) + λ ( ∑ x P ( x ) − 1 ) L(P, \lambda)=-\sum_x P(x)\log P(x) +\lambda\left (\sum_x P(x) - 1\right) L(P,λ)=−x∑P(x)logP(x)+λ(x∑P(x)−1)
求解得到极值处满足 P ( x 1 ) = ⋯ = P ( x N ) = e λ − 1 = 1 / N P(x_1)=\cdots=P(x_N)=e^{\lambda - 1}=1/N P(x1)=⋯=P(xN)=eλ−1=1/N,因此 H ( X ) ≤ log N H(X)\leq \log N H(X)≤logN。
考虑具有4种可能状态 { a , b , c , d } \{a, b, c, d\} {a,b,c,d}的随机变量 X X X:
当每个状态服从均匀分布,即概率均为1/4,若使用霍夫曼编码:00、01、10、11,表示上述4种状态,则平均编码长度为
1 4 × 2 × 4 = 2 \frac{1}{4}\times2\times4=2 41×2×4=2
亦可理解为,给定一个状态,平均询问多少次可确定该状态,编码图如下:
当每个状态的概率分别为 ( 1 2 , 1 4 , 1 8 , 1 8 ) (\dfrac{1}{2}, \dfrac{1}{4}, \dfrac{1}{8}, \dfrac{1}{8}) (21,41,81,81),若使用霍夫曼编码:0、10、110、111,表示上述4种状态,则平均编码长度为
1 2 × 1 + 1 4 × 2 + 2 × 1 8 × 3 = 1.75 \frac{1}{2}\times 1 + \frac{1}{4} \times 2 + 2\times \frac{1}{8}\times 3=1.75 21×1+41×2+2×81×3=1.75
编码图如下:
不难计算出, X X X的第一种分布的信息熵为
H ( X ) = − 4 × 1 4 × log 2 1 4 = 2 H(X)=-4\times\frac{1}{4}\times\log_2\frac{1}{4}=2 H(X)=−4×41×log241=2
X X X的第二种分布的信息熵为
H ( X ) = − 1 2 log 2 1 2 − 1 4 log 2 1 4 − 1 8 log 2 1 8 − 1 8 log 2 1 8 = 1.75 H(X)=-\frac{1}{2}\log_2\frac{1}{2} -\frac{1}{4}\log_2\frac{1}{4}-\frac{1}{8}\log_2\frac{1}{8}-\frac{1}{8}\log_2\frac{1}{8}=1.75 H(X)=−21log221−41log241−81log281−81log281=1.75
可见, X X X的信息熵刚好等于霍夫曼编码长度(最短编码长度).
条件熵表示已知 X X X的条件下, Y Y Y的不确定性。定义为已知 X X X的条件下, Y Y Y的条件概率分布的熵对 X X X的数学期望,即
H ( Y ∣ X ) = ∑ x ∈ X P ( x ) H ( Y ∣ X = x ) = − ∑ x ∈ X P ( x ) ∑ y ∈ Y P ( y ∣ x ) log P ( y ∣ x ) = − ∑ x , y P ( x , y ) log P ( y ∣ x ) \begin{aligned}H(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 P(y|x) \\ & = -\sum_{x,y}P(x, y) \log P(y|x) \end{aligned} H(Y∣X)=x∈X∑P(x)H(Y∣X=x)=−x∈X∑P(x)y∈Y∑P(y∣x)logP(y∣x)=−x,y∑P(x,y)logP(y∣x)
将一维随机变量分布推广到多维随机变量分布,则联合熵
H ( X , Y ) = − ∑ x , y P ( x , y ) log P ( x , y ) H(X, Y)=-\sum_{x,y} P(x, y)\log P(x, y) H(X,Y)=−x,y∑P(x,y)logP(x,y)
信息熵、联合熵与条件熵
H ( Y ∣ X ) = − ∑ x , y P ( x , y ) log P ( y ∣ x ) = − ∑ x , y P ( x , y ) [ log P ( x ) − log P ( x , y ) ] = H ( X , Y ) − ∑ x , y P ( x , y ) log P ( x ) = H ( X , Y ) − ∑ x P ( x ) log P ( x ) = H ( X , Y ) − H ( X ) \begin{aligned}H(Y|X) & =-\sum_{x,y}P(x, y) \log P(y|x) \\ & = -\sum_{x,y} P(x, y) [\log P(x) - \log P(x, y)]\\ & = H(X, Y) - \sum_{x,y} P(x, y) \log P(x)\\ & = H(X, Y) - \sum_{x} P(x) \log P(x) \\ & = H(X, Y) - H(X) \end{aligned} H(Y∣X)=−x,y∑P(x,y)logP(y∣x)=−x,y∑P(x,y)[logP(x)−logP(x,y)]=H(X,Y)−x,y∑P(x,y)logP(x)=H(X,Y)−x∑P(x)logP(x)=H(X,Y)−H(X)
即条件熵 H ( Y ∣ X ) H(Y|X) H(Y∣X)等于联合熵 H ( X , Y ) H(X, Y) H(X,Y)减去信息熵 H ( X ) H(X) H(X),若 X X X为已知样本分布(熵已知),最大化条件熵等价于最大化交叉熵。
对于随机变量 X X X使用霍夫曼编码,当其服从均匀分布时,其平均编码长度为2;当其服从 ( 1 2 , 1 4 , 1 8 , 1 8 ) (\dfrac{1}{2}, \dfrac{1}{4}, \dfrac{1}{8}, \dfrac{1}{8}) (21,41,81,81)分布时,其平均编码长度为1.75,但若不知其真实分布,使用图1所示的编码方式,则其平均编码长度为
1 2 × 2 + 1 4 × 2 + 1 8 × 2 + 1 8 × 2 = 2 \frac{1}{2}\times2+\frac{1}{4}\times2+\frac{1}{8}\times2+\frac{1}{8}\times2=2 21×2+41×2+81×2+81×2=2
显然大于真实分布对应的平均编码长度.
交叉熵用于衡量以非真实分布 Q ( X ) Q(X) Q(X)对应的霍夫曼树,编码来自于真实分布 P ( X ) P(X) P(X)样本的平均长度,即
H ( P , Q ) = − ∑ x ∈ X P ( x ) log Q ( x ) H(P, Q)=-\sum_{x\in X} P(x) \log Q(x) H(P,Q)=−x∈X∑P(x)logQ(x)
若真实分布可能为 P 1 ( X ) = ( 1 2 , 1 4 , 1 8 , 1 8 ) , P 2 ( X ) = ( 3 4 , 1 8 , 1 16 , 1 16 ) P_1(X)=(\dfrac{1}{2}, \dfrac{1}{4}, \dfrac{1}{8}, \dfrac{1}{8}),\ P_2(X)=(\dfrac{3}{4}, \dfrac{1}{8}, \dfrac{1}{16}, \dfrac{1}{16}) P1(X)=(21,41,81,81), P2(X)=(43,81,161,161),非真实分布 Q ( X ) = ( 1 4 , 1 4 , 1 4 , 1 4 ) Q(X)=(\dfrac{1}{4}, \dfrac{1}{4}, \dfrac{1}{4}, \dfrac{1}{4}) Q(X)=(41,41,41,41)
则不同真实分布的信息熵
H ( P 1 ) = 1.75 , H ( P 2 ) = 1.186 H(P_1)=1.75,H(P_2)=1.186 H(P1)=1.75,H(P2)=1.186
交叉熵
H ( P 1 , Q ) = − 1 2 × log 2 1 4 − 1 4 × log 2 1 4 − 2 × 1 8 × log 2 1 4 = 2 H ( P 2 , Q ) = − 3 4 × log 2 1 4 − 1 8 × log 2 1 4 − 2 × 1 16 × log 2 1 4 = 2 H(P_1,Q)=-\frac{1}{2}\times\log_2\frac{1}{4}-\frac{1}{4}\times\log_2\frac{1}{4}-2\times\frac{1}{8} \times\log_2\frac{1}{4}=2\\ H(P_2, Q)=-\frac{3}{4}\times\log_2\frac{1}{4}-\frac{1}{8}\times\log_2\frac{1}{4}-2\times\frac{1}{16}\times\log_2\frac{1}{4}=2 H(P1,Q)=−21×log241−41×log241−2×81×log241=2H(P2,Q)=−43×log241−81×log241−2×161×log241=2
对于确定的非真实分布 Q ( X ) Q(X) Q(X),无论真实分布 P ( X ) P(X) P(X)如何,交叉熵 H ( P , Q ) H(P, Q) H(P,Q)不变,且交叉熵
H ( P , Q ) ≥ H ( P ) , 当 前 仅 当 P = Q 时 等 式 成 立 H(P, Q)\geq H(P),\quad 当前仅当P=Q时等式成立 H(P,Q)≥H(P),当前仅当P=Q时等式成立
交叉熵越小,则非真实分布越接近于真实分布,故可通过最小化交叉熵,逐渐逼近样本的真实分布.
相对熵表示随机变量不同概率分布的差异性,从编码的角度来说,即以理论/拟合分布 Q Q Q编码真实分布 P P P所需的额外比特.
定义为交叉熵与信息熵的差,即
D K L ( P ∣ ∣ Q ) = H ( P , Q ) − H ( P ) D_{KL}(P||Q)=H(P, Q)-H(P) DKL(P∣∣Q)=H(P,Q)−H(P)
相对熵的性质
互信息表示随机事件之间的相关性,即已知一个变量前提下,对消除另一个变量不确定性提供的信息量,即
I ( X ; Y ) = H ( X ) − H ( X ∣ Y ) = H ( Y ) − H ( Y ∣ X ) I(X;Y)=H(X)-H(X|Y) = H(Y)-H(Y|X) I(X;Y)=H(X)−H(X∣Y)=H(Y)−H(Y∣X)
直观理解为已知一个变量而使得另一个变量不确定性减少的程度.
信息熵、 联合熵、条件熵与互信息(信息增益)间的关系: