1、 参考书《数据压缩导论(第4版)》 Page 100
5、给定如表4-9所示的概率模型,求出序列a1a1a3a2a3a1 的实值标签。
我的答案:
对序列a1a1a3a2a3a1进行编码:
从概率模型可知:
Fx (0)=0 , Fx (1)=0.2 , Fx (2)= 0.5 , Fx (3)=1
对序列a1a1a3a2a3a1进行编码可以看做是对序列113231进行编码
根据公式
可以确定标签所在区间的上下限。
①将U(0) 初始化为1 ,L(0)初始化为0,该序列的第一个元素为1,得到以下更新:
U(1) =0+(1-0) ×0.2=0.2
L(1) =0+(1-0) ×0=0
故该标签包含在区间[0,0.2)中。
②该序列的第二个元素为1,得到以下更新:
U(2) =0+(0.2-0)× Fx (1)=0.2×0.2=0.04
L(2) =0+(0.2-0)× Fx (0)=0.2 ×0=0
故该标签包含在区间[0,0.04)中。
③该序列的第三个元素为3,得到以下更新:
U(3) =0+(0.04-0)× Fx (3)= 0.04×1=0.04
L(3) =0+(0.04-0)× Fx (2)= 0.04 ×0.5=0.02
故该标签包含在区间[0.02,0.04)中。
④该序列的第四个元素为2,得到以下更新:
U(4) =0.02+(0.04-0.02)× Fx (2)= 0.02+0.02×0.5=0.03
L(4) =0.02+(0.04-0.02)× Fx (1)= 0.02+0.02×0.2=0.024
故该标签包含在区间[0.024,0.03)中。
⑤该序列的第四个元素为3,得到以下更新:
U(5) =0.024+(0.03-0.024)× Fx (3)= 0.024+0.006×1=0.03
L(5) =0.024+(0.03-0.024)× Fx (2)= 0.024+0.006×0.5=0.027
故该标签包含在区间[0.027,0.03)中。
⑥该序列的第五个元素为1,得到以下更新:
U(6) =0.027+(0.03-0.027)×Fx (1)= 0.027+0.003×0.2=0.0276
L(6) =0.027+(0.03-0.027)× Fx (0)= 0.027+0.003×0=0.027
故该标签包含在区间[0.027,0.0276)中。
如果以区间中点作为标签,则根据公式
得
因此,序列a1a1a3a2a3a1的实值标签为0.0273。
因此,序列a1a1a3a2a3a1的实值标签为0.1365。
6、对于表4-9所示的概率模型,对于一个标签为0.63215699的长度为10的序列进行解码。
我的答案:
从概率模型可知:
Fx (0)=0 , Fx (1)=0.2 , Fx (2)= 0.5 , Fx (3)=1
对标签为0.63215699的长度为10的序列进行解码过程如下:
因此,对标签为0.63215699的长度为10的序列的译码为 a3 a2 a2 a1 a2 a1 a3 a2 a3 a2 。