一元变量信息熵的计算公式
H
(
X
)
=
∑
i
=
1
m
−
p
i
∗
l
o
g
2
p
i
H(X)=∑_{i=1}^m -p_i * log_2 p_i
H(X)=i=1∑m−pi∗log2pi
计算变量X的信息熵,对于X来说,有m种可能取值,每种取值的可能性记为
p
i
p_i
pi
变量X的信息熵 就是 每种可能性算式(
p
i
∗
l
o
g
2
p
i
p_i * log_2 p_i
pi∗log2pi )的累加。
-
二元信源的信息熵entropy
二元信源:相当于一个二进制的一bit,只有0和1两种可能。
如果0的概率:P
那么1的概率:Q=1-P
信息熵H(U) =
− P l o g 2 P − ( 1 − P ) l o g 2 ( 1 − P ) -P log_2P-(1-P) log_2 (1-P) −Plog2P−(1−P)log2(1−P) -
比赛冠军的信息熵
32 个球队进行比赛,那么冠军花落谁家 所蕴含的信息熵是多少?
假如每个球队夺冠几率均等,
那么信息熵H(U) = 32 ∗ ( 1 / 32 ∗ l o g 2 32 ) 32*(1/32* log_232 ) 32∗(1/32∗log232)= 5
随着比赛队伍的淘汰,有希望夺冠的球队越来越少,冠军球队预测所蕴含的信息熵越来越小,
比如 到达8强赛时,假如8个球队夺冠几率均等,
那么信息熵H(U) =
8 ∗ ( 1 / 8 ∗ l o g 2 8 ) 8*(1/8* log_28) 8∗(1/8∗log28)= 3
也就是说,在每种取值几率均等的前提下,可能的取值越少,信息熵越小。
在每种取值几率不均等的前提下,可能的取值少了,信息熵也可能增大。
比如,可能的取值为4个,每种取值几率不均等,分别为13/16,1/16,1/16,1/16
那么信息熵H(U) = ( 13 / 16 × l o g 2 ( 16 / 13 ) ) + 3 ∗ ( 1 / 16 ∗ l o g 2 16 ) (13/16× log_2(16/13)) + 3 *(1/16* log_216) (13/16×log2(16/13))+3∗(1/16∗log216)= 0.9933925
可能的取值为2个,每种取值几率均等,
那么信息熵H(U) = 2 ∗ ( 1 / 2 ∗ l o g 2 2 ) 2 * (1/2* log_22) 2∗(1/2∗log22)= 1
这种情况下的话,4个取值的信息熵(0.9933925)反而比2个取值的信息熵(1)要小。
总体来收,可能的取值越多,信息熵越趋于更大。
在每种取值几率均等的前提下,信息熵H(U) = l o g 2 取 值 种 类 数 量 log_2取值种类数量 log2取值种类数量 -
熵可以形象的理解为数值的散乱程度。
比如,A箱子和B箱子里面都有8个球,水平方向也是只能容纳一个球。
A箱子中间有一个隔断,把红蓝两种球分开了。很明显,A箱子因为有了一个隔断,比B箱子里面的球的分布更加有序。在箱子晃动后的静置状态下, A箱子中的每个球都有4个可能位置,B箱子中的每个球都有8个可能位置。
A箱子的熵 H(U) = 4 ∗ ( 1 / 4 ∗ l o g 2 4 ) + 3 ∗ ( 1 / 3 ∗ l o g 2 3 ) + 2 ∗ ( 1 / 2 ∗ l o g 2 2 ) + 4 ∗ ( 1 / 4 ∗ l o g 2 4 ) + 3 ∗ ( 1 / 3 ∗ l o g 2 3 ) + 2 ∗ ( 1 / 2 ∗ l o g 2 2 ) 4 * (1/4* log_24)+ 3 * (1/3* log_23)+ 2 * (1/2* log_22)+ 4 * (1/4* log_24)+ 3 * (1/3* log_23)+ 2 * (1/2* log_22) 4∗(1/4∗log24)+3∗(1/3∗log23)+2∗(1/2∗log22)+4∗(1/4∗log24)+3∗(1/3∗log23)+2∗(1/2∗log22)
= l o g 2 ( 4 ∗ 3 ∗ 2 ∗ 4 ∗ 3 ∗ 2 ) log_2(4*3*2*4*3*2) log2(4∗3∗2∗4∗3∗2)
=9.169925
B箱子的熵 H(U) =
8
∗
(
1
/
8
∗
l
o
g
2
8
)
+
7
∗
(
1
/
7
∗
l
o
g
2
7
)
+
…
+
2
∗
(
1
/
2
∗
l
o
g
2
2
)
8 * (1/8* log_28)+ 7 * (1/7* log_27)+ … + 2 * (1/2* log_22)
8∗(1/8∗log28)+7∗(1/7∗log27)+…+2∗(1/2∗log22)
=
l
o
g
2
(
8
∗
7
∗
6
∗
5
∗
4
∗
3
∗
2
)
log_2(8*7*6*5*4*3*2)
log2(8∗7∗6∗5∗4∗3∗2)
=15.299208
也可以从整体上考虑 AB两个箱子的状态,A箱子有 (4 * 3 * 2 * 4 * 3 * 2)种状态,B箱子有 ( 8 * 7 * 6 * 5 * 4 * 3 * 2 )种状态。箱子的熵,其实就是箱子所有可能状态的对数。
A箱子的熵 H(U) =
l
o
g
2
(
4
∗
3
∗
2
∗
4
∗
3
∗
2
)
log_2(4*3*2*4*3*2)
log2(4∗3∗2∗4∗3∗2)
B箱子的熵 H(U) =
l
o
g
2
(
8
∗
7
∗
6
∗
5
∗
4
∗
3
∗
2
)
log_2(8*7*6*5*4*3*2)
log2(8∗7∗6∗5∗4∗3∗2)