两类正态分布模式的贝叶斯判别_第1页
两类正态分布模式的贝叶斯判别_第2页
两类正态分布模式的贝叶斯判别_第3页
两类正态分布模式的贝叶斯判别_第4页
两类正态分布模式的贝叶斯判别_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、两类正态分布模式的贝叶斯判别硕 6333106036072赵杜娟1#一.实验目的1 理解贝叶斯判别原则,编写两类正态分布模式的贝叶斯分类程序;2了解正态分布模式的贝叶斯分类判别函数;3通过实验,统计贝叶斯判别的正确率。二.实验原理(1)贝叶斯判别原则对于两类模式集的分类,就是要确定 x是属于类还是2类,这要看x来自类的概率大还是来自'2类的概率大,根据概率的判别规则,可以得到:#如果 PC '1|x)P( 2 |X)贝U!如果 PC '1|xb:P( 2 |X)贝UX 2( 1.1)利用贝叶斯定理,可得PC i |x P(X| 'i)P( Jp(x)式中,p(x

2、k i)亦称似然函数。把该式代入(1.1)式,判别规则可表示为:P(X| '1)P( '1) P(X| 2)P( '2)贝UX 1P(X| '1)P( '1): P(X| '2)P( '2)贝Ux 2或写成:P(X| 1)P(-2)P(X| 2) P( 1)(1.2)P(X| 1):. P( 2)P(XP'2) P('1)这里,112称为似然比,PC 2) PC '121称为似然比的判决阈值。该式称为贝叶斯判别(2)正态分布模式的贝叶斯分类器判别原理具有M种模式类别的多变量正态分布的概率密度函数为:11T 1P(x

3、i): n 1 exp (x-mJ Ci (x-mJi=1,2( 1.3)(2"2|Cf2式中,x是n维列向量;mi是n维均值向量;Ci是协方差矩阵;G为矩 阵C的行列式。且有 m=Ex ; G = Ejx-mij'(X-m; Ejx表示对类 别属于打的模式作数学期望运算。可见,均值向量mi由n个分量组成,协方差矩阵G由于其对称性故其独立 元素只有吃 卫个,所以多元正态密度函数完全由n 皿 卫个独立元素所确2 2定。取自一个正态总体的样本模式的分布是聚集于一个集群之内,其中心决定于均值向量,而其分布形状决定于其协方差矩阵,分布的等密度点的轨迹为超椭圆, 椭圆的主轴与协方差矩阵

4、的本征向量的方向一致,主轴的长度与相应的协方差矩阵的本征值成正比。类别的判别函数可表示为:di(x) -P(xp i)P( n)对于正态密度函数,可对判别函数取自然对数,即:di(x) =1 nP(x| 打)In P( i)将(1.3)代入上式,简化后可以得到:1 1 fIdi(x) =ln 卩(釦)- 一|n G -一奴-mycjx -mjf2 2这是正态分布模式的贝叶斯判别函数。显然,上式表明 di(x)是超二次曲面,所 以对于两类正态分布模式的贝叶斯分类器, 两个模式类别之间用一个二次判别界 面分开,就可以求得最优的分类效果。对于两类问题,判别界面方程为:d1 x -d2 x =0即:P

5、(x|、)P( 1)-P(X|,2)P( 2)=0判别条件为:如果d1(xd2(x) 0,则如果 d1(x)-d2(x)乞 0,则 x应指出,贝叶斯分类规则是基于统计的概念, 因此要有大量的模式样本,才 能获得最优的结果。三 实验内容及结果分析1. 根据实验要求,在本实验中将三组分别服从不同参数的正态分布数据两两 进行分类,利用贝叶斯原理首先设定其先验概率, 并从每组数据中随机抽取一定 的训练样本数来进行参数估计,从而得到三组数据各自的条件概率。2. 根据条件概率,利用贝叶斯判别原则进行分类实验,得到结果。3. 实验结果分析分别对x1,x2和x3两两进行实验,每次选取不同的先验概率和不同的训练

6、 样本数,进行训练,且训练样本是随机选取的,即在每次相同的训练样本个数的 情况下所抽取的样本是不一样的。然后按照训练后的结果得到的每组的条件概 率,对全部数据进行分类。各自在选取相同训练样本个数的条件下进行50次分类,然后求出50次分类的平均正确率,可得下表:先验概率训练样本数x1 和 x2x2 和 x3x1 和 x3P1=0.2P2=0.8m=592.54%74.56%88.6%m=1599.98%94.32%100%m=25100%95.3%100%m=35100%95.32%100%m=45100%95.56100%P1=0.4P2=0.6m=588.96%74.5%90.88%m=15

7、99.94%94.62%100%m=25100%95.64%100%m=35100%95.8%100%m=45100%95.92%100%P1=0.5P2=0.5m=590.06%73.34%90.14%m=1599.98%94.76%100%m=25100%95.82%100%m=35100%96.02%100%m=45100%96.04%100%分析表格,可以得到:x1和x2之间的分类,无论先验概率是多少,在选取的样本数m=5时,分类的正确率都比较低,m= 15时,正确率接近100%,样本数再大,正确率就会达 到 100。这说明 x1 和 x2 之间的分类,在训练样本数较小时,分类效果较差

8、; 在样本数选取较大时,分类效果比较理想。x2 和 x3 之间的分类, 在训练样本数较小时, 分类正确率很低, 仅有 70%左 右,随着训练样本数的增多,正确率增大,直到选取 45 个训练样本时正确率大 于 95%,但达不到 100%。这说明 x2 和 x3 这两组数据很接近, 无论先验概率选 取多少,训练样本数是多少,分类效果都不太理想。x1和x3之间的分类,无论先验概率选取多少,在训练样本数 m= 5时,分 类正确率较小,当训练样本数达到 15 时,分类正确率已经达到了 100%。这说 明 x1 和 x3 之间的分类相对来说比较容易达到, 只要选取的训练样本数较大, 分 类效果都比较理想。

9、4. 实验中的问题(1) .为了得到随机抽取的训练样本,采用randsperm函数,先产生150 内随机排序的数字,然后取其前 m行(m为训练样本数),就可以得到随机的训 练样本。(2) .在随机选取训练样本时,当所选训练样本数很少时(比如m= 5),所选样本的协方差矩阵的行列式很可能为0,这样的话就得不到条件概率密度函数,也就无法进行分类判断了。 解决的方法是: 给协方差矩阵加上一个对角线上 元素值很小( 0.000001 )的对角阵,然后再对所得结果矩阵求行列式,然后再求 概率密度函数进行分类判断。四实验程序部分clear all;close all;clc;load('data.

10、mat'); % 读入实验数据P1=input('please input P1:'); % 输入先验概率P2=1-P1;5s2=input('s2=');m=input(' 训练样本数 m='); %T1=zeros(m,4);T2=zeros(m,4);T3=zeros(m,4);r=zeros(1,50);p=1;while p<=50 % 9随机抽取m个训练样本 index=randperm(50);for i=1:1:m9T1(i,:)=k1(index(i),:);T2(i,:)=k2(index(i),:);T3(i,

11、:)=k3(index(i),:);end输入训练样本数进行 50 次分类,以便进行统计分类的正确性得到随机的训练样本s1=input('s1=');选择实验模式类6#9由训练样本计算均值和协方差 me1=mean(T1);me2=mean(T2);me3=mean(T3);co1=cov(T1);co2=cov(T2);co3=cov(T3);9判断是对哪两类模式要进行分类if (isequal(k1,s1)=1&&isequal(k2,s2)=1) m1=me1;c1=co1;m2=me2;c2=co2;elseif (isequal(k2,s1)=1&am

12、p;&isequal(k1,s2)=1)m1=me2;c1=co2;m2=me1;c2=co1; elseif (isequal(k2,s1)=1&&isequal(k3,s2)=1) m1=me2;m2=me3;c1=co2;c2=co3;elseif (isequal(k3,s1)=1&&isequal(k2,s2)=1) m1=me3;m2=me2;c1=co3;c2=co2;elseif (isequal(k3,s1)=1&&isequal(k1,s2)=1) m1=me3;m2=me1;c1=co3;c2=co1;elseif

13、(isequal(k1,s1)=1&&isequal(k3,s2)=1) m1=me1;m2=me3;c1=co1;c2=co3;end%两类的正态分布模式的贝叶斯判别if det(c1)=0|det(c2)=0 % 当协方差矩阵行列式为 0 时给它加一个极小值, 进行分类l=size(c1);I=eye(l(1),l(1);I=I*0.000001;c1=I+c1;c2=I+c2;endn=1;t1=0;while n<=100if rem(n,2)=1 % 奇数次输入 s1x=s1(n+1)/2,:);d1=log(P1)-0.5*log(det(c1)-0.5*(x

14、-m1)*(inv(c1)*(x-m1)'d2=log(P2)-0.5*log(det(c2)-0.5*(x-m2)*(inv(c2)*(x-m2)'%Pw1=1/(2*pi)A2/(det(c1)*exp(-0.5*(x-m1)*(i nv(c1)*(x-m1)')*P1;%Pw2=1/(2*pi)A2/(det(c2)*exp(-0.5*(x-m2)*(i nv(c2)*(x-m2)')*P2;n=n+1;%if Pw1>Pw2if d1>d2%判断条件 d1>d2 判为 w1 类t1=t1+1;endend%t1是判断正确次数,若判断正确,则加1if rem(n,2)=0%偶数次输入 s2x=s2(n/2,:);d1=log(P1)-0.5*log(det(c1)-0.5*(x-m1)*(inv(c1)*(x-m1)'d2=log(P2)-0.5*log(det(c2)-0.5*(x-m2)*(inv(c2)*(x-m2)'%Pw仁 1/(2*pi)A2/(det(c1)*exp(-0.5*(x-m1)*(i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论