模式识别用身高和或体重数据进行性别分类.docx
- 文档编号:4813138
- 上传时间:2022-12-09
- 格式:DOCX
- 页数:16
- 大小:567.02KB
模式识别用身高和或体重数据进行性别分类.docx
《模式识别用身高和或体重数据进行性别分类.docx》由会员分享,可在线阅读,更多相关《模式识别用身高和或体重数据进行性别分类.docx(16页珍藏版)》请在冰豆网上搜索。
模式识别用身高和或体重数据进行性别分类
模式识别——用身高和或体重数据进行性别分类
用身高和/或体重数据进行性别分类
1、【实验目的】
(1)掌握最小错误率Bayes分类器的决策规则
(2)掌握Parzen窗法
(3)掌握Fisher线性判别方法
(4)熟练运用matlab的相关知识。
2、【实验原理】
(1)、最小错误率Bayes分类器的决策规则
如果在特征空间中观察到某一个(随机)向量x=(x1,x2,…,xd)T,已知类别状态的先验概率为:
和类别的条件概率密度为
,根据Bayes公式得到状态的后验概率有:
基本决策规则:
如果
,则
,将x归属后验概率最大的类别。
(2)、掌握Parzen窗法
对于被估计点X:
其估计概率密度的基本公式
,设区域RN是以hN为棱长的d维超立方体,则立方体的体积为
;
选择一个窗函数
,落入该立方体的样本数为
,点x的概率密度:
其中核函数:
,满足的条件:
;
。
(3)、Fisher线性判别方法
Fisher线性判别分析的基本思想:
通过寻找一个投影方向(线性变换,线性组合),将高维问题降低到一维问题来解决,并且要求变换后的一维数据具有如下性质:
同类样本尽可能聚集在一起,不同类的样本尽可能地远。
Fisher线性判别分析,就是通过给定的训练数据,确定投影方向W和阈值y0,即确定线性判别函数,然后根据这个线性判别函数,对测试数据进行测试,得到测试数据的类别。
线性判别函数的一般形式可表示成
,其中
根据Fisher选择投影方向W的原则,即使原样本向量在该方向上的投影能兼顾类间分布尽可能分开,类内样本投影尽可能密集的要求,用以评价投影方向W的函数为:
上面的公式是使用Fisher准则求最佳法线向量的解,该式比较重要。
另外,该式这种形式的运算,我们称为线性变换,其中
式一个向量,
是
的逆矩阵,如
是d维,
和
都是d×d维,得到的
也是一个d维的向量。
向量
就是使Fisher准则函数
达极大值的解,也就是按Fisher准则将d维X空间投影到一维Y空间的最佳投影方向,该向量
的各分量值是对原d维特征向量求加权和的权值。
以上讨论了线性判别函数加权向量W的确定方法,并讨论了使Fisher准则函数极大的d维向量
的计算方法,但是判别函数中的另一项
尚未确定,一般可采用以下几种方法确定
如
或者
或当
与
已知时可用
当W0确定之后,则可按以下规则分类:
3、【实验内容及要求】
(1)、实验对象
女生的身高、体重数据
男生的身高、体重数据
-----训练样本集
328个同学的身高、体重、性别数据
124个同学的身高、体重、性别数据
-----测试样本集
(2)基本要求:
(1)用和的数据作为训练样本集,建立Bayes分类器,用测试样本数据对该分类器进行测试。
调整特征、分类器等方面的一些因素,考察它们对分类器性能的影响,从而加深对所学内容的理解和感性认识。
(试验直接设计线性分类器的方法,与基于概率密度估计的贝叶斯分离器进行比较)
(2)试验非参数估计,体会与参数估计在适用情况、估计结果方面的异同。
4、【实验结果与分析】
(1)、Bayes分类器的实验结果与分析
A、对于328个同学的身高、体重、性别数据的测试样本集:
A1、当先验概率为:
男,女时:
身高分类错误个数:
15身高分类错误率为:
%
体重分类错误个数:
15体重分类错误率为:
%
【实验结果:
】
A2、当先验概率为:
男,女时:
身高分类错误个数:
19身高分类错误率为:
%
体重分类错误个数:
14体重分类错误率为:
%
B、对于124个同学的身高、体重、性别数据的测试样本集:
B1、当先验概率为:
男,女时:
身高分类错误个数:
16身高分类错误率为:
%
体重分类错误个数:
21体重分类错误率为:
%
【实验结果:
】
B2、当先验概率为:
男,女时:
身高分类错误个数:
31身高分类错误率为:
%
体重分类错误个数:
35体重分类错误率为:
%
【结果分析:
】
样本数据集中,男女先验概率为();样本数据集中,男女先验概率为()。
对比实验结果,可以发现身高的分类错误率都小于体重的分类错误率,样本集越大,各个特征对应的分类错误率就越小。
假设先验概率为()的分类错误率小于假设先验概率为()的分类集,就算假设的先验概率与实际的很相近,可是结果不准确。
程序框图
Bayes分类器源程序实验代码:
clearall;
load;
load;
%样本的分析
figure;
fori=1:
250
if(i<79)
plot(datasetf1(i,2),datasetf1(i,1),'r+');
end
plot(datasetm1(i,2),datasetm1(i,1),'k*');
holdon;
end
title('样本数据');
xlabel('体重(Kg)'),ylabel('身高(cm)');
legend('男生','女生');
fid=fopen('','r');
test1=fscanf(fid,'%f%f%s',[3,inf]);
test=test1';
fclose(fid);
Fmean=mean(datasetf1);
Mmean=mean(datasetm1);
Fvar=std(datasetf1);
Mvar=std(datasetm1);
preF=;
preM=;
error=0;
Nerror=0;
%身高的决策
figure;
fori=1:
124
PFheight=normpdf(test(i,1),Fmean(1,1),Fvar(1,1));
PMheight=normpdf(test(i,1),Mmean(1,1),Mvar(1,1));
pFemale=preF*PFheight;
pMale=preM*PMheight;
if(pFemale plot(i,test(i,1),'k*'); if(test(i,3)=='f') Nerror=Nerror+1; end else plot(i,test(i,1),'r+'); if(test(i,3)=='M') Nerror=Nerror+1; end end holdon; end; error=Nerror/124*100; title('身高最小错误率Bayes分类'); xlabel('测试序号'),ylabel('身高(cm)'); sprintf('%s%d%s%%s','身高分类错误个数: ',Nerror,'身高分类错误率为: ',error,'%') %体重决策 figure; error=0; Nerror=0; forj=1: 124 PFweight=normpdf(test(j,2),Fmean(1,2),Fvar(1,2)); PMweight=normpdf(test(j,2),Mmean(1,2),Mvar(1,2)); pwFemale=preF*PFweight; pwMale=preM*PMweight; if(pwFemale plot(j,test(j,2),'k*'); if(test(j,3)=='f') Nerror=Nerror+1; end else plot(j,test(j,2),'r+'); if(test(j,3)=='M') Nerror=Nerror+1; end end holdon; end; error=Nerror/124*100; title('体重最小错误率Bayes分类'); xlabel('测试序号'),ylabel('体重(kg)'); sprintf('%s%d%s%%s','体重分类错误个数: ',Nerror,'体重分类错误率为: ',error,'%') (2)、Parzen窗法的实验结果与分析(先验概率为、对于中有78个女生和250个男生,共328个同学的身高、体重、性别数据的测试样本集的结果: 女生人数为: 84;男生人数为: 244;拒分人数: 0; 女生错分人数: 4;男生错分人数: 33;总的错分人数: 37; 女生分类错误率: ;男生分类错误率: ;总的分类错误率: ; B、对于中有40个女生和84个男生,共124个同学的身高、体重、性别数据的测试样本集: 女生人数为: 41;男生人数为: 83;拒分人数: 0; 女生错分人数: 15;男生错分人数: 6;总的错分人数: 21; 女生分类错误率: ;男生分类错误率: ;总的分类错误率: ; 结果分析: Parzen窗法的分类结果比较准确,样本集越大,错误率就越小。 Parzen窗法的源程序代码: clc; clearall; [FHFW]=textread('','%f%f'); [MHMW]=textread('','%f%f'); FA=[FHFW];MA=[MHMW]; N1=max(size(FA)); h1=7; hn1=h1/(sqrt(N1)); VN1=hn1^2; N2=max(size(MA)); h2=7; hn2=h2/(sqrt(N2)); VN2=hn2^2; [tHtW]=textread('','%f%f%*s'); X=[tHtW]; [MN]=size(X); s=zeros(M,1); error=0; errorgirl=0; errorboy=0; errorrate=0; errorgirlrate=0; errorboyrate=0; girl=0; boy=0; bad=0; fork=1: M A=[X(k,1)X(k,2)]; x=A; p=;%p为属于女生的先验概率,则1-p为男生的先验概率 pp=0; fori=1: N1 fa=[FA(i,1)FA(i,2)]; n=1/sqrt(2*pi)*exp*abs((x-fa)*(x-fa)')/(hn1^2)); pp=pp+n; end p1=1/VN1*pp'; y1=1/N1*p1;%是女生的条件概率密度函数 qq=0; forj=1: N2 ma=[MA(j,1)MA(j,2)]; m=1/sqrt(2*pi)*exp*abs((x-ma)*(x-ma)')/(hn2^2)); qq=m+qq; end q1=sum(1/VN2*qq'); y2=1/N2*q1;%男生的概率密度函数,即其条件概率 g=p*y1-(1-p)*y2;%g为判别函数 ifg>0 ifk<=50 s(k,1)=0;%判为女生 girl=girl+1; else errorboy=errorboy+1; end elseifg<0 ifk<=50 errorgirl=errorgirl+1; else s(k,1)=1;%判为男生 boy=boy+1; end else s(k,1)=-2;%不能判别是指等于0时的情况 bad=bad+1; end end end errorgirl errorboy bad girl=errorboy+girl boy=boy+errorgirl error=errorgirl+errorboy errorgirlrate=errorgirl/50 errorboyrate=errorboy/250 errorrate=error/M
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模式识别 身高 或体 数据 进行 性别 分类