编码树
给定一个字符集
Σ
\Sigma
Σ,用
σ
:
Σ
→
{
0
,
1
}
+
\sigma: \Sigma \rightarrow \{0,1\}^+
σ:Σ→{0,1}+ 对该字符集编码。对
∀
s
1
,
s
2
∈
Σ
\forall s_1, s_2 \in \Sigma
∀s1,s2∈Σ,
s
1
≠
s
2
s_1 \neq s_2
s1=s2,有
σ
(
s
1
)
\sigma(s_1)
σ(s1) 不能是
σ
(
s
2
)
\sigma(s_2)
σ(s2) 的前缀。
我们定义
{
σ
(
s
)
∣
s
∈
Σ
}
\{\sigma(s) | s \in \Sigma \}
{σ(s)∣s∈Σ} 为
Σ
\Sigma
Σ 的前缀自由编码(prefix free encoding)。
Σ
\Sigma
Σ 的前缀自由编码构成了一颗编码树。
Σ
\Sigma
Σ 中的元素出现频率不同。为更好地压缩,我们可以让出现频率更高的字母编码程度更短。假设
s
i
s_i
si 出现概率为
p
i
p_i
pi,编码长度为
l
i
l_i
li。则确定一个字母的期望 0,1-字符串长度是
∑
p
i
l
i
\sum p_i l_i
∑pili
其中
∑
p
i
=
1
\sum p_i = 1
∑pi=1。
设
∣
Σ
∣
=
n
|\Sigma| = n
∣Σ∣=n。易证,编码树存在当且仅当
∑
i
=
1
n
2
−
l
i
≤
1
\sum_{i=1}^n 2^{-l_i} \le 1
i=1∑n2−li≤1
由此易证
∑
i
=
1
n
p
i
l
i
≤
−
∑
i
=
1
n
p
i
log
2
p
i
\sum_{i=1}^n p_i l_i \le -\sum_{i=1}^n p_i \log_2 p_i
i=1∑npili≤−i=1∑npilog2pi
等号成立当且仅当
l
i
=
−
log
2
p
i
l_i = -\log_2p_i
li=−log2pi
香浓熵
对于一个随机变量的概率分布
p
p
p(一个函数),定义香浓熵
H
(
p
)
H(p)
H(p) 为嵌在
p
p
p 中的不确定度。选定该随机变量的具体值,我们获得的信息就是
H
(
p
)
H(p)
H(p)。
设
p
=
(
p
1
,
.
.
.
,
p
n
)
p=(p_1,...,p_n)
p=(p1,...,pn),则
H
(
p
)
=
−
∑
i
=
1
n
p
i
log
2
p
i
H(p) = -\sum_{i=1}^np_i \log_2p_i
H(p)=−i=1∑npilog2pi
香浓熵表示了数据压缩的下限。
联合熵
与香浓熵类似,随机变量
X
,
Y
X,Y
X,Y 的联合熵定义为
H
(
X
,
Y
)
=
−
∑
x
∈
X
∑
y
∈
Y
p
(
x
,
y
)
log
p
(
x
,
y
)
H(X,Y) = -\sum_{x\in X} \sum_{y \in Y} p(x,y) \log p(x,y)
H(X,Y)=−x∈X∑y∈Y∑p(x,y)logp(x,y)
条件熵与互信息
我们定义条件熵 H ( Y ∣ X ) H(Y|X) H(Y∣X) 为拥有了 X X X 的信息后,随机变量 Y Y Y 的熵。在获得 X X X 信息这个过程中减少的不确定性称为信息。如果 ( X , Y ) ∼ p ( x , y ) (X,Y) \sim p(x,y) (X,Y)∼p(x,y),则定义条件熵
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 ∈ X ∑ y ∈ 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 \in X} \sum_{y \in 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∈X∑y∈Y∑p(x,y)logp(y∣x)
相对熵
设随机变量
X
X
X,
Y
Y
Y 的联合概率分布为
p
(
x
,
y
)
p(x,y)
p(x,y),则
X
X
X 和
Y
Y
Y 的互信息定义为
I
(
X
;
Y
)
=
H
(
X
)
−
H
(
X
∣
Y
)
=
∑
x
,
y
p
(
x
,
y
)
log
p
(
x
,
y
)
p
(
x
)
p
(
y
)
=
D
(
p
(
x
,
y
)
∣
∣
p
(
x
)
p
(
y
)
)
\begin{aligned} I(X;Y) &= H(X) - H(X|Y) \\ & = \sum_{x,y} p(x,y) \log \frac{p(x,y)}{p(x)p(y)} \\ &= D(p(x,y)||p(x)p(y)) \end{aligned}
I(X;Y)=H(X)−H(X∣Y)=x,y∑p(x,y)logp(x)p(y)p(x,y)=D(p(x,y)∣∣p(x)p(y))
发送者将信息
W
W
W 编码为
X
X
X,并通过信道
p
(
y
∣
x
)
p(y|x)
p(y∣x) 发送
X
X
X。接受者收到
Y
Y
Y。如果
I
(
X
;
Y
)
I(X;Y)
I(X;Y) 比较大,则接受者可以从
Y
Y
Y 中解码出
W
W
W。