实验一离散信源及其信息测度
- 格式:doc
- 大小:146.50 KB
- 文档页数:8
信息论与编码实验一离散信源信息量的计算摘要:I.引言- 信息论与编码实验一的主题- 离散信源信息量的计算的重要性II.离散信源的定义- 离散信源的定义- 离散信源的特点III.信息量的计算- 信息量的定义- 离散信源信息量的计算方法- 计算实例IV.信息熵的定义- 信息熵的定义- 信息熵的性质- 计算实例V.编码与解码- 编码的过程- 解码的过程- 编码与解码的实例VI.总结- 离散信源信息量的计算的重要性- 对信息论与编码实验一的回顾正文:I.引言信息论与编码是通信工程中的重要内容,它旨在研究如何在传输过程中有效地传输信息。
在信息论与编码实验一中,我们主要关注离散信源的信息量的计算。
离散信源是我们日常生活中最常见的信源类型,例如文字、声音、图像等。
因此,了解离散信源信息量的计算方法对于理解和应用信息论与编码理论具有重要意义。
II.离散信源的定义离散信源是指信息以离散的方式存在的信源。
离散信源的特点是信息符号是离散的、不连续的,且每个符号的出现是相互独立的。
离散信源可以分为无记忆离散信源和有记忆离散信源。
无记忆离散信源是指信源发出的每个符号的概率分布与过去符号无关,而有记忆离散信源则与过去符号有关。
III.信息量的计算信息量是衡量信息的一个重要指标,它表示了接收者在接收到符号后所获得的信息。
对于离散信源,信息量的计算公式为:I(X) = -∑P(x) * log2(P(x)),其中X 表示离散信源,P(x) 表示符号x 出现的概率。
通过计算信息量,我们可以了解信源的信息程度,从而为后续的编码和解码提供依据。
IV.信息熵的定义信息熵是信息论中的一个重要概念,它表示了信源的平均信息量。
信息熵的定义为:H(X) = -∑P(x) * log2(P(x)),其中X 表示离散信源,P(x) 表示符号x 出现的概率。
信息熵具有以下性质:1)信息熵是信息量的期望;2)信息熵的值是有限的,且在0 到比特数之间;3)当信源的每个符号出现的概率相同时,信息熵最大。
实验一 离散信源及其信息测度一、[实验目的]离散无记忆信源是一种最简单且最重要的信源,可以用完备的离散型概率空间来描述。
本实验通过计算给定的信源的熵,加深对信源及其扩展信源的熵的概念的理解。
二、[实验环境]windows XP,MATLAB三、[实验原理]信源输出的各消息的自信息量的数学期望为信源的信息熵,表达式如下 1()[()]()log ()qi i i H X E I xi p x p x ===-∑信源熵是信源的统计平均不确定性的描述,是概率函数()p x 的函数。
四、[实验内容]1、有条100字符英文信息,假定其中每字符从26个英文字母和1个空格中等概选取,那么每条信息提供的信息量为多少?若将27个字符分为三类,9个出现概率占2/7,13个出现概率占4/7,5个出现占1/7,而每类中符号出现等概,求该字符信源的信息熵。
2、二进制通信系统使用0、1,由于存在失真,传输会产生误码,用符号表示下列事件:u0:一个0发出;u1:一个1发出;v0:一个0收到;v1:一个1收到;给定下列概率:p(u0)=1/2,p(v0|u0)=3/4,p(v0|u1)=1/2。
求:(a)已知发出一个0,求收到符号后得到的信息量;(b)已知发出的符号,求收到符号后得到的信息量;3、给定离散无记忆信源X ,其概率空间为010.70.3X P ⎡⎤⎡⎤=⎢⎥⎢⎥⎣⎦⎣⎦求该信源的熵和其二次、三次扩展信源的熵。
(编写一M 函数文件: function [H_X1,H_X2,H_X3]=t03(X1,P1)%t03 求信源和其二次、三次扩展信源的熵%输入为X1,P1,分别为信源符号和概率阵%输出为原离散信源的熵H_X1和二次、三次扩展信源的熵H_X2、H_X34、某离散二维平稳信源的概率空间:设发出的符号只与前一个符号有关。
求:(a)认为信源符号之间无依赖性时,信源X 的信息熵H(X);(b)认为有依赖性时的条件熵H (X2|X1);(c)联合熵H(X1X2);(d)根据以上三者之间的关系,验证结果的正确性。
预备知识一、矩阵处理1)在MATLAB中矩阵的创建应遵循以下基本常规:矩阵元素应用方括号([])括住;每行内的元素间用逗号(,)或空格隔开;行与行之间用分号(;)或回车键隔开;元素可以是数值或表达式。
2)矩阵赋值若A=[1 2 3; 4 5 6; 7 8 9;10 11 12]若A=[1 2 3; 4 5 6; 7 8 9;10 11 12],选出前3行构成矩阵B,B=A(1:3,:)选出前2列构成矩阵C,C=A(:,1:2)3)矩阵删除在MATLAB中可以对数组中的单个元素、子矩阵和所有元素进行删除操作,删除就是将其赋值为空矩阵(用[]表示)。
若将A的2,3行去除,则A([2,3],:)=[]4)矩阵变换A' %矩阵A的转置A(:) %矩阵A按列展开形成一维数组5)矩阵运算点运算两个矩阵之间的点运算是按照数组运算规则计算,矩阵的对应元素直接运算。
要求参加运算的矩阵大小必须相同。
有“.*”、“./”和“.\”三种运算符。
乘法运算两个矩阵的维数相容时(A的列数等于B的行数),可以进行A乘B的乘法运算。
二、M文件if语句最简单的选择结构语句,其基本格式为:if 表达式语句组end说明:表达式多为关系或逻辑表达式。
如果表达式为真(非零),就执行if和end之间的语句组,然后再执行end之后的语句;如果表达式为假(零),就直接执行end之后的语句。
for语句for语句为计数循环语句,在许多情况下,循环条件是有规律变化的,通常把循环条件初值、终值和变化步长放在循环语句的开头,这种形式就是for语句的循环结构。
for循环的一般形式是:for 循环变量名=表达式1:表达式2:表达式3语句体end说明:其中表达式1的值是循环变量的初值,表达式2的值是循环步长,表达式3的值是循环变量的终值。
初值、步长和终值可以取整数、小数、正数和负数,步长可以缺省,缺省值为1。
continue语句continue语句用于控制for循环或while循环跳过某些执行语句,当出现continue 语句时,则跳过循环体中所有剩余的语句,继续下一次循环,即结束本次循环。
预备知识一、矩阵处理1)在MATLAB中矩阵的创建应遵循以下基本常规:矩阵元素应用方括号([])括住;每行内的元素间用逗号(,)或空格隔开;行与行之间用分号(;)或回车键隔开;元素可以是数值或表达式。
2)矩阵赋值若A=[1 2 3; 4 5 6; 7 8 9;10 11 12]若A=[1 2 3; 4 5 6; 7 8 9;10 11 12],选出前3行构成矩阵B,B=A(1:3,:)选出前2列构成矩阵C,C=A(:,1:2)3)矩阵删除在MATLAB中可以对数组中的单个元素、子矩阵和所有元素进行删除操作,删除就是将其赋值为空矩阵(用[]表示)。
若将A的2,3行去除,则A([2,3],:)=[]4)矩阵变换A' %矩阵A的转置A(:) %矩阵A按列展开形成一维数组5)矩阵运算点运算两个矩阵之间的点运算是按照数组运算规则计算,矩阵的对应元素直接运算。
要求参加运算的矩阵大小必须相同。
有“.*”、“./”和“.\”三种运算符。
乘法运算两个矩阵的维数相容时(A的列数等于B的行数),可以进行A乘B的乘法运算。
二、M文件if语句最简单的选择结构语句,其基本格式为:if 表达式语句组end说明:表达式多为关系或逻辑表达式。
如果表达式为真(非零),就执行if和end之间的语句组,然后再执行end之后的语句;如果表达式为假(零),就直接执行end之后的语句。
for语句for语句为计数循环语句,在许多情况下,循环条件是有规律变化的,通常把循环条件初值、终值和变化步长放在循环语句的开头,这种形式就是for语句的循环结构。
for循环的一般形式是:for 循环变量名=表达式1:表达式2:表达式3语句体end说明:其中表达式1的值是循环变量的初值,表达式2的值是循环步长,表达式3的值是循环变量的终值。
初值、步长和终值可以取整数、小数、正数和负数,步长可以缺省,缺省值为1。
continue语句continue语句用于控制for循环或while循环跳过某些执行语句,当出现continue 语句时,则跳过循环体中所有剩余的语句,继续下一次循环,即结束本次循环。
三、函数文件基本结构函数文件由function关键字引导,其基本结构为:function [输出形参表]=函数名(输入形参表)注释说明部分函数体语句return说明:以function开头的一行为引导行,表示该文件是一个函数文件。
函数名的命名规则与变量名相同。
输入形参表是函数的输入参数,可以有多个,用“逗号”来分隔;输出形参表为函数的输出参数,当输出形参只有一个时,直接输入变量名而不用方括号,多个输出形参用“逗号”来分隔。
注意:函数文件编辑结束后,不能像M文件那样单击〈F5〉或单击Debug → Save and Run选项运行,而是要直接存盘。
函数调用函数文件编制好后,就可以调用函数进行计算了。
函数调用的一般格式为:[输出实参表]=函数名(输入实参表)需要注意的是,函数调用时各实参出现的顺序、个数,应与函数定义时形参的顺序、个数一致,否则会出错。
函数调用时,先将实参传递给相应的形参,从而实现参数传递,然后再执行函数的功能。
四、二维绘图二维绘图plot(x,y,’参数’)说明:x,y可以是向量或矩阵,参数选项为一个字符串,决定二维图形的颜色、线型及数据点的图标。
plot (x1, y1, ‘参数1’,x2, y2, ‘参数2’,…)说明:可以用同一函数在同一坐标系中画多幅图形,x1,y1确定第一条曲线的坐标值,参数1为第一条曲线的选项参数;x2,y2为第二曲线的坐标值,参数2为第二条曲线的选项参数;其他图形以次类推。
坐标轴的调整(1)坐标轴比例控制函数:axis([xmin xmax ymin ymax])说明:将图形的x轴范围限定在[xmin xmax]之间,y轴的范围限定在[ymin ymax ]之间。
MATLAB绘制图形时,按照给定的数据值确定坐标轴参数范围。
(2)有关图形的标题、坐标轴标注等图形文字标识类函数如下:函数:title(‘字符串’)说明:图形标题。
函数:xlabel(‘字符串’)说明:x轴标注。
函数:ylabel(‘字符串’)说明:y轴标注。
函数:text(x,y,‘字符串’)说明:在坐标(x,y)处标注说明文字。
函数:gtext(‘字符串’)说明:用鼠标在特定处标注说明文字。
图形控制(1)图形的保持函数:hold on说明:保持当前图形及轴系的所有特性(2)网格控制函数:grid on说明:在所画的图形中添加网格线五、三维绘图1.meshgrid函数按指定方式创建网格矩阵。
函数:[X,Y]=meshgrid(a,b)说明:将等长度向量a,b,转换为二维网格数据,再以一组z轴的数据对应到这个二维网格,即可得到三维数据。
MATLAB提供了plot3函数绘制三维曲线图形。
该函数将绘制二维图形的函数plot的特性扩展到了三维空间,其功能和使用方法类似于绘制二维图形的函数。
其格式为:plot3(x1,y1,z1,‘参数1’,x2,y2,z2,‘参数2’,…)三维曲面图:surf (z)色的,其内部用不同的颜色填充六、符号计算1.定义符号变量函数:syms 变量名1 变量名2 变量名3 …说明:一次创建多个符号变量。
2.符号方程求解[x1,x2,…xn]solve(s1,s2,…sn)求解由符号表达式s1,s2,…sn组成的代数方程组,自变量分别为x1,x2,...xn3.级数的符号求和函数格式说明函数格式说明symsum(S)计算符号表达式S(表示级数的通项)对于默认自变量的不定和。
symsum(S,a,b)计算符号表达式S对于默认自变量从a到b的有限和。
symsum(S,x)计算符号表达式S对于自变量x的不定和。
symsum(S,x,a,b)计算符号表达式S对于自变量x从a到b的有限和。
4.符号计算结果的绘图实验一 离散信源及其信息测度一、[实验目的]1.掌握离散信源熵的原理和计算方法。
2.熟悉matlab 软件的基本操作,练习应用matlab 软件进行信源熵函数曲线的绘制。
3.理解信源熵的物理意义,并能从信源熵函数曲线图上进行解释其物理意义。
二、[实验环境]windows 系统,MATLAB三、[实验原理]1. 离散信源相关的基本概念、原理和计算公式(1)产生离散信息的信源称为离散信源。
离散信源只能产生有限种符号。
随机事件的自信息量I (xi )为其对应的随机变量xi 出现概率对数的负值。
即: I (xi )= -log2p ( xi)(2)信源输出的各消息的自信息量的数学期望为信源的信息熵,信源熵是信源的统计平均不确定性的描述,是概率函数()p x 的函数。
表达式如下:1()[()]()log ()qi i i H X E I xi p x p x ===-∑2. 二元信源的信息熵及二维绘图1)设信源符号集X={0,1} ,每个符号发生的概率分别为p(0)= p ,p(1)= q ,p+ q =1,即信源的概率空间为 :,则该二元信源的信源熵为:H( X) = - plogp –qlogq = - plogp –(1 - p)log(1- p) 即:H (p) = - plogp –(1 - p)log(1- p) 其中 0 ≤ p ≤1 2)MATLAB 二维绘图用matlab 中的命令plot( x , y) 就可以自动绘制出二维图来。
如:在matlab 上绘制余弦曲线图,y = cos x ,其中 0 ≤ x ≤ 2。
>>x =0:0.1:2*pi ; %生成横坐标向量,使其为 0,0.1,0.2,…,6.2 >>y =cos(x ); %计算余弦向量 >>plot(x ,y ) %绘制图形 3.求解联合熵,条件熵,平均符号熵4.求解马尔可夫信源的稳态分布及n 步转移矩阵 P (n )=P^n ;稳态分布要满足W*P=W 及∑W=1四、[实验内容]1、用matlab 编程实现离散无记忆信源熵值的计算。
编写一M 函数文件:function H= entropy(p)2、绘制2元符号信源熵函数与概率分布曲线,图形如下图所示:)(21)(212X X H X H =21211(|)()(|)q i i i H X X p a H X X a ===∑1111()(|)log (|)()log (|)qqqqi j i j i i j j i i j i j p a p a a p a a p a a p a a =====-=-∑∑∑∑1211()()log ()q qi j i j i j H X X p a a p a a ===-∑∑)|()(121X X H X H +=aiaj0 1 20 1/4 1/18 0 1 1/18 1/3 1/18 2 0 1/18 7/36 2124、一个马尔可夫信源有3个符号{}1,23,u u u ,转移概率为:()11|1/2p u u =,()21|1/2p u u =,()31|0p u u =,()12|1/3p u u =,()22|0p u u =,()32|2/3p u u =,()13|1/3p u u =,()23|2/3p u u =,()33|0p u u =,求出各符号稳态概率分布及二步转移概率矩阵五、[设计思路]1) 求解信息熵过程:去除信源中符号分布概率为零的元素, 根据平均信息量公式,求出离散信源的熵。
2) H (p) = - plogp –(1 - p)log(1- p) 其中 0 ≤ p ≤1 ,用matlab 中的命令plot( x , y) 就可以自动绘制出二维图来。
3) 根据公式进行求解4) 可列出状态转移矩阵为:1/21/201/302/31/32/30p ⎛⎫ ⎪= ⎪ ⎪⎝⎭,设状态u 1,u 2,u 3稳定后的概率分别为W 1,W 2、W 3由1231WP W W W W =⎧⎨++=⎩得1231132231231112331223231W W W W W W W W W W W W ⎧++=⎪⎪⎪+=⎪⎨⎪=⎪⎪⎪++=⎩ 六、[实验步骤]七、[实验结果]。