参考书《数据压缩导论(第4版)》 Page 100 5, 6
5、给定如表4-9所示的概率模型,求出序列a1a1a3a2a3a1 的实值标签。
由概率模型可知,映射a1<=>1,a2<=>2,a3<=>3
Fx(k)=0, k≤0, Fx(1)=0.2, Fx(2)=0.5, Fx(3)=1, k>3.
下界: l(0)=0,上界:u(0)=1
该序列的第1个元素为a1:
l(1)= 0+(1- 0)Fx(0)=0
u(1)=0+(1-0) Fx(1)=0.2
序列的第2个元素为a1
l(2)= 0+(0.2- 0)Fx(0)=0
u(2)=0+(0.2-0) Fx(1)=0.04
序列的第3个元素为a3
l(3)= 0+(0.04- 0)Fx(2)=0.02
u(3)=0+(0.04-0) Fx(3)=0.04
序列的第4个元素为a2
l(4)= 0.02+(0.04- 0.02)Fx(1)=0.024
u(4)=0.02+(0.04-0.02) Fx(2)=0.03
序列的第5个元素为a3
l(5)= 0.024+(0.03- 0.024)Fx(2)=0.027
u(5)=0.024+(0.03-0.024) Fx(3)=0.03
序列的第6个元素为a1
l(6)= 0.027+(0.03- 0.027)Fx(0)=0.027
u(6)=0.027+(0.03-0.027) Fx(1)=0.0276
该序列a1a1a3a2a3a1的标签所在的区间为[0.027,0.0276)
可以生成序列a1a1a3a2a3a1的标签如下:
Tx(a1a1a3a2a3a1)= l(6)+u(6)/2
=(0.027+0.0276)/2
=0.0273
6、对于表4-9所示的概率模型,对于一个标签为0.63215699的长度为10的序列进行解码。
由概率模型可知,映射a1<=>1,a2<=>2,a3<=>3
Fx(k)=0, k≤0, Fx(1)=0.2, Fx(2)=0.5, Fx(3)=1, k>3.
下界: l(0)=0,上界:u(0)=1
l(k)= l(k-1)+(u(k-1)- l(k-1))Fx(xk-1)
u(k)=l(k-1)+(u(k-1)-l(k-1)) Fx(xk)
l(1)= l(0)+(u(0)- l(0))Fx(xk-1)
u(1)=l(0)+(u(0)-l(0)) Fx(xk)
如果当x1=1,则该区间为[0,0.2)、x1=2,则该区间为[0.2,0.5)、x1=3,则该区间为[0.5,1)
0.63215699在该区间[0.5,1)内 所以 第一个序列为 a3
l(2)= l(1)+(u(1)- l(1))Fx(xk-1)
u(2)=l(1)+(u(1)-l(1)) Fx(xk)
如果当x2=1,则该区间为[0.5,0.6)、x2=2,则该区间为[0.6,0.75)、x2=3,则该区间为[0.75,1)
0.63215699在该区间[0.6,0.75)内 所以 第二个序列为 a2
以此类推
当x3=2时,区间为[0.63,0.675) 0.63215699在该区间内
当x4=1时,区间为[0.63,0.639) 0.63215699在该区间内
当x5=2时,区间为[0.6318,0.6345) 0.63215699在该区间内
当x6=1时,区间为[0.6318,0.63234) 0.63215699在该区间内
当x7=3时,区间为[0.63207,0.63234) 0.63215699在该区间内
当x8=2时,区间为[0.632124,0.632205) 0.63215699在该区间内
当x9=2时,区间为[0.6321402,0.6321645) 0.63215699在该区间内
当x10=3时,区间为[0.63215235,0.6321645) 0.63215699在该区间内
所以 标签为0.63215699的长度为10的序列a3a2a2a1a2a1a3a2a2a3