博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第三次作业
阅读量:5088 次
发布时间:2019-06-13

本文共 3777 字,大约阅读时间需要 12 分钟。

参考书《数据压缩导论(第4版)》  Page 100   5, 6

  5、给定如表4-9所示的概率模型,求出序列a1a1a3a2a3a1 的实值标签。

 从概率模型可知:

   Fx(k)=0, k≤0, Fx(1)=0.2, Fx(2)=0.5, Fx(3)=1, Fx(k)=1, k>3.

将u(0)初始化为1,将l(0)初始化为0,该序列的第一个元素为a1,得到以下更新:

                                    l(1)=0+(1-0)0=0

                                    u(1)=0+(1-0)(0.2)=0.2

因此,a1包括在区间[0,0.2)中。该序列的第2个元素为a1,利用更新公式,可得:

                                    l(2)=0+(0.2-0)0=0

                                    u(2)=0+(0.2-0) Fx(1)=0.2*0.2=0.04

因此,a1a1包括在区间[0,0.04)中。该序列的第3个元素为a3,利用更新公式,可得:

                                     l(3)=0+(0.04-0)Fx(2)=0.04*0.5=0.02

                                    u(3)=0+(0.04-0) Fx(3)=0.04*1=0.04

因此,a1a1a3包括在区间[0.02,0.04)中。该序列的第4个元素为a2,利用更新公式,可得:

                                     l(4)=0.02+(0.04-0.02)Fx(1)=0.02+0.004=0.024

                                    u(4)=0.02+(0.04-00.02) Fx(2)=0.02+0.01=0.03

 

因此,a1a1a3a2包括在区间[0.024,0.03)中。该序列的第5个元素为a3,利用更新公式,可得:

                                     l(5)=0.024+(0.03-0.024)Fx(2)=0.024+0.003=0.027

                                    u(5)=0.024+(0.03-00.024) Fx(3)=0.024+0.006=0.03

因此,a1a1a3a2a3包括在区间[0.027,0.03)中。该序列的第6个元素为a1,利用更新公式,可得:

                                     l(6)=0.027+(0.03-0.027)0=0.027

                                    u(6)=0.027+(0.03-0.027) Fx(1)=0.027+0.0006=0.0276

可以生成序列a1a1a3a2a3a1的标签如下:

                                     Tx(a1a1a3a2a3a1=(0.027+0.0276)/2=0.0273

6、对于表4-9所示的概率模型,对于一个标签为0.63215699的长度为10的序列进行解码。

解: 设u(0)=1,l(0)=0,在解出第一个元素x1之后,上下限变为:

                                     l(1)=0+(1-0)Fx(x1-1)=Fx(x1-1)

                                     u (1)=0+(1-0)Fx(x1)=Fx(x1)

如果x1=1,则该区间为[0,0.2]

如果x1=2,则该区间为[0.2,0.5]

如果x1=3,则该区间为[0.5,1]

因为0.63215699在区间[0.5,1]中,所以该序列的第一个元素为a3.

利用更新后的 l(1)和u (1)的值,为第二个元素重复这一过程:

                                     l(2)=0.5+(1-0.5)Fx(x2-1)=0.5+0.5Fx(x2-1)

                                     u (2)=0.5+(1-0.5)Fx(x2)=0.5+0.5Fx(x2)

如果x1=1,则该区间为[0.5,0.6]

如果x1=2,则该区间为[0.6,0.75]

如果x1=3,则该区间为[0.75,1]

因为0.63215699在区间[0.6,0.75]中,所以该序列的第二个元素为a2.

利用更新后的 l(2)和u (2)的值,为第三个元素重复这一过程:

                                     l(3)=0.6+(0.75-0.6)Fx(x3-1)=0.6+0.15Fx(x3-1)

                                     u (3)=0.6+(0.75-0.6)Fx(x3)=0.6+0.15Fx(x3)

如果x1=1,则该区间为[0.6,0.63]

如果x1=2,则该区间为[0.63,0.675]

如果x1=3,则该区间为[0.675,0.75]

因为0.63215699在区间[0.63,0.675]中,所以该序列的第三个元素为a2.

利用更新后的 l(3)和u (3)的值,为第四个元素重复这一过程:

                                     l(4)=0.63+(0.675-0.63)Fx(x4-1)=0.63+0.045Fx(x4-1)

                                     u (4)=0.63+(0.675-0.63)Fx(x4)=0.63+0.045Fx(x4)

如果x1=1,则该区间为[0.63,0.639]

如果x1=2,则该区间为[0.639,0.6525]

如果x1=3,则该区间为[0.6525,0.675]

因为0.63215699在区间[0.63,0.639]中,所以该序列的第四个元素为a1.

利用更新后的 l(4)和u (4)的值,为第五个元素重复这一过程:

                                     l(5)=0.63+(0.639-0.63)Fx(x5-1)=0.63+0.009Fx(x5-1)

                                     u (5)=0.63+(0.639-0.63)Fx(x5)=0.63+0.009Fx(x5)

如果x1=1,则该区间为[0.63,0.6318]

如果x1=2,则该区间为[0.6318,0.6345]

如果x1=3,则该区间为[0.6345,0.639]

因为0.63215699在区间[0.6318,0.6345]中,所以该序列的第五个元素为a2.

利用更新后的 l(5)和u (5)的值,为第六个元素重复这一过程:

                                     l(6)=0.6318+(0.6345-0.6318)Fx(x6-1)=0.6318+0.0027Fx(x6-1)

                                     u (6)=0.6318+(0.6345-0.6318)Fx(x6)=0.6318+0.0027Fx(x6)

如果x1=1,则该区间为[0.6318,0.63234]

如果x1=2,则该区间为[0.63234,0.63315]

如果x1=3,则该区间为[0.63315,0.6345]

因为0.63215699在区间[0.6318,0.63234]中,所以该序列的第六个元素为a1.

利用更新后的 l(6)和u (6)的值,为第七个元素重复这一过程:

                                     l(7)=0.6318+(0.63234-0.6318)Fx(x7-1)=0.6318+0.00054Fx(x7-1)

                                     u (7)=0.6318+(0.63234-0.6318)Fx(x7)=0.6318+0.00054Fx(x7)

如果x1=1,则该区间为[0.6318,0.631908]

如果x1=2,则该区间为[0.631908,0.63207]

如果x1=3,则该区间为[0.63207,0.63234]

因为0.63215699在区间[0.63207,0.63234]中,所以该序列的第七个元素为a3.

 

利用更新后的 l(7)和u (7)的值,为第八个元素重复这一过程:

                                     l(8)=0.63207+(0.63234-0.63207)Fx(x8-1)=0.63207+0.00027Fx(x8-1)

                                     u (8)=0.63207+(0.63234-0.63207)Fx(x8)=0.63207+0.00027Fx(x8)

如果x1=1,则该区间为[0.63207,0.632124]

如果x1=2,则该区间为[0.632124,0.632205]

如果x1=3,则该区间为[0.632205,0.63234]

因为0.63215699在区间[0.632124,0.632205]中,所以该序列的第八个元素为a2.

利用更新后的 l(8)和u (8)的值,为第九个元素重复这一过程:

                                     l(9)=0.632124+(0.632205-0.632124)Fx(x9-1)=0.632124+0.000081Fx(x9-1)

                                     u (9)=0.632124+(0.632205-0.632124)Fx(x9)=0.632124+0.000081Fx(x9)

如果x1=1,则该区间为[0.632124,0.6321402]

如果x1=2,则该区间为[0.0.6321402,0.6321645]

如果x1=3,则该区间为[0.6321645,0.63234]

因为0.63215699在区间[0.0.6321402,0.6321645]中,所以该序列的第九个元素为a2.

利用更新后的 l(9)和u (9)的值,为第十个元素重复这一过程:

                                     l(10)=0.0.6321402+(0.6321645-0.0.6321402)Fx(x10-1)=0.0.6321402+0.0000243Fx(x10-1)

                                     u (10)=0.0.6321402+(0.6321645-0.0.6321402)Fx(x10)=0.0.6321402+0.0000243Fx(x10)

如果x1=1,则该区间为[0.6321402,0.63212886]

如果x1=2,则该区间为[0.63212886,0.63215325]

如果x1=3,则该区间为[0.63215325,0.6321645]

因为0.63215699在区间[0.63215325,0.6321645]中,所以该序列的第十个元素为a3.

所以该序列为a3a2a2a1a2a1a3a2a2a3

 

转载于:https://www.cnblogs.com/piece/p/4818697.html

你可能感兴趣的文章
第一次使用cnblogs
查看>>
C#语法糖之 session操作类 asp.net
查看>>
2015 Multi-University Training Contest 3
查看>>
使用Gitblit 在windows 上部署你的Git Server
查看>>
217. Contains Duplicate
查看>>
vue2.0 关于Vue实例的生命周期
查看>>
jenkins 更换主数据目录
查看>>
Silverlight中恼人的g.i.cs错误
查看>>
SQLite 数据库增删改查
查看>>
<s:iterator>的status
查看>>
C++入门--1.0输入输出
查看>>
让搭建在Github Pages上的Hexo博客可以被Google搜索到
查看>>
Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十四章:曲面细分阶段...
查看>>
在WPF控件上添加Windows窗口式调整大小行为
查看>>
背水一战 Windows 10 (36) - 控件(弹出类): ToolTip, Popup, PopupMenu
查看>>
打开3389
查看>>
React学习记录
查看>>
nginx常见内部参数,错误总结
查看>>
对象与类
查看>>
《奸的好人2》财色战场----笔记
查看>>