欢迎来到天天文库
浏览记录
ID:59818075
大小:33.00 KB
页数:4页
时间:2020-11-24
《信息论实验报告1--信息熵的计算.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、成绩辽宁工程技术大学上机实验报告实验名称信息熵的相关计算院系姓名实验目的简述本次实验目的:1、理解信息熵的概念2、掌握信息熵计算Matlab程序编写方法实验准备你为本次实验做了哪些准备:认真阅读《信息论》教材,熟悉信息熵的原理以及相应的MATLAB函数指令实验进度本次共有6个练习,完成6实验总结日本次实验的收获、体会、经验、问题和教训:1、信息熵计算Matlab源码求H(x):function[a,b]=H_x(A)sum=0;B=zeros(5,1);hx=0;%求H(x)的熵fori=1:5%i代表行forj=1:4%j代表列
2、sum=sum+A(i,j);endhx=hx-sum*log2(sum);B(i,1)=sum;sum=0;enda=B;b=hx;求H(y):function[a,b]=H_y(A)sum=0;B=zeros(1,4);hy=0;fori=1:4%i代表列forj=1:5%j代表行sum=sum+A(j,i);endB(1,i)=sum;hy=hy-sum*log2(sum);sum=0;enda=B;b=hy;求H(xy):functiony=H_xy(A)%直接输出的结果sum=0;fori=1:5forj=1:4ifA(
3、i,j)~=0sum=sum-A(i,j)*log2(A(i,j));endendendy=sum;求H(y
4、x):functiony=H_y_x(A)sum=0;fori=1:5forj=1:4sum=sum+A(i,j);endA(i,:)=A(i,:)/sum;sum=0;endy=A;求H(x
5、y):functiony=H_x_y(A)sum=0;fori=1:4forj=1:5sum=sum+A(j,i);endA(:,i)=A(:,i)/sum;sum=0;endy=A;2、数值试验算例(2个)(1)已知联合概率分布如
6、下:求H(x),H(y),H(xy)A=[0.25000;0.100.3000;00.050.100;000.050.10;000.050];[X,HX]=H_x(A)X=0.25000.40000.15000.15000.0500HX=2.0660[a,b]=H_y(A)a=0.35000.35000.20000.1000b=1.8568H_xy(A)ans=2.6660(2)已知联合概率分布如下:求H(x
7、y),H(y
8、x)A=[0.25000;0.100.3000;00.050.100;000.050.10;000.050]
9、;H_x_y(A)ans=0.71430000.28570.85710000.14290.50000000.25001.0000000.25000H_y_x(A)ans=1.00000000.25000.75000000.33330.66670000.33330.6667001.00000教师评语
此文档下载收益归作者所有