zoukankan      html  css  js  c++  java
  • 第一次作业

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

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

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

    如果不进行数据压缩,则无论传输或储存都很难实用化。数据压缩之后可以较快的传输各种信源,在现有通信干线上开通更多的并行服务,降低发射功率,紧缩数据存储容量。

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

    数据压缩可以分为两类:可逆压缩(无损压缩。无失真、无差错编码或无噪声编码)和不可逆压缩(有损压缩。有失真编码)。

    参考书  1-4

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

    通过压缩文件发现,虽然有的文件压缩后占用空间的大小不会变化太多,但大多数文件在压缩后占用的空间比原文件要小很多,在传输时方便了很多时间。还可以进行无损还原。

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

    冗余度它表征信源信息率的多余程度,是描述信源客观统计特性的一个物理量。正由于信源存在着冗余度,即存在着不必要传送的信息,因此信源也就存在进一步压缩信息率的可能性。冗余度越大,压缩潜力也就越大。

    通俗的讲就是数据的重复度。

     

    参考书《数据压缩导论(第4版)》Page 30      3, 5, 7(a)

    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 

    H=-Σ(ai)logP(Ai)

    =-P(a1)log2P(a1)-P(a2)log2P(a2)-P(a3)log2P(a3)-P(a4)log2P(a4

    = -1/4*log2 (1/4)-1/4*log2 (1/4)-1/4*log2 (1/4)-1/4*log2 (1/4)

    =4*1/2

    = 2 

    H=-Σ(ai)logP(Ai)

    = - P(a1)log2P(a1)-P(a2)log2P(a2)-P(a3)log2P(a3)-P(a4)log2P(a4

    = -1/2*log2(1/2)-1/4*log2(1/4)-1/8*log2(1/8)-1/8*log2(1/8)

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

    =1.75(bits)

    H=-Σ(ai)logP(Ai)

    = - P(a1)log2P(a1)-P(a2)log2P(a2)-P(a3)log2P(a3)-P(a4)log2P(a4

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

    =1.74

    5、考虑以下序列:

    ATGCTTAACGTGCTTAACCTGAAGCTTCCGCTGAAGAACCTG

    CTGAACCCGCTTAAGCTTAAGCTGAACCTTCTGAACCTGCTT

    (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(ai)logP(Ai)

    = -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

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

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

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

    
    

      

  • 相关阅读:
    BZOJ 3611: [Heoi2014]大工程 [虚树 DP]
    BZOJ 3991: [SDOI2015]寻宝游戏 [虚树 树链的并 set]
    BZOJ 2286: [Sdoi2011消耗战 [DP 虚树]
    BZOJ 4767: 两双手 [DP 组合数]
    BZOJ 1426: 收集邮票 [DP 期望 平方]
    转「服务器运维」如何解决服务器I/O过高的问题
    iostat查看linux硬盘IO性能
    Linux前台、后台、挂起、退出、查看命令汇总
    Linux虚拟内存的作用
    -bash: iostat: command not found解决办法
  • 原文地址:https://www.cnblogs.com/yuanzhanxiang/p/4766110.html
Copyright © 2011-2022 走看看