实验一贝叶斯决策

  • 格式:doc
  • 大小:469.50 KB
  • 文档页数:17

下载文档原格式

  / 21
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一贝叶斯决策

一、 实验原理

1. 最小错误率贝叶斯决策规则:

对于两类问题,最小错误率贝叶斯决策有如下判决规则:

1212(|)(|),;P x P x x x ωωωω>∈∈则反之,则。

由于先验概率i (P ω)可以确定,与当前样本x 无关,所以决策规则也可整理成下面的形式:

121212(|)()

(),()

(|)P x P l x x x P P x ωωωωωω=

>∈∈若,则否则。

2. 平均错误率

决策边界把x 轴分割成两个区域,分别称为第一类和第二类的决策区域.样本在中但属于第二类的错误概率和样本在中但属于第一类的错误概率就是出现错误的概率,再考虑到样本自身的分布后就是平均错误率:

212211()(|)()(|)()(|)P()(|)P()t

t

t t

P e P x p x dx P x p x dx

p x dx p x dx

ωωωωωω∞

-∞

-∞

=+=+⎰⎰⎰⎰

3. 此实验中的判决门限和平均错误率 (1) 判决门限

假设随机脉冲信号f 中0的概率为,高斯噪声信号n 服从,信号叠加时的放大倍数为a ,叠加后的信号为

*s f a n =+。

由最小错误率贝叶斯决策可得:

1122()(|)()(|)P p x P p x ωωωω→→

>

化简计算得:220022(ln(1)ln )

2a

a a p p t μσ+---=

(2) 平均错误率 由上述积分式可计算。

二、 实验内容

1、 已知均值和方差,产生高斯噪声信号,计算其统计特性 实验中利用MATLAB 产生均值为0,方差为1的高斯噪声信号,信号统计分布的程序和结果如下:

%产生高斯噪声并统计其特性

x=0;%均值为0 y=1;%方差为1

n=normrnd(x,y,[1 1000000]);%产生均值为0,方差为1的高斯噪声 m1=mean(n);%高斯噪声的均值 v1=var(n); %高斯噪声的方差 figure(1)

plot(n(1:400)); title('均值为0,方差为1的高斯噪声'); figure(2)

hist(n,10000); title('高斯噪声的统计特性');

得到m1=-4.6534e-005;v1= 0.9971。

2.已知随机脉冲信号中0和1的出现概率,产生该随机脉冲信号,分析其统计特性

实验中利用MATLAB产生随机脉冲信号,信号统计分布的特性程序及结果如下:

%随机脉冲信号及其统计特性

p=unidrnd(10000,1,1000000);%产生1到100000之间均匀分布的随机序列

p0=0.4;

f=p>(p0*10000);%设置门限,此时0的概率为0.4,1的概率为0.6

m2=mean(f);

v2=var(f);

figure(3);

stairs(f(1:400));title('随机脉冲信号');

axis([0 400 -0.2 1.2]);

figure(4)

hist(f,-0.2:0.01:1.2);title('随机脉冲序列的统计特性');

得到:m2=0.5995;

V2=0.2401。

3.在随机脉冲信号中叠加高斯噪声信号,在不同的参数设置下分析其统计特性

用MATLAB将两个信号叠加,并分析其统计特性,具体程序及结果如下:

%随机脉冲信号叠加高斯噪声信号及其统计特性

a=5;%取随机信号的幅度为5

s=f*a+n;%对高斯噪声信号和随机脉冲序列进行叠加

m3=mean(s);%信号的均值

v3=var(s);%信号的方差

subplot(2,1,1);

stairs(s(1:400));%绘制部分叠加信号

title('叠加后的信号');

subplot(2,1,2);

hist(s,1000)%绘图分析叠加后信号的统计特性

title('叠加后信号的统计特性')

得到m3=2.9994;v3= 6.9964;

4.依据最小错误概率贝叶斯决策原理,确定判决门限,完成信号检测,计算两类错误率

设判决门限为t,平均错误率为e,利用MATLAB计算t和e,具体程序和结果如下:

%确定判决门限,完成信号检测,计算两类错误率

a=5;

p0=0.4;%第一类先验概率为0.4

t=(a^2 -2*v1*(log(1-p0)-log(p0)))/(2*a);%利用贝叶斯决策计算判别门限

s1=s>t;%执行判决

e1=sum((f-s1)==-1)/(1000000*p0);%计算虚警率

e2=sum((f-s1)==1)/(1000000*(1-p0));%计算漏检率

e=e1*p0+e2*(1-p0);%计算平均错误率

得到:判决门限t=2.4189,平均错误率e=0.0060。

5.改变判决门限,绘制ROC曲线

在MATLAB中调用ROC函数,程序及绘制的曲线如下所示:(1)利用贝叶斯最小错误概率绘制ROC曲线

Smin=min(s);

Smax=max(s);

o=(s-Smin)/(Smax-Smin);%对s进行归一化处理

[tpr,fpr,thresholds]=roc(f,o);%调用roc函数

plotroc(f,o);%绘制ROC曲线

title('ROC曲线')

(2)改变判决门限,令t=1.8, 2.0, 2.2, 2.4, 2.6, 2.8,得到的平均错误概率分别为e=0.0148,0.0099,0.0071, 0.0060,0.0068, 0.0068。数据表明,贝叶斯决策平均错误率理论上是最小错误概率。

6.改变随机脉冲信号与高斯噪声的参数,重复以上实验