贝叶斯决策理论应用。
一、 原始测量数据。
假定某个局部区域细胞识别中正常()和非正常()两类先验概率分别为:
正常状态: =0.9;
异常状态: =0.1。
现有一系列待观察的细胞,其观察值为:
类条件概率分布正态分布分别为(-2,0.25)(2,4)。决策表为(表示的简写), 6, =1, =0。
试对观察的结果进行分类。
二、 识别原理方法。
最小风险贝叶斯决策可按下列步骤进行:
1. 在已知,,及给出待识别的的情况下,根据贝叶斯公式计算出后验概率:
2. 利用计算出的后验概率及决策表,按下式计算出采取决策的条件风险:
3. 对2中得到的个条件风险值()进行比较,找出使条件风险最小的决策,即:,则就是最小风险贝叶斯决策。
三、 程序清单。
试验程序和曲线如下,分类结果在运行后的主程序中:
实验主程序如下:
x=[-3.9847 -3.5549 -1.2401 -0.9780 -0.7932 -2.8531
pxw1=normpdf(x,-1,0.25);
pxw2=normpdf(x,2,4);
pw1=0.9;
pw2=0.1;
计算后验概率。
pwx1=pxw1*pw1./(pxw1*pw1+pxw2*pw2);
pwx2=1-pwx1;
计算条件风险。
loss11=0;loss12=6;loss21=1;loss22=0;
r1=loss11*pwx1+loss12*pwx2;
r2=loss21*pwx1+loss22*pwx2;
类别判断。for i=1:4
for j=1:6
if r1(i,j)y(i,j)=1;
elsey(i,j)=2;
endend
end结果显示。
display('1表示该点属于第一类,2表示该点属于第二类');
y四、 运行结果。
实验结果如下:
1表示该点属于第一类,2表示该点属于第二类。y =
线性判别函数应用。
1、原始数据。
依据实验基本原理和基本方法,对下面表1样本数据中的类别和计算最优方向,画出最优方向的直线,并标记出投影后的点在直线上的位置。选择决策边界,实现新样本xx1=(-0.7,0.
58,0.089),xx2=(0.047,-0.
4,1.04)的分类。
设某新类别数据如表2所示,用自己的函数求新类别分别和、分类的投影方向和分类阀值。
表1 fisher线性判别实验数据。
表2 新类别实验数据。
2、识别原理。
1.基本原理:
一般情况下,我们总可以找到某个方向,使得这个方向的直线上,样本的投影能分开的最好,而fisher法所要解决的基本问题就是找到这条最好的、最易于分类的投影线。
先从d维空间到一维空间的一维数学变换方法。假设有一集合包含n个d维样本,其中个属于类的样本记为子集,个属于类的样本记为。若对的分量做线性组合可得标量。
这样便得到n个一维样本组成的集合,并可分为两个子集和。的绝对值是无关紧要的,它仅使乘上一个比例因子,重要的是选择的方向,从而转化为寻找最好的投影方向,是样本分开。
2.基本方法:
先定义几个基本参量:
1)各类样本均值向量。
2)样本类内离散度矩阵和总类内离散度矩阵。
3)样本类间离散度矩阵。
我们希望投影后,在低维空间里个样本尽可能的分开些,即希望两类均值越大越好,同时希望各类样本内部尽量密集,即越小越好。因此,我们定义fisher准则函数为。
但不显含,因此必须设法将变成的显函数。
由式子。从而得到。
采用lagrange乘子法求解它的极大值。
对其求偏导,得,即。
从而我们很容易得到。
忽略比例因子,得。
这就是我们fisher准则函数取极大值时的解。
3、程序清单。
1)fisher准则函数算法:
其中w为我们要找到的投影方向,w1、w2是我们的样本、,s1、s2是相应样本的类内离散度矩阵,sw是总类内离散度矩阵,m1、m2是相应样本均值。在进行分别和、分类的投影方向和分类阀值时,将对应的s1、s2;sw;m1、m2以及输出坐标换成相应的样本符号。由于**除此之外均相同,没有必要再重复列出,只需在运行时修改上述值即可。
注意:在画出w时(即),由于样本的不同,输出系数应作相应的调整。如:
时,plot3(30*x,30*x*w(2,:)w(1,:)30*x*w(3,:)w(1,:)k');
时,plot3(x,x*w(2,:)w(1,:)x*w(3,:)w(1,:)k');
时,plot3(5*x,5*x*w(2,:)w(1,:)5*x*w(3,:)w(1,:)k');
实验主程序如下:
clear;
w1=[-0.4 0.58 0.
089;-0.31 0.27 -0.
04;-0.38 0.055 -0.
035;-0.15 0.53 0.
011;-0.35 0.47 0.
034;
w2=[0.8 1.6 -0.
014;1.1 1.6 0.
48;-0.44 -0.41 0.
32;0.047 -0.45 1.
4;0.28 0.35 3.
1;w3=[1.58 2.32 -5.
8;0.67 1.58 -4.
78;1.04 1.01 -3.
63;-1.49 2.18 -3.
39;-0.41 1.21 -4.
73;xx1=[-0.7 0.58 0.089];
xx2=[0.047 -0.4 1.04];
s1=cov(w2,1);%样本类间离散度s1
m1=mean(w2);%样本均值m1
s2=cov(w3,1);%样本类间离散度s2
m2=mean(w3);%样本均值m2
sw=s1+s2;%总类内离散度sw
w=inv(sw)*(m1-m2)';fisher准则函数w*
h1=figure(1);
for i=1:1:10%打印样本。
plot3(w2(i,1),w2(i,2),w2(i,3),'r*')
hold on;
plot3(w3(i,1),w3(i,2),w3(i,3),'bo');
end;figure(2)
画出fisher判别函数。
xmin=min(min(w2(:,1)),min(w3(:,1)))
xmax=max(max(w2(:,1)),max(w3(:,1)))
x=xmin-1:(xmax-xmin)/100:xmax;
plot3(5*x,5*x*w(2,:)w(1,:)5*x*w(3,:)w(1,:)k');
hold on;
将样本投影到fisher判别函数上。
y1=w'*w2';%yn=w^*t * xn,n=1,2
y2=w'*w3';
figure(2)
for i=1:1:10
plot3(y1(i)*w(1),y1(i)*w(2),y1(i)*w(3),'rx');
hold on;
plot3(y2(i)*w(1),y2(i)*w(2),y2(i)*w(3),'bp');
模式识别作业
6.题目 fisher分类和基于核的fisher分类的设计与实现研究。具体内容 1.简述fisher分类和基于核的fisher分类的算法原理 2.举出实例 3.用matlab软件编写程序实现 4.分析实验结果。fisher分类和基于核的fisher分类的设计与实现研究。1 fisher分类和基于核的...
模式识别作业
模式识别课程matlab程序作业。模式识别贝叶斯决策 正常状态细胞p 1 0.9,异常状态细胞p 2 0.1,类条件概率密度分别为p x 1 n 0,1 p x 2 n 0.2,1.5 现有一待识别细胞,其观察值为0.2,用matlab写出程序对该细胞进行分类。编写程序如下 close all cl...
模式识别作业
感知器训练算法。在设计贝叶斯分类器时需要设法获取样本统计分布的资料,应知道先验概率及类分布概率密度函数等。然而,在样本数不充足条件下要获取准确的统计分布是很困难的。这样,可以考虑另外一种分类器设计方法,即根据训练样本集提供的信息,直接进行分类器设计。下面实验是针对线性可分情况下的感知器算法。实验所用...