当前位置:文档之家› 离散信源熵信道容量实验报告

离散信源熵信道容量实验报告

离散信源熵信道容量实验报告
离散信源熵信道容量实验报告

计算离散信源熵、离散信道容量

1 实验任务和目的

实验任务:

(1)简要总结信源的熵、信道容量的物理意义,概念;

(2)写出离散信源熵、离散信道容量计算的基本步骤,画出实现离散信源熵、离散信道容量计算的程序流程图;

(3)讨论信源的熵的大小与前后符号之间相关性的关系,讨论信道容量与信源先验概率及信道转移概率的关系。 实验目的:

掌握信源的熵、信道容量的物理意义,概念;熟练掌握离散信源熵、离散信道容量的计算方法步骤;利用Matlab 编写离散信源熵、离散信道容量的计算程序;验证程序的正确性。

2 实验过程和结果 2.1 实验过程

1、简要总结信源的熵、信道容量的物理意义,概念。

信源熵的物理意义是指信源中的各个符号的平均不确定性;熵是信源符号的平均信息量,是信源符号的平均不确定度。

信道容量 概念:在信道可以传输的基本前提下,对信源的一切可能的概率分布而言,信道能够传输的最大(接收)熵速率称为信道容量。

意义:求出了某个信道的信道容量,也就找到了信源的最佳概率分布。从而指导人们改造信源,使之最大可能地利用信道的传输能力。

2、写出离散信源熵、离散信道容量计算的基本步骤,画出实现离散信源熵、离散信道容量计算的程序流程图;

离散信源熵的计算步骤:

()()()11log log ()q

r r r i i i i H X E p a a p a =??

==- ???

信道容量的计算步骤:()

(){}()符号/;m ax bit Y X I C X

P =

3、(1)讨论信源的熵的大小与前后符号之间相关性的关系,讨论信道容量与信源先验概率及信道转移概率的关系。

信源的相关性是信源符号间的依赖程度的度量。由于信源输出符号间的依赖关系也就是信源的相关性使信源的实际熵减小。信源输出符号间统计约束关系越长,信源的实际熵越小。当信源输出符号间彼此不存在依赖关系且为等概率分布时,信源的实际熵等于最大熵。

(2)信道容量与信源先验概率及信道转移概率的关系。

信道容量是信道的一个参数,反映了信道所能传输的最大信息量,其大小与信源无关。对不同的输入概率分布,互信息一定存在最大值。我们将这个最大值定义为信道的容量。一但转移概率矩阵确定以后,信道容量也完全确定了。尽管信道容量的定义涉及到输入概率分布,但信道容量的数值与输入概率分布无关。我们将不同的输入概率分布称为试验信源,对不同的试验信源,互信息也不同。其中必有一个试验信源使互信息达到最大。这个最大值就是信道容量。

实验结果

计算离散信源熵:

计算离散信道容量:

3实验总结和心得

通过本次的试验,让我加深了对信息论与编码这门课知识点的认识,学会了怎么样去计算信源熵以及信道容量,怎样去把它具体实现出来。在此次实验过程中,让我认识到了做实验之前预习是很重要的,通过查找资料可以解决一些我们不能解决的问题的方法。还有就是不懂的问题及时问老师,能解决的问题随堂解决。

4附录(代码)

计算信道容量:

clc;clear all;

N = input('输入信源符号X的个数N=');

M = input('输出信源符号Y的个数M=');

p_yx=zeros(N,M); %程序设计需要信道矩阵初始化为零fprintf('输入信道矩阵概率\n')

for i=1:N

for j=1:M

p_yx(i,j)=input('p_yx=');%输入信道矩阵概率if p_yx(i)<0

error('不符合概率分布')

end

end

end

for i=1:N %各行概率累加求和

s(i)=0;

for j=1:M

s(i)=s(i)+p_yx(i,j);

end

end

for i=1:N %判断是否符合概率分布

if (s(i)<=0.999999||s(i)>=1.000001)

error('不符合概率分布')

end

end

b=input('输入迭代精度:');%输入迭代精

度 for i=1:N

p(i)=1.0/N; %取初始概率为均匀分布

end

for j=1:M %计算q(j)

q(j)=0;

for i=1:N

q(j)=q(j)+p(i)*p_yx(i,j);

end

end

for i=1:N %计算a(i) d(i)=0;

for j=1:M

if(p_yx(i,j)==0) d(i)=d(i)+0; else d(i)=d(i)+p_yx(i,j)*log(p_yx(i,j)/q(j)); end

end

a(i)=exp(d(i)); end u=0;

for i=1:N %计算u

u=u+p(i)*a(i); end

IL=log2(u); %计算IL

IU=log2(max(a));%计算IU n=1;

while((IU-IL)>=b) %迭代计算

for i=1:N

p(i)=p(i)*a(i)/u; %重新赋值p(i)

end

for j=1:M %计算q(j)

q(j)=0;

for i=1:N

q(j)=q(j)+p(i)*p_yx(i,j);

end

end for i=1:N %计算a(i)

d(i)=0;

for j=1:M

if(p_yx(i,j)==0)

d(i)=d(i)+0;

else

d(i)=d(i)+p_yx(i,j)*log(p_yx(i,j)/q(j)); end

end

a(i)=exp(d(i)); end u=0;

for i=1:N %计算u

u=u+p(i)*a(i);

end

IL=log2(u); %计算IL

IU=log2(max(a));%计算IU n=n+1;

end

fprintf('信道矩阵为:\n'); disp(p_yx);

fprintf('迭代次数n=%d\n',n);

fprintf('信道容量C=%f比特/符号',IL);

计算离散信源熵:

%用MA TLAB编程实现单符号离散无记忆信源熵的计算

function H = entropy(p)

%该函数用来计算包含任意多个符号的信源熵(比特)

%p为DMS的概率分布,行向量

if sum(p)~=1 %判断是否满足概率完备性(~= 不等于的意思)

error('!!!不满足概率完备性,请重新输入信源分布')

return;

else

L = length(p) %得到信源符号的个数

H=0; %熵值初始化为零

for i=1:L

H=H-p(i)*log2(p(i)); %累加熵函数各个子项

end

end

%sum(A):求数组A的元素之和

%length(X):求矢量X的长度

%log2(X):计算以2为底X的对数

%error:显示错误信息

信源及信源熵习题答案

第二章: 试问四进制、八进制脉冲所含信息量是二进制脉冲的多少倍 解: 四进制脉冲可以表示4个不同的消息,例如:{0, 1, 2, 3} 八进制脉冲可以表示8个不同的消息,例如:{0, 1, 2, 3, 4, 5, 6, 7} 二进制脉冲可以表示2个不同的消息,例如:{0, 1} 假设每个消息的发出都是等概率的,则: 四进制脉冲的平均信息量H(X 1) = log 2n = log 24 = 2 bit/symbol 八进制脉冲的平均信息量H(X 2) = log 2n = log 28 = 3 bit/symbol 二进制脉冲的平均信息量H(X 0) = log 2n = log 22 = 1 bit/symbol 《 所以: 四进制、八进制脉冲所含信息量分别是二进制脉冲信息量的2倍和3倍。 居住某地区的女孩子有25%是大学生,在女大学生中有75%是身高160厘米以上的,而女孩子中身高160厘米以上的占总数的一半。假如我们得知“身高160厘米以上的某女孩是大学生”的消息,问获得多少信息量 解: 设随机变量X 代表女孩子学历 X x 1(是大学生) x 2(不是大学生) P(X) ( 设随机变量Y 代表女孩子身高 Y y 1(身高>160cm ) y 2(身高<160cm ) P(Y) " 已知:在女大学生中有75%是身高160厘米以上的 即:p(y 1/ x 1) = 求:身高160厘米以上的某女孩是大学生的信息量 即:bit y p x y p x p y x p y x I 415.15.075.025.0log )()/()(log )/(log )/(2111121111=??? ???-=? ? ????-=-= 一副充分洗乱了的牌(含52张牌),试问 (1) 任一特定排列所给出的信息量是多少 (2) 若从中抽取13张牌,所给出的点数都不相同能得到多少信息量 》 解: (1) 52张牌共有52!种排列方式,假设每种排列方式出现是等概率的则所给出的信息量是: bit x p x I i i 581.225!52log )(log )(2==-= (2) 52张牌共有4种花色、13种点数,抽取13张点数不同的牌的概率如下:

(完整版)计算离散信源的熵matlab实现

实验一:计算离散信源的熵 一、实验设备: 1、计算机 2、软件:Matlab 二、实验目的: 1、熟悉离散信源的特点; 2、学习仿真离散信源的方法 3、学习离散信源平均信息量的计算方法 4、熟悉 Matlab 编程; 三、实验内容: 1、写出计算自信息量的Matlab 程序 2、写出计算离散信源平均信息量的Matlab 程序。 3、掌握二元离散信源的最大信息量与概率的关系。 4、将程序在计算机上仿真实现,验证程序的正确性并完成习题。 四、实验报告要求 简要总结离散信源的特点及离散信源平均信息量的计算,写出习题的MATLAB 实现语句。 信息论基础: 自信息的计算公式 21()log a I a p = Matlab 实现:I=log2(1/p) 或I=-log2(p) 熵(平均自信息)的计算公式 22111()log log q q i i i i i i H x p p p p ====-∑∑ Matlab 实现:HX=sum(-x.*log2(x));或者h=h-x(i)*log2(x(i)); 习题: 1. 甲地天气预报构成的信源空间为: 1111(),,,8482 X p x ??????=???????? 小雨 云 大雨晴 乙地信源空间为: 17(),88 Y p y ??????=???????? 小雨晴 求此两个信源的熵。求各种天气的自信息量。 案:() 1.75;()0.5436H X H Y ==

运行程序: p1=[1/2,1/4,1/8,1/8];%p1代表甲信源对应的概率p2=[7/8,1/8];%p2代表乙信源对应的概率 H1=0.0; H2=0.0; I=[]; J=[]; for i=1:4 H1=H1+p1(i)*log2(1/p1(i)); I(i)=log2(1/p1(i)); end disp('自信息量分别为:'); I disp('H1信源熵为:'); H1 for j=1:2 H2=H2+p2(j)*log2(1/p2(j)); J(j)=log2(1/p2(j)); end disp('自信息量分别为:'); J disp('H2信源熵为:'); H2

实验一-信息熵与图像熵计算-正确

实验一信息熵与图像熵计算(2 学时) 一、实验目的 1.复习MATLAB的基本命令,熟悉MATLAB下的基本函数; 2.复习信息熵基本定义,能够自学图像熵定义和基本概念。 二、实验内容 1.能够写出MATLAB源代码,求信源的信息熵; 2.根据图像熵基本知识,综合设计出MATLAB程序,求出给定图像的图像熵。 三、实验仪器、设备 1.计算机-系统最低配置256M内存、P4 CPU; 2.MATLAB编程软件。 四实验流程图 五实验数据及结果分析 四、实验原理 1.MATLAB中数据类型、矩阵运算、图像文件输入与输出知识复习。 2.利用信息论中信息熵概念,求出任意一个离散信源的熵(平均自信息量)。自信息是一个随机变量,它是指某一信源发出某一消息所含有的信息量。所发出的消息不

同,它们所含有的信息量也就不同。任何一个消息的自信息量都代表不了信源所包含的平均自信息量。不能作为整个信源的信息测度,因此定义自信息量的数学期望为信源的平均自信息量: 1( ) 1 ( ) [log ] ( ) log ( ) i n i i p a i H E p a p a X 信息熵的意义:信源的信息熵H是从整个信源的统计特性来考虑的。它是从平均意义上来表征信源的总体特性的。对于某特定的信源,其信息熵只有一个。不同的信源因统计特性不同,其熵也不同。 3.学习图像熵基本概念,能够求出图像一维熵和二维熵。 图像熵是一种特征的统计形式,它反映了图像中平均信息量的多少。图像的一维熵表示图像中灰度分布的聚集特征所包含的信息量,令Pi表示图像中灰度值为i的像素所占的比例,则定义灰度图像的一元灰度熵为: 2550 log i ii p p H 图像的一维熵可以表示图像灰度分布的聚集特征,却不能反映图像灰度分布的空间特征,为了表征这种空间特征,可以在一维熵的基础上引入能够反映灰度分布空间特征的特征量来组成图像的二维熵。选择图像的邻域灰度均值作为灰度2

实验1_信息论相关实验实验报告

信息论与编码实验一实验报告 学生姓名周群创 指导教师张祖平 学号0909110814 专业班级电子信息1101

实验一关于信源熵的实验 一、实验目的 1. 掌握离散信源熵的原理和计算方法。 2. 熟悉matlab 软件的基本操作,练习使用matlab 求解信源的信息熵。 3. 自学图像熵的相关概念,并应用所学知识,使用matlab 或其他开发工具求解图像熵。 4. 掌握Excel 的绘图功能,使用Excel 绘制散点图、直方图。 二、实验原理 1. 离散信源相关的基本概念、原理和计算公式 产生离散信息的信源称为离散信源。离散信源只能产生有限种符号。 随机事件的自信息量I(x i)为其对应的随机变量x i 出现概率对数的负值。即: I(x i)= -log2 p(x i) 随机事件X 的平均不确定度(信源熵)H(X)为离散随机变量x i 出现概 率的数学期望,即:

H(X )=-∑p(x )I (x ) =-∑p(x ) log p(x ) 2. 二元信源的信息熵 设信源符号集X={0,1},每个符号发生的概率分别为p(0)=p,p(1)=q, p+ q=1,即信源的概率空间为 则该二元信源的信源熵为: H(X) = - p log p –q log q = - p log p – (1- p) log (1- p) 即:H (p) = - p log p – (1- p) log (1- p) 其中0 ≤p ≤1 3. MATLAB 二维绘图 用matlab 中的命令plot(x, y)就可以自动绘制出二维图来。 例1-2,在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) %绘制图形 4. MATLAB 求解离散信源熵 求解信息熵过程: 1) 输入一个离散信源,并检查该信源是否是完备集。 2) 去除信源中符号分布概率为零的元素。 3) 根据平均信息量公式,求出离散信源的熵。 5. 图像熵的相关知识 图像熵是一种特征的统计形式,它反映了图像中平均信息量的多少。图像的

离散信源题与答案

? ?? ???=====??????8/14/1324/18/310)(4321x x x x X P X 该信源发出的信息序列为(202 120 130 213 001 203 210 110 321 010 021 032 011 223 210)。 求: (1) 此消息的自信息量是多少 (2) 此消息中平均每符号携带的信息量是多少 解: (1) 此消息总共有14个0、13个1、12个2、6个3,因此消息发出的概率是: 6 2514814183?? ? ?????? ?????? ??=p 此消息的信息量是:bit p I 811.87log =-= (2) 此消息中平均每符号携带的信息量是:bit n I 951.145/811.87/== 某一无记忆信源的符号集为{0, 1},已知信源的概率空间为 ???? ??=??????4/34/110 )(X P X (1) 求信息符号的平均熵; (2) 由100个符号构成的序列,求某一特定序列(例如有m 个“0”和(100 - m )个“1”)的自信息量的表达式; (3) 计算(2)中序列的熵。 解: (1) bit x p x p X H i i i 811.043log 4341log 41 )(log )()(=??? ??+-=-=∑ (2) bit m x p x I x p m i i m m m i 585.15.414 3 log )(log )(4 34341)(100 100100 100100+=-=-==? ? ? ?????? ??=--- (3) bit X H X H 1.81811.0100)(100)(100=?== 某信源的消息符号集的概率分布和二进制代码如题表所列。 题表

第二章信源信息熵

第二章信源与信息熵 主要内容:(1)信源的描述与分类;(2)离散信源熵和互信息;(3)离散序列信源的熵;(4)连续信源的熵和互信息;(5)冗余度。 重点:离散/连续信源熵和互信息。 难点:离散序列有记忆信源熵。 说明:本章内容主要针对信源,但是很多基本概念却是整个信息论的基础,所以安排了较多课时。由于求熵涉及一些概率论的基础知识,考虑到大四的同学可能对这部分知识已经遗忘,故适当复习部分概率论知识。较难的 2.1.2节马尔可夫信源部分放置在本章最后讲,便于同学理解。本章概念和定理较多,比较抽象,课堂教学时考虑多讲述一些例题,通过例题来巩固概念和消化定理。 作业: 2.1—2.7,2.10,2.12。 课时分配:10课时。 板书及讲解要点: 在信息论中,信源是发出消息的源,信源输出以符号形式出现的具体消息。如果符号是确定的而且预先是知道的,那么该消息就无信息而言。只有当符号的出现是随机的,预先无法确定,一旦出现某个符合就给观察者提供了信息。因此应该用随机变量或随机矢量来表示信源,运用概率论和随机过程的理论来研究信息,这就是香农信息论的基本点。 2.1 信源的描述与分类 在通信系统中收信者在未收到消息以前对信源发出什么消息是不确定的,是随机的,所以可用随机变量、随机序列或随机过程来描述信源输出的消息,或者说用一个样本空间及其概率测度——概率空间来描述信源。 信源:产生随机变量、随机序列和随机过程的源。 信源的基本特性:具有随机不确定性。 信源的分类 离散信源:文字、数据、电报——随机序列 连续信源:话音、图像——随机过程 离散信源:输出在时间和幅度上都是离散分布的消息。

消息数是有限的或可数的,且每次只输出其中一个消息,即两两不相容。 发出单个符号的无记忆信源 离散无记忆信源: 发出符号序列的无记忆信源 离散信源 离散有记忆信源: 发出符号序列的有记忆信源 发出符号序列的马尔可夫信源 概率论基础: 无条件概率,条件概率和联合概率的性质和关系: (1) 非负性 0()()(/)(/)()1i j j i i j i j p x p y p y x p x y p x y ≤≤,,,, (2) 完备性 111 1 11 ()1,()1,(/)1, (/)1,()1 n m n i j i j i j i m m n j i i j j j i p x p y p x y p y x p x y ===========∑∑∑∑∑∑ 1 1 ()(),()()n m i j j i j i i j p x y p y p x y p x ====∑∑ (3) 联合概率 ()()(/)()(/)()()()(/)()(/)() i j i j i j i j i j i j j i j i j i p x y p x p y x p y p x y X Y p x y p x p y p y x p y p x y p x =====当与相互独立时,, (4) 贝叶斯公式 1 1 () () (/)(/)() () i j i j i j j i n m i j i j i j p x y p x y p x y p y x p x y p x y === = ∑∑, 2.1.1 无记忆信源: 例如扔骰子,每次试验结果必然是1~6点中的某一个面朝上。可以用一个离散型随机变量X 来描述这个信源输出的消息。

关于信源熵的实验报告讲解

实验报告 实验名称关于信源熵的实验课程名称信息论与编码 姓名xxx 成绩90 班级电子信息 1102学号0909112204 日期2013.11.22地点综合实验楼

实验一关于信源熵的实验 一、实验目的 1. 掌握离散信源熵的原理和计算方法。 2. 熟悉matlab 软件的基本操作,练习使用matlab 求解信源的信息熵。 3. 自学图像熵的相关概念,并应用所学知识,使用matlab 或其他开发工具 求解图像熵。 4. 掌握Excel的绘图功能,使用Excel绘制散点图、直方图。 二、实验原理 1. 离散信源相关的基本概念、原理和计算公式 产生离散信息的信源称为离散信源。离散信源只能产生有限种符号。随机事件的自信息量I(xi)为其对应的随机变量xi 出现概率对数的负值。 即: I (xi )= -log2p ( xi) 随机事件X 的平均不确定度(信源熵)H(X)为离散随机变量 xi 出现概 率的数学期望,即:

2.二元信源的信息熵 设信源符号集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 3. MATLAB二维绘图 用matlab 中的命令plot( x , y) 就可以自动绘制出二维图来。 例1-2,在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 ) %绘制图形 4. MATLAB求解离散信源熵 求解信息熵过程: 1) 输入一个离散信源,并检查该信源是否是完备集。

第三章 信源及信源熵

第三章 信源及信源熵 ?信源的主要问题: 信源的描述(数学建模); 信源输出信息能力的定量分析(信源熵); 信源信息的有效表示(信息编码)。 编码器 信道 译码器 信宿 噪声源 信源

第三章 信源及信源熵 ?信源的主要问题: 信源的描述(数学建模); 信源输出信息能力的定量分析(信源熵); 信源信息的有效表示(信息编码)。 编码器 信道 译码器 信宿 噪声源 信源

第三章信源及信源熵 ?3.1 信源的分类及其数学模型?3.2 离散单符号信源 ?3.3 离散多符号信源 ?3.3.1 离散平稳信源 ?3.3.2 离散平稳无记忆信源 ?3.3.3 离散平稳有记忆信源 ?3.3.4 马尔可夫信源 ?3.4 信源的相关性和剩余度

3.1 信源的分类及其数学模型 ?信源的分类 分类1:根据信源输出的消息在时间和取值上是离散或连续分。时间(空间)取值信源种类举例数学描述 离散离散 离散信源 (数字信源) 文字、数据、 离散化图像 离散随机变量序列 离散连续连续信号跳远比赛的结果、 语音信号抽样以后 连续随机变量序列 连续连续 波形信源 (模拟信源) 语音、音乐、热噪 声、图形、图像 随机过程 连续离散不常见

3.1 信源的分类及其数学模型 分类2:根据各维随机变量的概率分布是否随时间的推移而变化分。 1)平稳信源 2)非平稳信源 分类3:根据随机变量间是否统计独立分。 1)有记忆信源 2)无记忆信源

3.1 信源的分类及其数学模型 实际信源分类: ()( ()1H NH X H H m ??=???????????∞????????+?? ?? ???? ?X 离散无记忆信源:)记忆长度无限长:离散平稳信源平稳信源离散有记忆信源记忆长度有限马尔可夫信源:连续平稳信源非平稳信源 信源

信源编码实验报告

电子科技大学 实验报告 课程名称信息论与编码 实验名称信源编码 任课教师 姓名学号 时间2018 年11月28 日 一、实验目的和要求 1.掌握对信源变长编码定理的理解; 2.掌握信源编码技术,如香农编码,费诺编码,哈夫曼编码或其他无失真信源 编码技术; 3.对英文小说“Game of Thrones”中出现的26个英文字母和空格符号(一共 27个符号)进行信源编码。 4.至少对前两章“Prologue”和“Bran”中出现的符号进行统计。 5.任意选择一种编程平台,C++,Java,Python,Matlab等等。 6.运行程序后,能够在屏幕上显示每一个符号对应的码字,原始信源的熵,平 均码字长度,码字长度的方差,以及编码效率。

二、 实验内容 1. 对英文小说“Game of Thrones ”中出现的26个英文字母和空格符号(一共27个符号)进行信源编码。 2. 在屏幕上显示每一个符号对应的码字,原始信源的熵,平均码字长度,码字长度的方差,以及编码效率。 三、 实验原理 1. 采用哈夫曼编码完成实验要求 2.哈夫曼(Haveman )编码算法是满足前缀条件的平均二进制码长最短的编-源输出符号,而将较短的编码码字分配给较大概率的信源输出。算法是:在信源符号集合中,首先将两个最小概率的信源输出合并为新的输出,其概率是两个相应输出符号概率之和。这一过程重复下去,直到只剩下一个合并输出为止,这个最后的合并输出符号的概率为1。这样就得到了一张树图,从树根开始,将编码符号1 和0 分配在同一节点的任意两分支上,这一分配过程重复直到树叶。从树根到树叶途经支路上的编码最后就构成了一组异前置码,就是霍夫曼编码输出。 离散无记忆信源: 例如 Uu 1u 2u 3u 4u 5 P (U ) = 0.4 0.2 0.2 0.1 0.1

英语信源汉语信源信息熵的研究

英语信源、汉语信源及其信息熵的研究 摘要 英语信源和汉语信源是两种不同的自然语信源,而信息熵反映了信源的记忆长度,信源的记忆长度越长,熵就越小。只有当记忆长度为0,即信源符号间彼此没有任何依赖关系且等概率分布时,信源熵达到最大值。也就是说,信源符号相关性越强,所提供的平均信息量就越小。所以,研究这两种信源的信息熵,就可以得出每种信源中符号的相关性,和提供的平均信息量,量化的来比较两种语言。 关键词 英语信源 汉语信源 信息熵 正文 一、英语信源及其信息熵 英语字母有26个,加上空格,共27个符号。根据熵的性质,信源的最大熵 02log 27 4.76(/)H bit symbol == 但实际上,英语中的字母并非等概率出现,字母之间还有严格的依赖关系。如果我们对英语书中27个符号出现的概率加以统计,可得: 27个英语字符出现的概率 符号 概率 符号 概率 符号 概率 空格 0.2 S 0.052 Y,M 0.012 E 0.105 H 0.047 G 0.011 T 0.072 D 0.035 B 0.0105 O 0.0654 L 0.029 V 0.008 A 0.063 C 0.023 K 0.003 N 0.059 F,U 0.0225 X 0.002

I 0.055 M 0.021 J,Q 0.001 R 0.054 P 0.0175 Z 0.001 如果不考虑上述符号之间的依赖关系,即近似地认为信源是离散无记忆信源,根据离散上的定义可得 27121()log () 4.03(/) i i i H p a p a bit symbol ==-=∑ 按上述表格中的概率分布,随机选择英语字母排列起来,得到一个信源输出序列: AI_NGAE_ITE_NNR_ASAEV_OTE_BAINTHA_HYROO_POER_SE TRYGAIETRWCO … 可见,这些字母完全是随机排列,毫无相关性,却不是英语单词,所以我们应该考虑字母的依赖性。 为了进一步逼近实际情况,可把婴语信源近似地看作1阶,2阶,…,∞阶马尔可夫信源,求得相应的熵 2 3.32(/)H bit symbol = 3 3.1(/)H bit symbol = 异推出,马尔可夫信源阶数越高,输出的序列越接近实际情况。当依赖关系延伸到无穷远时,信源输出就是真正的英语。所以我们求马尔可夫信源的极限熵 1.4(/)H bit symbol ∞= 二、汉语信源及其信息熵

实验一:绘制信源熵函数曲线

信息与通信工程学院实验报告 (软件仿真性实验) 课程名称:信息论基础 实验题目:绘制信源熵函数曲线指导教师:毛煜茹 班级:15050541学号:19 学生姓名:王宇 一、实验目的和任务 掌握离散信源熵的原理和计算方法。 熟悉matlab软件的基本操作,练习应用matlab软件进行信源熵函数曲线的绘制。 理解信源熵的物理意义,并能从信源熵函数曲线图上进行解释其物理意义。 二、实验内容及原理 2.1实验内容: 用matlab软件绘制二源信源熵函数曲线。根据曲线说明信源熵的物理意义。 2.2实验原理: (1)离散信源相关的基本概念、原理和计算公式 产生离散信息的信源称为离散信源。离散信源只能产生有限种符号。 假定X是一个离散随机变量,即它的取值范围R={x1,x2,x3,…}是有限或可数的。设第i个变量x i 发生的概率为p i=P{X=x i}。则: 定义一个随机事件的自信息量I(x i)为其对应的随机变量x i出现概率对数的负值。即: I(x i )= -log 2 p(x i ) 定义随机事件X的平均不确定度H(X)为离散随机变量x i出现概率的数学期望,即:

∑∑-==i i i i i i x p x p x I x p X H )(log )()()()( 单位为 比特/符号 或 比特/符号序列。 平均不确定度H (X )的定义公式与热力学中熵的表示形式相同,所以又把平均不确定度H (X )称为信源X 的信源熵。 必须注意以下几点: 某一信源,不管它是否输出符号,只有这些符号具有某些概率特性,必有信源的熵 值;这熵值是在总体平均上才有意义,因而是个确定值,一般写成H (X ),X 是指随机变量的整体(包括概率分布)。 信息量则只有当信源输出符号而被接收者收到后,才有意义,这就是给与信息者的 信息度量,这值本身也可以是随机量,也可以与接收者的情况有关。 熵是在平均意义上来表征信源的总体特征的,信源熵是表征信源的平均不确定度, 平均自信息量是消除信源不确定度时所需要的信息的量度,即收到一个信源符号,全部解除了这个符号的不确定度。或者说获得这么大的信息量后,信源不确定度就被消除了。信源熵和平均自信息量两者在数值上相等,但含义不同。 当某一符号x i 的概率p (x i )为零时,p (x i )log p (x i ) 在熵公式中无意义,为此规定这 时的 p (x i )log p (x i ) 也为零。当信源X 中只含有一个符号x 时,必有p (x )=1,此时信源熵H (X )为零。 例1-1,设信源符号集X ={0,1},每个符号发生的概率分别为p (0)=p ,p (1)=q ,p+ q =1,即信源的概率空间为 ?? ????=?????? 1 0q p P X 则该二元信源的信源熵为: H (X ) = - p log p – q log q = - p log p – (1- p )log (1- p) 即:H (p) = - p log p – (1- p )log (1- p) 其中0 ≤ p ≤1

英语信源汉语信源信息熵的研究

英语信源、汉语信源及其信息熵的研究 摘要英语信源和汉语信源是两种不同的自然语信源,而信息熵反映了信源的记忆长度,信源的记忆长度越长,熵就越小。只有当记忆长度为0,即信源符号间彼此没有任何依赖关系且等概率分布时,信源 符号概率符号概率符号概率 空格0.2 S 0.052 Y,M 0.012 E 0.105 H 0.047 G 0.011 T 0.072 D 0.035 B 0.0105 O 0.0654 L 0.029 V 0.008 0.023 K 0.003 A 0.063 C N 0.059 F,U 0.0225 X 0.002 I 0.055 M 0.021 J,Q 0.001

R 0.054 P 0.0175 Z 0.001 如果不考虑上述符号之间的依赖关系,即近似地认为信源是离散无记忆信源,根据离散上的定义可得 27121()log () 4.03(/) i i i H p a p a bit symbol ==-=∑ 1.4(/)H bit symbol ∞= 二、汉语信源及其信息熵 对于英语,字符数少,可轻松的计算出英语信源的信息熵,但是对于汉语这个中文字符极其庞大的信源,科学家们做出了大量的统计

与计算。方法同上面的英语信源信息熵的计算,不过计算量增加了非常多。下面是截取的一些统计资料。 CCL 语料库-现代汉语总字频数:307,317,060 总字种数:9711 字频表: 的:11523375 一:4140344 是:3291508 了:3059837 在:2933070 人:2827726 不:2733842 国:2645758 有:2507415 中:2182025 他:2029395 这:1968713 我:1940875 和:1872750 大:1832977 (ZIPF'S LAW)核算,汉字的容量极限是12366个汉字,汉字的平均信息量是9.65比特 三、英语信源和汉语信源的比较 显而易见,汉语信源的信源熵远远大于英语信源的信息熵,说明

信息论与编码实验报告-信源熵值的计算

实验报告 课程名称:信息论与编码姓名: 系: 专业: 年级: 学号: 指导教师: 职称: 年月日

实验一 信源熵值的计算 一、 实验目的 1 进一步熟悉信源熵值的计算 2熟悉 Matlab 编程 二、实验原理 熵(平均自信息)的计算公式 ∑∑=--==q i i i q i i i p p p p x H 1 212log 1 log )( MATLAB 实现:))(log *.(2x x sum HX -=;或者))((log *)(2i x i x h h -= 流程:第一步:打开一个名为“nan311”的TXT 文档,读入一篇英文文章存入一个数组temp ,为了程序准确性将所读内容转存到另一个数组S ,计算该数组中每个字母与空格的出现次数(遇到小写字母都将其转化为大写字母进行计数),每出现一次该字符的计数器+1; 第二步:计算信源总大小计算出每个字母和空格出现的概率; 最后,通过统计数据和信息熵公式计算出所求信源熵值(本程序中单位为奈特nat )。 程序流程图:

三、实验内容 1、写出计算自信息量的Matlab 程序 2、已知:信源符号为英文字母(不区分大小写)和空格。 输入:一篇英文的信源文档。 输出:给出该信源文档的中各个字母与空格的概率分布,以及该信源的熵。 四、实验环境 Microsoft Windows 7 Matlab 6.5 五、编码程序 #include"stdio.h" #include #include #define N 1000 int main(void) { char s[N]; int i,n=0; float num[27]={0}; double result=0,p[27]={0}; FILE *f; char *temp=new char[485]; f=fopen("nan311.txt","r"); while (!feof(f)) { fread(temp,1, 486, f);} fclose(f); s[0]=*temp; for(i=0;i='a'&&s[i]<='z') num[s[i]-97]++; else if(s[i]>='A'&&s[i]<='Z')

信源熵值计算实验报告

实验一.信源熵值计算 1.实验目的 进一步熟悉信源熵值的计算 掌握编程语言字符处理程序的设计和调试技术 2.实验要求 已知:信源符号为英文字母(不区分大小写)和空格。 输入:一篇英文的信源文档。 输出:给出该信源文档的中各个字母与空格的概率分布,以及该信源的熵。 3.程序流程 第一步:打开一个名为“guojia ”的TXT 文档,读入一篇英文文章存入一个数组temp ,为了程序准确性将所读内容转存到另一个数组S ,计算该数组中每个字母与空格的出现次数(遇到小写字母都将其转化为大写字母进行计数),每出现一次该字符的计数器+1; 第二步:计算信源总大小计算出每个字母和空格出现的概率; 最后,通过统计数据和信息熵公式计算出所求信源熵值(本程序中单位为奈特nat )。 程序流程图: ↓ 4.程序如下:

#include"stdio.h" #include #include #define N 1000 int main(void) { char s[N]; int i,n=0; float num[27]={0}; double result=0,p[27]={0}; FILE *f; char *temp=new char[485]; f=fopen("guojia.txt","r"); while (!feof(f)) { fread(temp,1, 486, f);} fclose(f); s[0]=*temp; for(i=0;i='a'&&s[i]<='z') num[s[i]-97]++; else if(s[i]>='A'&&s[i]<='Z') num[s[i]-65]++; } printf("文档中各个字母出现的频率:\n"); for(i=0;i<26;i++) { p[i]=num[i]/strlen(s); printf("%3c:%f\t",i+65,p[i]); n++; if(n==3) { printf("\n");

信源及信源熵习题答案

· 1 · 第二章: 2.1 试问四进制、八进制脉冲所含信息量是二进制脉冲的多少倍? 解: 四进制脉冲可以表示4个不同的消息,例如:{0, 1, 2, 3} 八进制脉冲可以表示8个不同的消息,例如:{0, 1, 2, 3, 4, 5, 6, 7} 二进制脉冲可以表示2个不同的消息,例如:{0, 1} 假设每个消息的发出都是等概率的,则: 四进制脉冲的平均信息量H(X 1) = log 2n = log 24 = 2 bit/symbol 八进制脉冲的平均信息量H(X 2) = log 2n = log 28 = 3 bit/symbol 二进制脉冲的平均信息量H(X 0) = log 2n = log 22 = 1 bit/symbol 所以: 四进制、八进制脉冲所含信息量分别是二进制脉冲信息量的2倍和3倍。 2.2 居住某地区的女孩子有25%是大学生,在女大学生中有75%是身高160厘米以上的,而女孩子中身高160厘米以上的占总数的一半。假如我们得知“身高160厘米以上的某女孩是大学生”的消息,问获得多少信息量? 解: 设随机变量X 代表女孩子学历 X x 1(是大学生) x 2(不是大学生) P(X) 0.25 0.75 设随机变量Y 代表女孩子身高 Y y 1(身高>160cm ) y 2(身高<160cm ) P(Y) 0.5 0.5 已知:在女大学生中有75%是身高160厘米以上的 即:p(y 1/ x 1) = 0.75 求:身高160厘米以上的某女孩是大学生的信息量 即:bit y p x y p x p y x p y x I 415.15.075.025.0log )()/()(log )/(log )/(2111121111=??? ???-=? ? ????-=-= 2.3 一副充分洗乱了的牌(含52张牌),试问 (1) 任一特定排列所给出的信息量是多少? (2) 若从中抽取13张牌,所给出的点数都不相同能得到多少信息量? 解: (1) 52张牌共有52!种排列方式,假设每种排列方式出现是等概率的则所给出的信息量是: bit x p x I i i 581.225!52log )(log )(2==-= (2) 52张牌共有4种花色、13种点数,抽取13张点数不同的牌的概率如下: bit C x p x I C x p i i i 208.134 log )(log )(4)(1352 13 2 213 52 13=-=-==

实验一:绘制信源熵函数曲线

成绩 信息与通信工程学院实验报告 (软件仿真性实验) 课程名称:信息论基础 实验题目:绘制信源熵函数曲线指导教师:毛煜茹班级:学号:19 学生姓名:王宇 一、实验目的和任务 掌握离散信源熵的原理和计算方法。 熟悉matlab软件的基本操作,练习应用matlab软件进行信源熵函数曲线的绘制。 理解信源熵的物理意义,并能从信源熵函数曲线图上进行解释其物理意义。二、实验内容及原理 实验内容: 用matlab软件绘制二源信源熵函数曲线。根据曲线说明信源熵的物理意义。 实验原理: (1)离散信源相关的基本概念、原理和计算公式 产生离散信息的信源称为离散信源。离散信源只能产生有限种符号。

假定X是一个离散随机变量,即它的取值范围R={x1,x2,x3,…}是有限或可数的。设第i个变量x i发生的概率为p i=P{X=x i}。则: 定义一个随机事件的自信息量I(x i)为其对应的随机变量x i出现概率对数的负值。即: I(x i)= -log2p(x i) 定义随机事件X的平均不确定度H(X)为离散随机变量x i出现概率的数学期望,即: ∑∑ - = = i i i i i i x p x p x I x p X H) ( log ) ( ) ( ) ( ) ( 单位为比特/符号或比特/符号序列。 平均不确定度H(X)的定义公式与热力学中熵的表示形式相同,所以又把平均不确定度H(X)称为信源X的信源熵。 必须注意以下几点: 某一信源,不管它是否输出符号,只有这些符号具有某些概率特性,必有信源的熵值; 这熵值是在总体平均上才有意义,因而是个确定值,一般写成H(X),X是指随机变 量的整体(包括概率分布)。 信息量则只有当信源输出符号而被接收者收到后,才有意义,这就是给与信息者的信 息度量,这值本身也可以是随机量,也可以与接收者的情况有关。 熵是在平均意义上来表征信源的总体特征的,信源熵是表征信源的平均不确定度,平 均自信息量是消除信源不确定度时所需要的信息的量度,即收到一个信源符号,全 部解除了这个符号的不确定度。或者说获得这么大的信息量后,信源不确定度就被 消除了。信源熵和平均自信息量两者在数值上相等,但含义不同。 当某一符号x i的概率p(x i)为零时,p(x i)log p(x i) 在熵公式中无意义,为此规定这时的 p(x i)log p(x i) 也为零。当信源X中只含有一个符号x时,必有p(x)=1,此时信源熵H (X)为零。

实验一、离散信源的熵与离散信道的容量

信息论与编码实验报告 信息学院10电子A班级第组姓名同组成员实验名称实验一、离散信源的熵与离散信道的容量 实验设备(1)计算机(2)所用软件:Matlab或C 实验目的掌握信源的熵、信道容量的物理意义,概念;熟练掌握离散信源熵、离散信道容量的计算方法步骤;利用Matlab编写离散信源熵、离散信道容量的计算程序;验证程序的正确性。 实验内容(1)根据熵,信道容量计算的方法步骤,用Matlab编写离散信源熵、离散信道容量的计算程序; (2)用习题2.16和例3.6验证程序的正确性。 实验报告要求 1、简要总结信源的熵、信道容量的物理意义,概念; 2、写出离散信源熵、离散信道容量计算的基本步骤,画出实现离散信源熵、离散信道容量 计算的程序流程图; 3、实现离散信源熵、离散信道容量计算的Matlab源程序; 4、讨论信源的熵的大小与前后符号之间相关性的关系,讨论信道容量与信源先验概率及信 道转移概率的关系。 5、实验报告在实验后一周内交给老师,报告单一律用16开大小的纸写,以此单为封面,装 订成册。 完成时间:2012年12月22日

1、简要总结信源的熵、信道容量的物理意义,概念。 信源熵的物理意义是指信源中的各个符号的平均不确定性;熵是信源符号的平均信息量,是信源符号的平均不确定度。 信道容量概念:在信道可以传输的基本前提下,对信源的一切可能的概率分布而言,信道能够传输的最大(接收)熵速率称为信道容量。 意义:求出了某个信道的信道容量,也就找到了信源的最佳概率分布。从而指导人们改造信源,使之最大可能地利用信道的传输能力。 2、写出离散信源熵、离散信道容量计算的基本步骤,画出实现离散信源熵、离散信道容量计算的程序流程图; 离散信源熵的计算步骤: ()()() 11log log ()q r r r i i i i H X E p a a p a =??==- ???∑信道容量的计算步骤:()(){}()符号/;max bit Y X I C X P =3、实现离散信源熵、离散信道容量计算的Matlab 源程序; 实验程序: 1)计算信源熵: 新建M 文件: function[h]=H(x) h=-log2(x)*x'; 保存为H.m

信息论与编码实验报告(DOC)

实验一 绘制二进熵函数曲线(2个学时) 一、实验目的: 1. 掌握Excel 的数据填充、公式运算和图表制作 2. 掌握Matlab 绘图函数 3. 掌握、理解熵函数表达式及其性质 二、实验要求: 1. 提前预习实验,认真阅读实验原理以及相应的参考书。 2. 在实验报告中给出二进制熵函数曲线图 三、实验原理: 1. Excel 的图表功能 2. 信源熵的概念及性质 ()()[] ()[]())(1)(1 .log )( .) ( 1log 1log ) (log )()(10 , 110)(21Q H P H Q P H b n X H a p H p p p p x p x p X H p p p x x X P X i i i λλλλ-+≥-+≤=--+-=-=≤≤? ?????-===??????∑ 单位为 比特/符号 或 比特/符号序列。 当某一符号xi 的概率p(xi)为零时,p(xi)log p(xi) 在熵公式中无意义,为此规定这时的 p(xi)log p(xi) 也为零。当信源X 中只含有一个符号x 时,必有p(x)=1,此时信源熵H (X )为零。 四、实验内容: 用Excel 和Matlab 软件制作二进熵函数曲线。根据曲线说明信源熵的物理意义。 (一) Excel 具体步骤如下: 1、启动Excel 应用程序。 2、准备一组数据p 。在Excel 的一个工作表的A 列(或其它列)输入一组p ,取步长为0.01,从0至100产生101个p (利用Excel 填充功能)。

3、取定对数底c,在B列计算H(x) ,注意对p=0与p=1两处,在B列对应位置直接输入0。Excel中提供了三种对数函数LN(x),LOG10(x)和LOG(x,c),其中LN(x)是求自然对数,LOG10(x)是求以10为底的对数,LOG(x,c)表示求对数。选用c=2,则应用函数LOG(x,2)。 在单元格B2中输入公式:=-A2*LOG(A2,2)-(1-A2)*LOG(1-A2,2) 双击B2的填充柄,即可完成H(p)的计算。 4、使用Excel的图表向导,图表类型选“XY散点图”,子图表类型选“无数据点平滑散点图”,数据区域用计算出的H(p)数据所在列范围,即$B$1:$B$101。在“系列”中输入X值(即p值)范围,即$A$1:$A$101。在X轴输入标题概率,在Y轴输入标题信源熵。 (二)用matlab软件绘制二源信源熵函数曲线 p = 0.0001:0.0001:0.9999; h = -p.*log2(p)-(1-p).*log2(1-p); plot(p,h) 五、实验结果

中南大学信息论实验报告

中南大学 信息论与编码课实验报告 专业班级: 指导老师:张祖平 姓名: 学号:

实验一 关于信源熵的实验 一、实验目的 1. 掌握离散信源熵的原理和计算方法。 2. 熟悉matlab 软件的基本操作,练习使用matlab 求解信源的信息熵。 3. 自学图像熵的相关概念,并应用所学知识,使用matlab 或其他开发工具 求解图像熵。 4. 掌握Excel 的绘图功能,使用Excel 绘制散点图、直方图。 二、实验原理 1. 离散信源相关的基本概念、原理和计算公式 产生离散信息的信源称为离散信源。离散信源只能产生有限种符号。 随机事件的自信息量I (x i )为其对应的随机变量x i 出现概率对数的负值。即: I (x i )= -log 2 p (x i ) 随机事件X 的平均不确定度(信源熵)H (X )为离散随机变量x i 出现概率的数学期望,即: ∑∑-==i i i i i i x p x p x I x p X H )(log )()()()( 2. 信源的信息熵 设信源符号集X ={a1,a2,…,ar},每个符号发生的概率分别为p (a1)=p 1,p (a2)=p 2,…,p (ar),即信源的概率空间为 ,?? ????=??????)(...... )2(2 )1(1ar p ar a p a a p a P X 则该信源的信源熵为: H (X ) = - p (a1) log p (a1) –p (a2) log p (a2) –…–p (ar) log p (ar)

3. 信道的数学模型与相关熵的计算 ? 单符号离散无噪声无损信道的信道容量 4. MATLAB 二维绘图 用matlab 中的命令plot(x , y )就可以自动绘制出二维图来。 例1-2,在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 ) %绘制图形 5. MATLAB 求解离散信源熵 求解信息熵过程: 1) 输入一个离散信源,并检查该信源是否是完备集。 2) 根据H(X)公式,求出离散信源的熵。 () max (;) bit/i p x C I X Y =信道符号 {}12,,,r x X a a a ∈=输入符号集:12{,, ,} s y Y b b b ∈=输出符号集:)/()();(j i i j i b a I a I b a I -=) /(1 j i b a p 11(|)()log (|)m n i j i j i j H X Y p x y p x y ===-∑∑211 11 (/)()(/)()log (/) m n m n i j j i i j j i j i j i H Y X p x y I y x p x y p y x ======-∑∑∑∑

相关主题
文本预览
相关文档 最新文档