参考书《数据压缩导论(第4版)》 Page 100 题 5, 6
5、给定如表4-9所示的概率模型,求出序列a1a1a3a2a3a1的实质标签。
表4-9 习题5、习题6的概率模型
字母 | 概率 |
a1 | 0.2 |
a2 | 0.3 |
a3 | 0.5 |
答:由题可知
映射:a1<=>1,a2<=>2,a3<=>3
cdf:Fx(0) =0, Fx(1) =0.2,Fx(2) =P(a1)+P(a2)=0.5,Fx(3) =P(a1)+P(a2)+P(a3)=1.0
上界:U(0)=1, 下界:L(0)=0
已知公式:U(n)=L(n-1)+(U(n-1)-L(n-1))Fx(xn)
L(n)=L(n-1)+(U(n-1)-L(n-1))Fx(xn-1)
a1: U(1)=L(0)+(U(0)-L(0))Fx(1)=0.2
L(1)=L(0)+(U(0)-L(0))Fx(0)=0
上界:U(1)=0.2, 下界:L(1)=0
a1a1: U(2)=L(1)+(U(1)-L(1))Fx(1)=0.04
L(2)=L(1)+(U(1)-L(1))Fx(0)=0
上界:U(2)=0.04, 下界:L(2)=0
a1a1a3: U(3)=L(2)+(U(2)-L(2))Fx(3)=0.04
L(3)=L(2)+(U(2)-L(2))Fx(2)=0.02
上界:U(3)=0.04, 下界:L(3)=0.02
a1a1a3a2: U(4)=L(3)+(U(3)-L(3))Fx(2)=0.03
L(4)=L(3)+(U(3)-L(3))Fx(1)=0.024
上界:U(4)=0.03, 下界:L(4)=0.024
a1a1a3a2a3: U(5)=L(4)+(U(4)-L(4))Fx(3)=0.03
L(5)=L(4)+(U(4)-L(4))Fx(2)=0.027
上界:U(5)=0.03, 下界:L(5)=0.027
a1a1a3a2a3a1: U(6)=L(5)+(U(5)-L(5))Fx(1)=0.0276
L(6)=L(5)+(U(5)-L(5))Fx(0)=0.027
上界:U(6)=0.0276, 下界:L(6)=0.027
由此可得序列a1a1a3a2a3a1 的实值标签为:
Tx(113231)= ( u(6) + l(6) )/2
=(0.0276+0.027)/2
=0.0273
6、对于表4-9给出的概率模型,对于一个标签为0.63215699的长度为10的序列进行解码。
答:由题可知
映射:a1<=>1,a2<=>2,a3<=>3
cdf:Fx(0) =0, Fx(1) =0.2,Fx(2) =P(a1)+P(a2)=0.5,Fx(3) =P(a1)+P(a2)+P(a3)=1.0
上界:U(0)=1, 下界:L(0)=0
已知公式:U(n)=L(n-1)+(U(n-1)-L(n-1))Fx(xn)
L(n)=L(n-1)+(U(n-1)-L(n-1))Fx(xn-1)
第一层:
上界:U(0)=1.0, 下界:L(0)=0
t*=(0.63215699-0)/(1-0)=0.63215699
Fx(2)=0.5≤t*≤Fx(3)=1.0
output: 3
第二层:
上界:U(1)=1.0, 下界:L(1)=0.5
t*=(0.63215699-0.5)/(1-0.5)=0.26431398
Fx(1)=0.2≤t*≤Fx(2)=0.5
output: 2
第三层:
上界:U(2)=0.75, 下界:L(2)=0.60
t*=(0.63215699-0.60)/(0.75-0.60)=0.21437993
Fx(1)=0.2≤t*≤Fx(2)=0.5
output: 2
第四层:
上界:U(3)=0.675, 下界:L(3)=0.630
t*=(0.63215699-0.630)/(0.675-0.630)=0.04793311
Fx(0)=0≤t*≤Fx(1)=0.2
output: 1
第五层:
上界:U(4)=0.639, 下界:L(4)=0.630
t*=(0.63215699-0.630)/(0.639-0.630)=0.23966556
Fx(1)=0.2≤t*≤Fx(2)=0.5
output: 2
第六层:
上界:U(5)=0.6345, 下界:L(5)=0.6318
t*=(0.63215699-0.6318)/(0.6345-0.6318)=0.1322185
Fx(0)≤t*≤Fx(1)
output: 1
第七层:
上界:U(6)=0.63234, 下界:L(6)=0.6318
t*=(0.63215699-0.6318)/(0.63234-0.6318)=0.6610926
Fx(2)≤t*≤Fx(3)
output: 3
第八层:
上界:U(7)=0.63234, 下界:L(7)=0.63207
t*=(0.63215699-0.63207)/(0.63234-0.63207)=0.3221852
Fx(1)≤t*≤Fx(2)
output: 2
第九层:
上界:U(8)=0.632205, 下界:L(8)=0.632124
t*=(0.63215699-0.632124)/(0.632205-0.632124)=0.40728395
Fx(1)≤t*≤Fx(2)
output: 2
第十层:
上界:U(9)=0.6321645, 下界:L(9)=0.6321402
t*=(0.63215699-0.6321402)/(0.6321645-0.6321402)=0.6909
Fx(2)≤t*≤Fx(3)
output: 3
所以这个序列为:3221213223