第一次作业

1、 教材习题1-1,1-2,1-6?

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

         答:数据压缩是以最小的数码表示信源所发的信号,减少容纳给定消息集合或数据采样集合的信号空间。

              所谓的信号空间即被压缩对象,是指:

            (1)物理空间,如存储器、磁盘、磁带、光盘、USB闪存盘等数据存储介质。

            (2)时间区间,如传输给定消息的集合所需要的时间。

            (3)电磁频段,如传输给定消息集合所要求的频谱、带宽等。
             也就是指某个信号集合所占的空域,时域和频域空间。


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

         答:1、因为如果直接存储数据会使得存储量很大,计算机容量是有限的,还有传输慢,运行缓慢,存取慢,效率低下,不方便。
              2、因为数据压缩是以最小的数码表示信源所发的信号,减少容纳给定消息集合或数据采样集合的信号空间。
              3、因为任何非随机选择的数据都有一定结构,可利用这种结构得到数据的更紧致表示。
              所以我们要进行压缩。

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

          答:根据数据压缩后是否能完全恢复原始数据分类:
             (1)、可逆压缩:也叫无失真、无差错编码或无噪声编码。其他一些术语,如冗余度压缩、熵编码、数据紧缩、信息保持编码等。
                      香农信息论:冗余度压缩的工作机理是去除或减少那些可能是后来插入数据中的冗余度,是一个可逆的过程。
             (2)、不可逆压缩:就是有失真压缩,信息论中称为熵压缩。 压缩后数据不可以恢复为初始数据。


2、 参考书《数据压缩导论(第4版)》Page 8 1.4?
     1.4、项目与习题
       1、用你计算机上的压缩工具来压缩不同文件。研究原文件的大小和类型对于压缩文件与原文件大小之比的影响。
           答:我用计算机上的WinRAR对音频(MP3)、视频(MP4)、图像(JPG)、word、txt等不同的文件进行压缩,发现word、txt等文本型的压缩文件与原文件大小之比较小,音频(MP3)、视频(MP4)、图像(JPG)的压缩文件与原文件大小之比较大。所以看出word、txt等的压缩程度大,因为音频(MP3)、视频(MP4)、图像(JPG)等格式本来就是压缩格式,已经压缩过了,而word、txt等没有经过压缩过。

       2、从一本通俗杂志中摘录几段文字,并删除所有不会影响理解的文字,实现压缩。例如,在“This is the dog that belongs to my friend”中,删除is、that和to之后,仍然能传递相同的意思。用被删除的单词数与原文本的总单词数之比来衡量文本中的冗余度。用一本技术期刊中的文字来重复这一试验。对于摘自不同来源的文字,我们能否就其冗余度做出定量论述?
           答:冗余度就是把相应的内容去掉之后不会影响原来的意思。也就是仙侬的信息论所说的数据=信息+冗余度。由于数据中有很多的冗余,所以才可以对数据进行压缩,也使压缩后可以信息不会改变。如果被删除的单词多,说明冗余度大;反之,冗余度小。

3、 参考书《数据压缩导论(第4版)》Page 30 3, 5, 7(a)?
     2.8、项目与习题
        3、给定符号集A={a1,a2,a3,a4},求以下条件下的一阶熵:
        (a)、P(a1)=P(a2)=P(a3)=P(a4)=1/4
             H(A)=(-(1/4*log21/4))+(-(1/4*log21/4))+(-(1/4*log21/4))+(-(1/4*log21/4))
                   =-(1/4*log21/4)*4
                   =2bit
(b)、P(a1)=1/2 , P(a2)=1/4 , P(a3)=P(a4)=1/8
             H(A)=(-(1/2*log21/2))+(-(1/4*log21/4))+(-(1/8*log21/8))+(-(1/8*log21/8))
                   =(-(1/2*log21/2))+(-(1/4*log21/4))+(-(1/8*log21/8))*2
                   =1.75bit
(c)、P(a1)=0.505 , P(a2)=1/4 , P(a3)=1/4 , P(a4)=0.12
             H(A)=(-(0.505*log20.505))+(-(1/4*log21/4))+(-(1/4*log21/4))+(-(0.12*log20.12))
                   =(-(0.505*log20.505))+(-(1/4*log21/4))*2+(-(0.12*log20.12))
                   =1.87bit

5、考虑以下序列:
                           ATGCTTAACGTGCTTAACCTGAAGCTTCCGCTGAAGAACCTG
                           CTGAACCCGCTTAAGCTGAACCTTCTGAAGCTTAACCTGCTT
(a)、根据此序列估计个概率值,并计算这一序列的一阶、二阶、三阶和四阶熵。
        一阶熵:P(A)=21/84,P(T)=23/84,P(G)=16/84,P(C)=24/84
H=(-(21/84)*log2(21/84))+(-(23/84)*log2(23/84))+(-(16/84)*log2(16/84))+(-(21/84)*log2(21/84))
                   =1.98bit
二阶熵:
                           AT,GC,TT,AA,CG,TG,CT,TA,AC,CT,GA,AG,CT,TC,CG,CT,GA,AG,AA,CC,TG
                           CT,GA,AC,CC,GC,TT,AA,GC,TG,AA,CC,TT,CT,GA,AG,CT,TA,AC,CT,GC,TT
    P(AT)=1/42,P(GC)=5/42,P(TT)=5/42,P(AA)=5/42,P(CG)=2/42,P(TG)=2/42,P(CT)=7/42,P(TA)=1/42,
    P(AC)=3/42,P(GA)=4/42,P(AG)=2/42,P(TC)=1/42,P(CC)=3/42,P(TG)=1/42
                 H=(-(21/84)*log2(21/84))+(-(23/84)*log2(23/84))+(-(16/84)*log2(16/84))+(-(21/84)*log2(21/84))
                   =3.53bit
三阶熵:
                           ATG,CTT,AAC,GTG,CTT,AAC,CTG,AAG,CTT,CCG,CTG,AAG,AAC,CTG
                           CTG,AAC,CCG,CTT,AAG,CTG,AAC,CTT,CTG,AAG,CTT,AAC,CTG,CTT
    P(ATG)=1/28,P(CTT)=7/28,P(AAC)=6/28,P(GTG)=1/28,P(CTG)=7/28,P(AAG)=4/28,P(CCG)=2/28

                 H=(-(1/28)*log2(1/28))+(-(7/28)*log2(7/28))+(-(6/28)*log2(6/28))+(-(1/28)*log2(1/28))+(-(7/28)*log2(7/28))

+(-(4/28)*log2(4/28))+(-(2/28)*log2(2/28))
                   =(-(1/28)*log2(1/28))*2+(-(7/28)*log2(7/28))*2+(-(6/28)*log2(6/28))+(-(4/28)*log2(4/28))+(-(2/28)*log2(2/28))
                   =2.49bit
四阶熵:
                           ATGC,TTAA,CGTG,CTTA,ACCT,GAAG,CTTC,CGCT,GAAG,AACC,TG
                           CT,GAAC,CCGC,TTAA,GCTG,AACC,TTCT,GAAG,CTTA,ACCT,GCTT
     P(ATGC)=1/21,P(TTAA)=2/21,P(CGTG)=1/21,P(CTTA)=1/21,P(ACCT)=2/21,P(GAAG)=2/21,P(CTTC)=1/21,P(CGCT)=1/21,P(AACC)=1/21,
     P(TGCT)=1/21,P(GAAC)=1/21,P(CCGC)=1/21,P(GCTT)=2/21,P(AAGC)=1/21,P(TGAA)=1/21,P(CCTT)=1/21,P(CTGA)=1/21
                 H=(-(1/21)*log2(1/21))*13+(-(2/21)*log2(2/21))*4
                   =4.01bit

      (b)、根据这些熵,能否推断此序列具有什么样的结构?
              答:根据这些熵,可以推断此序列具有的结构是:序列的阶数越大,熵值就会越大,相应的平均自信息信息就低;序列的阶数越小,熵值就会越小,相应的平均自信息信息就高。所以要想多了解序列的信息,就需要把序列少分一点,求它的低阶熵。

     7、做一个实验,看看一个模型能够多么准确地描述一个信源。
         (a)、编写一段程序,从包括26个字母的符号集{a,b,...,z}中随机选择字母,组成100个四字母单词,这些单词中有多少是有意义的?

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
    int p,i,j;
    char m[100][100];
    for(i=0;i<100;i++)
    {
        for(j=0;j<4;j++)
        {
            p=rand()%26;
            m[i][j]=p+'a';
        }
        m[i][4]='';
        printf("%d: %s 	",i+1,m[i]);
    }
    return 0;
}

   

一个有意义的单词都没有。

原文地址:https://www.cnblogs.com/zhangyang528090150/p/4792862.html