第一次作业

1-1: 数据压缩的一个基本问题是“我们要压缩什么”,对此你是怎样理解的?

     答:数据压缩就是以最少的数码表示信源所发的信号,减少容纳给定消息集合或数据采样集合的信号空间。所谓的信号空间即被压缩的对象,它包括物理空间,时间空间,电磁频段。

1-2:数据压缩的另一个基本问题是“为什么进行压缩”,对此你又是如何理解的?

    答:现如今,采用数字技术(或系统)有很多优越性,但也使数据量大增。信息时代带来了“信息爆炸”,如果不进行数据压缩,则无论传输或储存都很难实用化。而数据压缩的好处在于可以较快的传输各种信源,在现有通信干线上开通更多的并行服务,降低发射功率,紧缩数据存储容量。

1-6:数据压缩技术是如何进行分类的?

   答:数据压缩可以分为两类:可逆压缩和不可逆压缩。可逆压缩就是无失真、无差错编码或无噪声编码。不可逆压缩就是有失真编码,信息论中称为熵压缩。

 

1、用你的计算机上的压缩工具来压缩不同文件。研究原文件的大小和类型对于压缩文件与原文件大小之比的影响。

  答:文件类型不同,压缩前的文件大小与压缩后的文件大小变化也就不同,有的文件压缩后变化很小甚至几乎不会有变化,有的文件压缩后文件会变得很小。同类型不同大小的文件的压缩也有区别,一般越大的数据压缩程度稍微更大。这也许就是不同的文件类型有的能够有损压缩,例如视频压缩,而有的却只能无损压缩,例如文本压缩。

2、从一本通俗杂志中摘录几段文字,并删除所有不会影响理解的文字,实现压缩。例如,在"this is the dog thatbelong to my friend”  中,删除 is 、the、that和to之后,仍然能传递相同的意思。用被删除的单词数与原文本的总单词数之比来衡量文本中的冗余度。用一本技术期刊中的文字来重复这一实验。对于摘自不同来源的文字,我们能否就其冗余度做出定量论述?

 答:冗余度它表征源信息率的多于程度,是描述信源客观统计特性的一个物理量。也可以说是从多余的一个量,它不影响数据的完整,也正是因为这一个多余量的存在,才能对其信源进行压缩,压缩后不会影响传递信息。信源等于信息加冗余度。因为对于不同的信息来说,重复度是不一样的。所以在这里不能对摘自不同来源的文字的冗余度做定量论述。

 

3、给定符号集A={a1,a2,a3,a4},求一下条件下的一阶熵:

(a)P(a1)=P(a2)=P(a3)=P(a4)=1/4

(b)P(a1)=1/2 , P(a2)=1/4 , P(a3)=P(a4)=1/8 

(c)P(a1)=0.505 ,  P(a2)=1/4 , P(a3)=1/8 , P(a4)=0.12 

 

(a)H= -1/4log2 (1/4)-1/4log2 (1/4)-1/4log2 (1/4)-1/4log2 (1/4)

         = 2 (bits)

(b)H= -1/2log2(1/2)-1/4log2(1/4)-1/8log2(1/8)-1/8log2(1/8)

          = 1/2+1/2+3/8+3/8

          = 7/4

          =1.75(bits)

 (c)H= -0.505log20.505-1/4log2(1/4)-1/8log2(1/8)-0.12log20.12

         = -0.505log20.505+1/2+3/8-0.12log20.12

         =1.74(bits)

 

5、考虑以下序列:

ATGCTTAACGTGCTTAACCTGAAGCTTCCGCTGAAGAACCTGCTGAACCCGCTTAAGCTTAAGCTGAACCTTCTGAACCTGCTT

(a)根据此序列估计个概率值,并计算这一序列的一阶、二阶、三阶和四阶熵。

(b)根据这些熵,能否推断此序列具有什么样的结构?

 (a)由题意得:

P(A)=21/84=1/4 、P(G)=16/84=4/21 、P(C)=24/84=2/7、P(T)=23/84

 H= -( P(A)log2P(A)+P(C)log2P(C)+P(G)log2P(G)+P(T)log2P(T) )

      -1/4log2(1/4)-2/7log2(2/7)-4/21log2(4/21)-23/84log2(23/84)

   =1/2+ 0.52+0.46+0.52

    =2(bits)

(b)根据算出的熵值,可以得出一个这样的结论:

 

7、做一个实验,看看一个模型能够多么准确地描述一个信源。

 (a)编写一段程序,从包括26个字母的符号集{a,b,...,z}中随机选择字母,组成100个四字母单词,这些单词中有多少是有意义的?

#include<iostream>
using namespace std;
#include<cstdlib>
#include<ctime>
#include<iomanip>
int main()
{
	int r,i,j;
	char z[100][100];
	srand(time(NULL));
	cout<<setfill('0');
	for(i=0;i<100;i++)
	{
		for(j=0;j<4;j++)
		{
			r=rand()%26;
			z[i][j]=r+'a';
		}
		z[i][4]='\0';
		cout<<setw(3)<<i+1<<" "<<z[i]<<"\n";
	}
	return 0;
}

 

这些单词中有这些是有意义的

meef 生态滤池

icot 日本第五代计算机研究中心

doma  二羟扁桃酸(=dihydroxy-mandelic acid) 

 

posted @ 2015-09-02 10:42  黄波1  阅读(168)  评论(0编辑  收藏  举报