预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共13页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

实验二Bayes分类器设计 一、实验目的 通过实验,加深对统计判决与概率密度估计基本思想、方法的认识,了解影响Bayes分类器性能的因素,掌握基于Bayes决策理论的随机模式分类的原理和方法。 二、实验内容 设计Bayes决策理论的随机模式分类器。 假定某个局部区域细胞识别中正常(a1)和非正常(a2)两类先验概率分别为正常状态:P(a1)=0.9;异常状态:P(a2)=0.1。 三、方法手段 Bayes分类器的基本思想是依据类的概率、概密,按照某种准则使分类结果从统计上讲是最佳的。换言之,根据类的概率、概密将模式空间划分成若干个子空间,在此基础上形成模式分类的判决规则。准则函数不同,所导出的判决规则就不同,分类结果也不同。使用哪种准则或方法应根据具体问题来确定。 四、Bayes算法 1.实验原理 多元正太分布的概率密度函数由下式定义 由最小错误概率判决规则,可得采用如下的函数作为判别函数 这里,为类别发生的先验概率,为类别的类条件概率密度函数,而N为类别数。 设类别,i=1,2,……,N的类条件概率密度函数,i=1,2,……,N服从正态分布,即有~,那么上式就可以写为 由于对数函数为单调变化的函数,用上式右端取对数后得到的新的判别函数替代原来的判别函数不会改变相应分类器的性能。因此,可取 显然,上式中的第二项与样本所属类别无关,将其从判别函数中消去,不会改变分类结果。这样,判别函数可简化为以下形式 2.实验步骤 1、求出两类样本的均值 2、求每一类样本的协方差矩阵 式中,l代表样本在类中的序号,其中 代表类的第l个样本,第j个特征值; 代表类的个样品第j个特征的平均值 代表类的第l个样品,第k个特征值; 代表类的个样品第k个特征的平均值。 类的协方差矩阵为 3、计算出每一类的协方差矩阵的逆矩阵以及协方差矩阵的行列式 4、求出每一类的先验概率 5、将各个数值代入判别函数 判别边界为 五、Bayes分类器实验结果 已知(图1)数据a=[0.37600.02400.2440-0.17400.0460-0.39400.37600.77200.26600.5080-0.4380-0.06400.81600.59600.11200.35400.8380-0.76800.4200-0.7900];其满足正态分布(图2)。 1.最小错误率贝叶斯决策 图1样本数据 图2样本的类条件概率 根据最小错误率准侧,计算其后验条件概率(图3),通过程序运行出结果细胞分类结果为: 10001000000000000110,其中,0为判成正常细胞,1为判成异常细胞。 图3后验条件概率 2.最小风险贝叶斯决策 根据最小风险判别准侧,其损失函数赋值为r=[010000;20000],则计算其条件风险概率(图4)通过程序运行出结果细胞分类结果为: 11111110111101110111,其中,0为判成正常细胞,1为判成异常细胞。 图4条件风险概率 3.两类分类器结果不同原因分析 由最小错误率的贝叶斯判决和基于最小风险的贝叶斯判决得出图形中的分类结果可以看出,样本0.0240,0.2440等在前者中被分为“正常细胞”,在后者被分为“异常细胞”,分类结果不同。因为在给予最小风险贝叶斯判决中,影响决策结果的因素多了损失r这一项,所以当结合最小风险贝叶斯决策表进行计算时,‘损失’起了主导作用,导致出现两者结果的不一致。 六、Bayes分类器程序代码 functiony=my_bayes(n,a) %%%%%%%%%%%%%最小错误率贝叶斯决策 %构造实验数据 a=[0.37600.02400.2440-0.17400.0460-0.39400.37600.77200.26600.5080-0.4380-0.06400.81600.59600.11200.35400.8380-0.76800.4200-0.7900]; n=20;%样本数 a=(round(100*rand(n,1))/100)*2.2-0.9; %样本数为n,特征数为1,数据在-0.9与1.3之间 figure plot(1:n,a,'rx') xlabel('样本数'); ylabel('生化化验值'); title('样本数据:生化化验值'); pause; %先验概率 P=[0.90.1]; %作类条件概率密度曲线p(x|wi) x=-0.9:0.01:1.3; px(1,:)=(1/(sqrt(2*pi)*0.3))*exp(-0.5*(x/0.3).^2); px(2,:)=(1/(sqrt(2*pi)*0.1))*exp(-0.5*((x-1)/0.1).^2); figure; plot(x,px(1,:),'b',x,px(2,:),'r--'