模式识别实验报告实验一 Bayes分类器设计Word文档下载推荐.docx
- 文档编号:21986635
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:20
- 大小:123.23KB
模式识别实验报告实验一 Bayes分类器设计Word文档下载推荐.docx
《模式识别实验报告实验一 Bayes分类器设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《模式识别实验报告实验一 Bayes分类器设计Word文档下载推荐.docx(20页珍藏版)》请在冰豆网上搜索。
已知类条件概率是的曲线如下图:
类条件概率分布正态分布分别为N(-2,)、N(2,4)
试对观察的结果进行分类。
【实验要求】
1)用matlab完成基于最小错误率的贝叶斯分类器的设计,要求程序相应语句有说明文字,要求有子程序的调用过程。
2)根据例子画出后验概率的分布曲线以及分类的结果示意图。
3)如果是最小风险贝叶斯决策,决策表如下:
最小风险贝叶斯决策表:
状态
决策
α1
4
α2
2
请重新设计程序,完成基于最小风险的贝叶斯分类器,画出相应的条件风险的分布曲线和分类结果,并比较两个结果。
【实验程序】
最小错误率贝叶斯决策
分类器设计
x=[
]
pw1=;
pw2=
e1=-2;
a1=
e2=2;
a2=2
m=numel(x)%得到待测细胞个数
pw1_x=zeros(1,m)%存放对w1的后验概率矩阵
pw2_x=zeros(1,m)%存放对w2的后验概率矩阵
results=zeros(1,m)%存放比较结果矩阵
fori=1:
m
%计算在w1下的后验概率
pw1_x(i)=(pw1*normpdf(x(i),e1,a1))/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2))
%计算在w2下的后验概率
pw2_x(i)=(pw2*normpdf(x(i),e2,a2))/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2))
end
ifpw1_x(i)>
pw2_x(i)%比较两类后验概率
result(i)=0%正常细胞
else
result(i)=1%异常细胞
end
a=[-5:
:
5]%取样本点以画图
n=numel(a)
pw1_plot=zeros(1,n)
pw2_plot=zeros(1,n)
forj=1:
n
pw1_plot(j)=(pw1*normpdf(a(j),e1,a1))/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2))
%计算每个样本点对w1的后验概率以画图
pw2_plot(j)=(pw2*normpdf(a(j),e2,a2))/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2))
figure
(1)
holdon
plot(a,pw1_plot,'
k-'
a,pw2_plot,'
r-.'
)
fork=1:
ifresult(k)==0
plot(x(k),,'
b*'
)%正常细胞用*表示
rp'
)%异常细胞用五角星表示
end;
end;
legend('
正常细胞后验概率曲线'
'
异常细胞后验概率曲线'
正常细胞'
异常细胞'
xlabel('
样本细胞的观察值'
ylabel('
后验概率'
title('
后验概率分布曲线'
gridon
return;
实验内容仿真
x=[,,,,,,,,,,,,,,,,,,,,,,,]
disp(x)
pw1=
pw2=
[result]=bayes(x,pw1,pw2)
最小风险贝叶斯决策
function[R1_x,R2_x,result]=danger(x,pw1,pw2)
R1_x=zeros(1,m)%存放把样本X判为正常细胞所造成的整体损失
R2_x=zeros(1,m)%存放把样本X判为异常细胞所造成的整体损失
result=zeros(1,m)%存放比较结果
e1=-2
a1=
e2=2
%类条件概率分布px_w1:
(-2,)px_w2(2,4)
r11=0
r12=2
r21=4
r22=0
%风险决策表
fori=1:
m%计算两类风险值
R1_x(i)=r11*pw1*normpdf(x(i),e1,a1)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2))+r21*pw2*normpdf(x(i),e2,a2)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2))
R2_x(i)=r12*pw1*normpdf(x(i),e1,a1)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2))+r22*pw2*normpdf(x(i),e2,a2)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2))
ifR2_x(i)>
R1_x(i)%第二类比第一类风险大
result(i)=0%判为正常细胞(损失较小),用0表示
result(i)=1%判为异常细胞,用1表示
end
R1_plot=zeros(1,n)
R2_plot=zeros(1,n)
R1_plot(j)=r11*pw1*normpdf(a(j),e1,a1)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2))+r21*pw2*normpdf(a(j),e2,a2)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2))
R2_plot(j)=r12*pw1*normpdf(a(j),e1,a1)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2))+r22*pw2*normpdf(a(j),e2,a2)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2))
%计算各样本点的风险以画图
plot(a,R1_plot,'
b-'
a,R2_plot,'
g*-'
b^'
)%正常细胞用上三角表示
else
go'
)%异常细胞用圆表示
Location'
Best'
细胞分类结果'
条件风险'
风险判决曲线'
return
[R1_x,R2_x,result]=danger(x,pw1,pw2)
【实验结果和数据】
后验概率曲线与判决结果在一张图上:
后验概率曲线如图所示,带*的绿色曲线为判决成异常细胞的后验概率曲线;
另一条平滑的蓝色曲线为判为正常细胞的后验概率曲线。
根据最小错误概率准则,判决结果见曲线下方,其中“上三角”代表判决为正常细胞,“圆圈”代表异常细胞。
各细胞分类结果:
000000000000010111000101
0为判成正常细胞,1为判成异常细胞
图1基于最小错误率的贝叶斯判决
风险判决曲线如图2所示,其中带*的绿色曲线代表异常细胞的条件风险曲线;
另一条光滑的蓝色曲线为判为正常细胞的条件风险曲线。
根据贝叶斯最小风险判决准则,判决结果见曲线下方,其中“上三角”代表判决为正常细胞,“圆圈“代表异常细胞。
100000000000110111000101
其中,0为判成正常细胞,1为判成异常细胞
图2基于最小风险的贝叶斯判决
【实验分析】
由最小错误率的贝叶斯判决和基于最小风险的贝叶斯判决得出的图形中的分类结果可以看出,样本、在前者中被分为“正常细胞”,在后者中被分为“异常细胞”,分类结果截然不同。
因为在给予最小风险的贝叶斯判决中,影响决策结果的因素多了一个“损失”。
可以看出,在图1中,这两个样本点下两类决策的后验概率相差很小,当结合最小风险贝叶斯决策表进行计算时,“损失”就起了主导作用,导致出现了相反的结果。
另外,最小错误率贝叶斯决策就是在0-1损失函数条件下的最小风险贝叶斯决策,即前者是后者的特例。
实验二基于Fisher准则线性分类器设计
本实验旨在让同学进一步了解分类器的设计概念,能够根据自己的设计对线性分类器有更深刻地认识,理解Fisher准则方法确定最佳线性分界面方法的原理,以及Lagrande乘子求解的原理。
【实验条件】
Matlab软件
线性判别函数的一般形式可表示成
其中
根据Fisher选择投影方向W的原则,即使原样本向量在该方向上的投影能兼顾类间分布尽可能分开,类内样本投影尽可能密集的要求,用以评价投影方向W的函数为:
上面的公式是使用Fisher准则求最佳法线向量的解,该式比较重要。
另外,该式这种形式的运算,我们称为线性变换,其中
式一个向量,
是
的逆矩阵,如
是d维,
和
都是d×
d维,得到的
也是一个d维的向量。
向量
就是使Fisher准则函数
达极大值的解,也就是按Fisher准则将d维X空间投影到一维Y空间的最佳投影方向,该向量
的各分量值是对原d维特征向量求加权和的权值。
以上讨论了线性判别函数加权向量W的确定方法,并讨论了使Fisher准则函数极大的d维向量
的计算方法,但是判别函数中的另一项
尚未确定,一般可采用以下几种方法确定
如
或者
或当
与
已知时可用
……
当W0确定之后,则可按以下规则分类,
使用Fisher准则方法确定最佳线性分界面的方法是一个着名的方法,尽管提出该方法的时间比较早,仍见有人使用。
functionfisher
%w1中数据点的坐标
x1=[
];
x2=[
x3=[
%将x1、x2、x3变为行向量
x1=x1(:
);
x2=x2(:
x3=x3(:
%计算第一类的样本均值向量m1
m1
(1)=mean(x1);
m1
(2)=mean(x2);
m1(3)=mean(x3);
%计算第一类样本类内离散度矩阵S1
S1=zeros(3,3);
36
S1=S1+[-m1
(1)+x1(i)-m1
(2)+x2(i)-m1(3)+x3(i)]'
*[-m1
(1)+x1(i)-m1
(2)+x2(i)-m1(3)+x3(i)];
%w2的数据点坐标
x4=[
x5=[
x6=[
x4=x4(:
x5=x5(:
x6=x6(:
%计算第二类的样本均值向量m2
m2
(1)=mean(x4);
m2
(2)=mean(x5);
m2(3)=mean(x6);
%计算第二类样本类内离散度矩阵S2
S2=zeros(3,3);
S2=S2+[-m2
(1)+x4(i)-m2
(2)+x5(i)-m2(3)+x6(i)]'
*[-m2
(1)+x4(i)-m2
(2)+x5(i)-m2(3)+x6(i)];
%总类内离散度矩阵Sw
Sw=zeros(3,3);
Sw=S1+S2;
%样本类间离散度矩阵Sb
Sb=zeros(3,3);
Sb=(m1-m2)'
*(m1-m2);
%最优解W
W=Sw^-1*(m1-m2)'
%将W变为单位向量以方便计算投影
W=W/sqrt(sum(W.^2));
%计算一维Y空间中的各类样本均值M1及M2
y(i)=W'
*[x1(i)x2(i)x3(i)]'
;
M1=mean(y)
*[x4(i)x5(i)x6(i)]'
M2=mean(y)
%利用当P(w1)与P(w2)已知时的公式计算W0
p1=;
p2=;
W0=-(M1+M2)/2+(log(p2/p1))/(36+36-2);
%计算将样本投影到最佳方向上以后的新坐标
X1=[x1*W
(1)+x2*W
(2)+x3*W(3)]'
X2=[x4*W
(1)+x5*W
(2)+x6*W(3)]'
%得到投影长度
XX1=[W
(1)*X1;
W
(2)*X1;
W(3)*X1];
XX2=[W
(1)*X2;
W
(2)*X2;
W(3)*X2];
%得到新坐标
%绘制样本点
plot3(x1,x2,x3,'
r*'
)%第一类
plot3(x4,x5,x6,'
bp'
)%第二类
第一类点'
第二类点'
Fisher线性判别曲线'
W1=5*W;
%画出最佳方向
line([-W1
(1),W1
(1)],[-W1
(2),W1
(2)],[-W1(3),W1(3)],'
color'
b'
%判别已给点的分类
a1=[1,,]'
a2=[,,]'
a3=[,,]'
a4=[,,]'
a5=[,,]'
A=[a1a2a3a4a5]
n=size(A,2);
%下面代码在改变样本时都不必修改
%绘制待测数据投影到最佳方向上的点
n
A1=A(:
k)'
*W;
A11=W*A1;
%得到待测数据投影
y=W'
*A(:
k)+W0;
%计算后与0相比以判断类别,大于0为第一类,小于0为第二类
ify>
plot3(A(1,k),A(2,k),A(3,k),'
%点为"
rp"
对应第一类
plot3(A11
(1),A11
(2),A11(3),'
%投影为"
r+"
对应go类
m+'
bh"
对应m+类
b*"
k'
view([,30]);
axis([-2,3,-1,3,,]);
holdoff
已知数据的样本点分布如下图:
首先根据求出最佳投影方向,然后按照此方向,将待测数据进行投影。
为直观起见,我们将两步画在一张图上,如下:
其中,红色的*是给出的第一类样本点,蓝色的五角星是第二类样本点。
下方的实直线是最佳投影方向。
待测数据投影在其上,圆圈是被分为第一类的样本点,十字是被分为第二类的样本点。
使
取极大值的W=(,,)
的比例因子对于Fisher判别函数没有影响的原因:
在本实验中,最需要的是W的方向,或者说是在此方向上数据的投影,那么W的比例因子,即它是单位向量的多少倍长就无关紧要了,不管比例因子有多大,在最后求投影时都会被消掉而起不到实际作用。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模式识别实验报告实验一 Bayes分类器设计 模式识别 实验 报告 Bayes 分类 设计