当前位置:
文档之家› 实验一_绘制二进制熵函数曲线
实验一_绘制二进制熵函数曲线
三元信源的熵为
H ( p1, p2 ,1 p1 p2 ) p1 log p1 p2 log p2 (1 p1 p2 )log(1 p1 p2 )
MATLAB函数说明
eps:极小值,避免0概率事件 meshgrid:语法[X,Y] = meshgrid(x,y) 将矢量x
% p为DMS的概率分布,行向量
例1 满足完备性
p=[0.1 0.2 0.3 0.4] h=entropy(p) 运行结果
例2 不满足完备性
p=[0.2 0.19 0.18 0.17 0.16 0.17]
h=entropy(p) 运行结果
绘制二进制对称信道平均互信息量(BSC)
行统计平均,从而得到平均不确定性。
熵的表示
1 H ( X ) H ( p1 , p2 ,..., pk ) pk I ( xk ) pk log pk k 1 k 1
K
K
注意的问题
熵是自信息量的统计平均,因此单位与自信息量的单
位相同,与熵公式中所用对数的底有关: bit/符号、nat/符号、dit/符号、r进制单位/符号。
从图上可以看出:信道给定的条件下,平均互信息随
信源分布呈现上凸性,具有最大值。而在信源给定的 条件下,平均互信息随信道转移概率呈现下凸性,具 有最小值。
四、实验报告要求
简述实验目的;
简述实验原理;
分别绘制二元信源和三元信源的熵。 通过图形分析他们的特点。
特殊公式
某个pk=0时,0log0=0 ( lim x概率事件。
离散熵的性质
可加性
H ( p1q1,..., p1q j ,..., pk q1,..., pk q j ) H ( p1, p2 ,..., pk ) H (q1, q2 ,..., qk )
互信息量
从观察输出结果中得到有关输入符号的信息。
平均互信息量
是统计平均意义下的先验不确定性和后验不确定性之 差,也是互信息量的统计平均。
信道平均互信息量
平均互信息量是非负; 平均互信息量是有界的; 平均互信息量的凸状性。
绘制二进制对称信道平均互信息量(BSC)
平均互信息量表达式
I ( X ; Y ) H (Y ) H (Y | X ) H ( pq pq ,1 pq pq ) H ( p, p)
MATLAB实现
[p,q]=meshgrid(0.000001:0.01:1,0.000001:0.01:1); Hnoise=-p.*log2(p)-(1-p).*log2(1-p); x=(1-p).*q+p.*(1-q); I=-x.*log2(x)-(1-x).*log2(1-x)-Hnoise; mesh(p , q , I) % 噪声熵
非负性
H ( p1, p2,..., pk ) H ( p) 0
凸状性
H(p1,p2,…,pk)是上凸函数。
极值性
1 1 H ( p1 , p2 ,..., pk ) H ( ,..., ) log K K K
三、实验内容
用 Matlab 软件绘制二进熵函数曲线。
和y规定的区域变换为数组X和Y,X和Y可用 于计算自变量函数或绘制3维网格/表面。X的 各行均为矢量x;Y的各列均为矢量y。
nan:无效值 mesh:绘制网格曲面
Matlab程序
p=linspace(eps,1-eps,100); q=linspace(eps,1-eps,100); [P,Q]=meshgrid(p,q); P_Q=P+Q; for n=1:100 for m=1:100 if P_Q(n,m)>=1 Q(n,m)=nan; end end end H=-P.*log2(P)-Q.*log2(Q)-(1-P-Q).*log2(1-P-Q); mesh(P,Q,H) title('三维熵函数的图形')
二元信源
X x1 x2 P( X ) p1 p ,0 p 1
二元信源的熵为
H ( p,1 p) p log p (1 p)log(1 p)
Matlab程序
p=0.00001:0.001:0.99999; h=-p.*log2(p)-(1-p).*log2(1-p); plot(p,h); title('二进熵函数曲线'); ylabel('H(p,1-p)')
绘制三元信源的熵
三元信源
X x1x2 x3 P p p 1 p p x 1 2 1 2
实验一 绘制二进制熵函数曲线
一、实验目的
熟悉工作环境 掌握绘图函数的运用
理解熵函数表达式及其性质
掌握利用MATLAB对信源熵的求解
理解信道平均互信息的性质
二、实验原理
熵
自信息量是针对信源的单个符号而言的,而符号是随
机发生的,因此单个符号的不确定性不足于代表信源 的不确定性性质,为此,可对所有符号的自信息量进
熵函数是非负函数、上凸函数,并且等概率时达到最大值。
计算任意多个符号信源的熵
MATLAB函数说明
sum(A):求数组A的元素之和
length(X):求矢量X的长度 log2(X):计算以2为底X的对数 error:显示错误信息
定义函数
function H=entropy(p) % 该函数用来计算包含任意多个符号的信源熵