模式识别Iris_Bayes

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

模式识别Iris数据分类

一、实验简述

Iris以鸢尾花的特征作为数据来源,数据集包含150个样本,分为3类,3类分别为setosa,versicolor,virginica,每类50个样本,每个样本包含4个属性,这些属性变量测量植物的花朵,像萼片和花瓣长度等。本实验通过贝叶斯判别原理对三类样本进行两两分类。假设样本的分布服从正态分布。

二、实验原理

1、贝叶斯判别原理

首先讨论两类情况。用ω1,ω2表示样本所属类别,假设先验概率P(ω1),P(ω2)已知。这个假设是合理的,因为如果先验概率未知,可以从训练特征向量中估算出来。如果N是训练样本的总数,其中有N1,N2个样本分别属于ω1,ω2,则相应的先验概率为P(ω1)=N1/N,

P(ω2)=N2/N。

另外,假设类条件概率密度函数P(x|ωi),i=1,2,…,n,是已知的

参数,用来描述每一类特征向量的分布情况。如果类条件概率密度函数是未知的,则可以从训练数据集中估算出来。概率密度函数P(x|

ωi)也指相对也x的ωi的似然函数。特征向量假定为k维空间中的任何值,密度函数P(x|ωi)就变成的概率,可以表示为P(x|ωi)。

P(ωi|x) = P(x|ωi)P(ωi)/P(x)

贝叶斯的分类规则最大后验概率准则可以描述为:

如果P(ω1|x)/P(ω2|x) > P(ω2) / P(ω1),则x 属于ω1类, 如果P(ω2|x)/P(ω1|x) > P(ω1) / P(ω2),则x 属于ω2类。

2、多元正态分布

多变量正态分布也称为多变量高斯分布。它是单维正态分布向多维的推广。用特征向量X=[x 1, x 2,…, x n ]T 来表示多个变量。N 维特征向量的正态分布用下式表示:

P(x) =

1

(2π)

N/2

|Σ|1/2

exp ⁡(−1

2

(x −u)T Σ−1

(x −u))

其中Σ表示协方差矩阵,|Σ|表示协方差矩阵的行列式,u 为多元正态分布的均值。

三、实验过程

1、从样本集中抽取不同数目的样本建立正态模型,将其余的样本作为测试集,测试模型的性能。ω1表示setosa 类,ω2表示versicolor 类,ω3表示virginica 类。该阶段假定三类样本的先验概率P(ω1), P(ω2),P(ω3)相等,即给定测试样本特征向量x ,条件概率P(ω1|x), P(ω2|x),P(ω3|x)中最大值表示特征值所属类别。

(1)从每一类中随机抽取7个样本建立正态模型,43个作为测试样本,得到的实验结果如下:

(2)从每一类中随机抽取10个样本建立正态模型,40个作为测试样本,得到的实验结果如下:

(3)从每一类中随机抽取20个样本建立正态模型,30个作为测试样本,得到的实验结果如下:

(4)从每一类中随机抽取30个样本建立正态模型,20个作为测试样本,得到的实验结果如下:

(5)从每一类中随机抽取40个样本建立正态模型,10个作为测试样本,得到的实验结果如下:

(6)从每一类中随机抽取50个样本建立正态模型,并在所有样本上测试性能,得到的实验结果如下:

2、用所有样本建立正态模型,并考虑不同的先验概率P(ω1),

P(ω2), P(ω3)对分类正确率的影响。根据最大后验概率的判别准则P(ω1|x)/ P(ω2|x) > P(ω2)/P(ω1)是将该样本判为ω1类,而

P(ω2), P(ω2), P(ω3)是比较难估计的,但根据样本数据可以比较容易的计算条件概率P(ω1|x),P(ω2|x),P(ω3|x),所以实验估计先验概率的比值取何值时分类会出现误差。

(1)将ω1类的所有样本数据代入三个正态分布的概率密度函数中计算P(ω1|x)、P(ω2|x)、P(ω3|x),并计算比值P12=P(ω1|x)/ P(ω2|x)、P13=P(ω1|x)/ P(ω3|x)。其中P12的最小值为r1=2.1721e+09,即

P(ω2)/P(ω1)大于r1时第一类会有样本被错判为第二类。P13的最小值为r2=9.0853e+24,所以当P(ω3)/P(ω1)大于r2时第一类会有样本被错判为第三类。

(2)将ω2类的所有样本数据代入三个正态分布的概率密度函数中计算P(ω1|x)、P(ω2|x)、P(ω3|x),并计算比值P21=P(ω2|x)/ P(ω1|x)、P23=P(ω2|x)/ P(ω3|x)。其中P21的最小值为r1=6.0689e+27,即

P(ω1)/P(ω2)大于r1时第二类会有样本被错判为第一类。P23的最小值为r2=0.1825,所以当P(ω3)/P(ω2)大于r2时第二类会有样本被错判为第三类。

(3)将ω3类的所有样本数据代入三个正态分布的概率密度函数中计算P(ω1|x)、P(ω2|x)、P(ω3|x),并计算比值P31=P(ω3|x)/ P(ω1|x)、P32=P(ω3|x)/ P(ω2|x)。其中P31的最小值为r1=3.364e+94,即

P(ω1)/P(ω3)大于r1时第三类会有样本被错判为第一类。P32的最小值为r2=0.6530,所以当P(ω2)/P(ω3)大于r2时第三类会有样本被错判为第二类。

四、实验分析

1、从实验中可以看出随着建模样本数的增加,模型的性能也会有相应的提升,但也具有一定的随机性,这和抽取的样本有密切的关联。实验中发现即使取样比较少时ω1类总是可以正确的分类,

而错误发生在ω2类和ω3类中。这三类样本的均值u1, u2, u3,和协方差矩阵Σ1, Σ2, Σ3如下所示:

u1 = [5.0060 3.418. 1.4640 0.2440]

u2 = [5.9360 2.7700 4.2600 1.3260]

u3 = [6.5880 2.9740 5.5520 2.0260]

0.1242 0.1003 0.0161 0.0105

0.1001 0.1452 0.0117 0.0114

Σ1 = 0.0161 0.0117 0.0301 0.0052

0.0105 0.0114 0.0057 0.0115

0.2664 0.0852 0.1829 0.0558

0.0852 0.0985 0.0827 0.0412

Σ2 = 0.1829 0.0827 0.2208 0.0731

0.0558 0.0412 0.0731 0.0391

0.4043 0.0938 0.3033 0.0491

0.0938 0.1040 0.0714 0.0476

Σ3 = 0.3033 0.0714 0.3046 0.0488

0.0491 0.0476 0.0488 0.0754

通过对这三类样本均值及协方差的分析可以发现ω1类的均值距离

ω2类和ω3类的均值比较远,而ω2类和ω3类的均值是比较接近的,同时从ω1类的协方差矩阵中可以看出ω1类样本方差是比较小的,说明数据分布比较集中,所以即使训练过程抽取的样本比较少,第一类仍然可以和其它两类分开。同样由于ω1类分布集中,所以只有在

相关文档
最新文档