版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
z.z.用身高和體重數(shù)據(jù)進(jìn)行性別分類的實驗報告(二)一、 基本要求1、試驗非參數(shù)估計,體會與參數(shù)估計在適用情況、估計結(jié)果方面的異同。2、試驗直接設(shè)計線性分類器的方法,與基于概率密度估計的貝葉斯分類器進(jìn)行比較。3、體會留一法估計錯誤率的方法和結(jié)果。二、具體做法1、在第一次實驗中,挑選一次用身高作為特征,并且先驗概率分別為男生0.5,女生0.5的情況。改用Parzen窗法或者k近鄰法估計概率密度函數(shù),得出貝葉斯n分類器,對測試樣本進(jìn)行測試,比較與參數(shù)估計基礎(chǔ)上得到的分類器和分類性能的差別。2、 同時采用身高和體重數(shù)據(jù)作為特征,用Fisher線性判別方法求分類器,將該分類器應(yīng)用到訓(xùn)練和測試樣本,考察訓(xùn)練和測試錯誤情況。將訓(xùn)練樣本和求得的決策邊界畫到圖上,同時把以往用Bayes方法求得的分類器也畫到圖上,比較結(jié)果的異同。3、 選擇上述或以前實驗的任意一種方法,用留一法在訓(xùn)練集上估計錯誤率,與在測試集上得到的錯誤率進(jìn)行比較。三、原理簡述及程序框圖1、挑選身高(身高與體重)為特征,選擇先驗概率為男生0.5女生0.5的一組用Parzen窗法來求概率密度函數(shù),再用貝葉斯分類器進(jìn)行分類。以身高為例
本次實驗我們組選用的是正態(tài)函數(shù)窗,即€(u)? u2h?h/JN(h是調(diào)節(jié)的參量,N是樣本個數(shù))V?hd,(d表示維度)。因為區(qū)-—(、J-—(、J二NV'\h丿
i?1N N域是一維的,所以體積為V?h。Parzen公式為P故女生的條件概率密度為心^N1'1i故女生的條件概率密度為心^N1'1i?1、x-x J丿n、x-x 4\h2丿n男生的條件概率密度為p2?丄'-€N2VN2
i?1根據(jù)貝葉斯決策規(guī)則g(x)=p(x/w)p(w)-p(x/w)p(w)知'11‘22如果pl*p”p2*(1-p),x?“,否則,x?“。2流程圖如下:2、要求是同時采用身高和體重數(shù)據(jù)作為特征,用Fisher線性判別方法求分類器,將該分類器應(yīng)用到訓(xùn)練和測試樣本,考察訓(xùn)練和測試錯誤情況。將訓(xùn)練樣本和求得的決策邊界畫到圖上,同時把以往用Bayes方法求得的分類器也畫到圖上,比較結(jié)果的異同。說明,取男生和女生的先驗概率分別為0.5,0.5。在設(shè)計貝葉斯分類器時,首先求各類樣本均值向量,及m= 'x,i=1,2,然后求各個樣本的來內(nèi)離散度矩陣,iNixec°/及s='(x-mXx-mi=1,2,再求出樣本的總類內(nèi)離散度,及i i ix?wiS“=pQ).+p(^2<S2,根據(jù)公式“—=匯1(m1-化)求出把二維*空間投影到一維Y空間的最好的投影方向。再求出一維Y空間中各類樣本均值'=1',=1,2叫=ny,i=1,2,其中y=“**x,本次實驗的分界閾值我們用如下方法7嚀Nm'€Nm'得到:y0二1N€N彳,最后,將測試樣本中的值代入,求出y,并將其與12y0來進(jìn)行比較來分類。根據(jù)課本對Fisher線性判別法的介紹,得到的算法流程圖如下:3、選擇上述或以前實驗的任意一種方法,用留一法在訓(xùn)練集上估計錯誤率,與在測試集上得到的錯誤率進(jìn)行比較。這里我們選擇Fisher線性判別法,用留一法來估計它在訓(xùn)練集上的錯誤率,并將結(jié)果與Fisher線性判別法對測試集進(jìn)行判別時得到的錯誤率進(jìn)行比較。具體流程圖如下:四、實驗結(jié)果及分析總結(jié)1、得到結(jié)果如下表以身高作為特征
最大似然Bayes0.250.75206.667%0.50.5279%0.750.256020%以身高與體重作為特征h=7計方法、\、\、女生先驗概率男生先驗概率男生錯誤個數(shù)女生錯誤個數(shù)總錯誤男生錯誤率女生錯誤率總錯誤率Parzen窗法0.250.757222914%8.8%9.67%0.50.53824015.2%4%13.33%0.750.252464818.4%4%16%最大似然Bayes0.250.7586143.2%12%4.67%0.50.52933211.6%6%10.67%0.750.25916023.6%2%20%分析:通過比較可知,在用最大似然估計這種參數(shù)估計方法和Parzen這種非參數(shù)估計方法來進(jìn)行分類時,最大似然估計判別的錯誤率低。2、得到結(jié)果如下1)、用Fisher線性判別方法求分類器,將分類器應(yīng)用到訓(xùn)練和測試樣本上,比
較其錯誤率判別\對象\男生錯誤個數(shù)女生錯誤個數(shù)總錯誤男生錯誤率女生錯誤率總錯誤率測試樣本2722910.8%4%9.67%訓(xùn)練樣本841216%8%12%分析:用訓(xùn)練樣本得到的分類器測試測試樣本時錯誤率低,測試結(jié)果較好,但測試訓(xùn)練樣本時,其錯誤率較高,測試結(jié)果不好。(2)、將訓(xùn)練樣本和求得的決策邊界畫到圖上先驗概略為0.5,0.5從圖中我們可以直觀的比較出對訓(xùn)練樣本Fisher判別比最大似然Bayes判別效果更好。3、留一法測試結(jié)果如下:\\男生錯女生錯錯誤率判別\誤個數(shù)誤個數(shù)對象\分析:用留一法在訓(xùn)練樣本機上估計錯誤率時,錯誤率小于它在測試樣本集上得到的錯誤率,且留一法在測試樣本集上女生錯誤個數(shù)遠(yuǎn)低于男生錯誤個數(shù)。五、體會這次實驗,我們組用了接近三天的時間,首先,我們對題目要求進(jìn)行認(rèn)真分析,在確保對題目完全理解的基礎(chǔ)上,開始一步一步分析,求解。對每個小題,及其每一問,我們都經(jīng)過查書,查資料,編代碼這幾個步驟,仔細(xì)分析每一步算法,得出流程圖。經(jīng)過第一次作業(yè)的編程,本次編程我們都覺得輕松了很多,但還會出現(xiàn)一些細(xì)節(jié)上的錯誤,不過,這些在我們經(jīng)過不斷的調(diào)試之后都會被發(fā)現(xiàn)并解決??傮w而言,本次試驗,讓我們對Parzen窗法求類條件概率密度,以及Fisher線性判別法都有了更大的了解。代碼:%特征是身高,先驗概率為0.5、0.5時用Parzen窗法,貝葉斯分類器。clc;clearall;[FHFW]=te*tread('C:\Users\*uyd\Desktop\homework\FEMALE.t*t','%f%f');z.z.errorboyrate=0;z.errorboyrate=0;z.[MHMW]=te*tread('C:\Users\*uyd\Desktop\homework\MALE.t*t','%f%f');FA=[FHFW];MA=[MHMW];N1=ma*(size(FA));h1=4;hn1=h1/(sqrt(N1));VN1=h1/(sqrt(N1));N2=ma*(size(MA));h2=4;hn2=h2/(sqrt(N2));VN2=h2/(sqrt(N2));[tHtW]=te*tread('C:\Users\*uyd\Desktop\homework\test2.t*t','%f%f%*s');*=[tHtW];[MN]=size(*);s=zeros(M,1);A=[*(:,1)*(:,2)s];error=0;errorgirl=0;errorboy=0;errorrate=0;errorgirlrate=0;girl=0;boy=0;bad=0;fork=1:M%測試集*=A(k);p=0.5;%p為屬于女生的先驗概率,則1-p為男生的先驗概率fori=1:N1pp①=1/sqrt(2*pi)*e*p(-0.5*(abs(*-FA(i)))入2/(hn1入2));%pp(i)是窗函數(shù)endp1=sum(1/VN1*pp');y1=1/N1*p1;%是女生的條件概率密度函數(shù)forj=1:N2qq(j)=1/sqrt(2*pi)*e*p(-0.5*(abs(*-MA(j)))入2/(hn2入2));endq1=sum(1/VN2*qq');y2=1/N2*q1;%男生的概率密度函數(shù),即其條件概率g=p*y1-(1-p)*y2;%g為判別函數(shù)ifg>0ifk<=50s(k,1)=0;%判為女生girl=girl+1;elseerrorgirl=0;z.errorgirl=0;z.errorboyrate=errorboy/250z.errorboyrate=errorboy/250z.errorboy=errorboy+1;endelseifg<0ifk<=50errorgirl=errorgirl+1;elses(k,1)=1;%判為男生boy=boy+1;endelses(k,1)=-2;%不能判別是指等于0時的情況bad=bad+1;endenderrorgirlerrorboybadgirl=errorboy+girlboy=boy+errorgirlerror=errorgirl+errorboyerrorgirlrate=errorgirl/50errorrate=error/M%特征是身高與體重,先驗概率為0.5、0.5時用Parzen窗法,貝葉斯分類器。clc;clearall;[FHFW]=te*tread('C:\Users\*uyd\Desktop\homework\FEMALE.t*t','%f%f');[MHMW]=te*tread('C:\Users\*uyd\Desktop\homework\MALE.t*t','%f%f');FA=[FHFW];MA=[MHMW];N1=ma*(size(FA));h1=7;hn1=h1/(sqrt(N1));VN1二hn"2;N2=ma*(size(MA));h2=7;hn2=h2/(sqrt(N2));VN2=hn2^2;[tHtW]=te*tread('C:\Users\*uyd\Desktop\homework\test2.t*t','%f%f%*s');*=[tHtW];[MN]=size(*);s=zeros(M,1);error=0;z.z.errorboy=0;errorrate=0;errorgirlrate=0;errorboyrate=0;girl=0;boy=0;bad=0;fork=1:MA=[*(k,1)*(k,2)];*=A;p=0.5;%p為屬于女生的先驗概率,則1-p為男生的先驗概率pp=0;fori=1:N1fa=[FA(i,1)FA(i,2)];n=1/sqrt(2*pi)*e*p(-0.5*abs((*-fa)*(*-fa)')/(hn1入2));pp=pp+n;endp1=1/VN1*pp';y1=1/N1*p1;%是女生的條件概率密度函數(shù)qq=0;forj=1:N2ma=[MA(j,1)MA(j,2)];m=1/sqrt(2*pi)*e*p(-0.5*abs((*-ma)*(*-ma)')/(hn2入2));qq=m+qq;endq1=sum(1/VN2*qq');y2=1/N2*q1;%男生的概率密度函數(shù),即其條件概率g二p*y1-(1-p)*y2;%g為判別函數(shù)ifg>0ifk<=50s(k,1)=0;%判為女生girl=girl+1;elseerrorboy=errorboy+1;endelseifg<0ifk<=50errorgirl=errorgirl+1;elses(k,1)=1;%判為男生boy=boy+1;endelses(k,1)=-2;%不能判別是指等于0時的情況bad=bad+1;endenderrorgirlerrorboybadgirl=errorboy+girlboy=boy+errorgirlerror=errorgirl+errorboyerrorgirlrate=errorgirl/50errorboyrate=errorboy/250errorrate=error/M%用fisher線性判別法求閾值function[w,y0]=fisher(AA,BB)A=AA';B=BB';[k1,l1]=size(A);[k2,l2]=size(B);M1=sum(AA);M1=M1';M1二M1/11;%男生均值向量M2=sum(BB);errorboyrate=0;z.errorboyrate=0;z.m2=sum(Y2)/l2;z.m2=sum(Y2)/l2;z.M2=M2';M2二M2/12;%女生均值向量S1=zeros(k1,k1);%建立矩陣S2=zeros(k2,k2);fori=1:l1S1二S1+(A(:,i)-M1)*((A(:,i)-M1).');%男生的類內(nèi)離散度矩陣endfori=1:l2S2=S2+(B(:,i)-M2)*((B(:,i)-M2).');%女生的類內(nèi)離散度矩陣endSw=0.5*S1+0.5*S2;%總類內(nèi)離散度矩陣,先驗概率0.5w=inv(Sw)*(M1-M2);%兩列wT=w';%wT就是使Fisher準(zhǔn)則函數(shù)JF(w)取極大值時的解,也就是宀維*空間到1維Y空間的最好的投影方向fori=1:l1Y1①二wT(1,1)*A(1,i)+wT(1,2)*A(2,i);%求出二維男生樣本集映射到一維時的量endfori=1:l2Y2①二wT(1,1)*B(1,i)+wT(1,2)*B(2,i);%求出二維女生樣本集映射到一維時的量endm1=sum(Y1)/l1;y0=(l1*m1+l2*m2)/(l1+l2);%%用fisher線性判別函數(shù)來判斷clcclearall[filename,pathname,filterinde*]=uigetfile('*.t*t','請讀入男生訓(xùn)練集');fileAddrs=[pathname,filename];[A1A2]=te*tread(fileAddrs,'%f%f');[filename,pathname,filterinde*]=uigetfile('*.t*t','請讀入女生訓(xùn)練集');fileAddrs=[pathname,filename];[B1B2]=te*tread(fileAddrs,'%f%f');AA=[A1A2];BB=[B1B2];[w,y0]=fisher(AA,BB);wT=w';girl=0;boy=0;bad=0;errorgirl=0;errorboy=0;error=0;errorgirlrate=0;z.z.errorrate=0;[filename,pathname,filterinde*]=uigetfile('*.t*t','請讀入測試集');fileAddrs=[pathname,filename];[T1T2]=te*tread(fileAddrs,'%f%f%*s');TT=[T1T2];T=TT[k3l3]=size(T);fork=1:50y(k)=wT*T(:,k);ify(k)>y0errorgirl=errorgirl+1;elseify(k)<y0girl=girl+1;elsebad=bad+1;endendendfork=51:300y(k)=wT*T(:,k);ify(k)>y0boy=boy+1;elseify(k)<y0errorboy=errorboy+1;elsebad=bad+1;endendenderrorgirlerrorboybadgirl=errorboy+girlboy=boy+errorgirlerror=errorgirl+errorboyerrorgirlrate=errorgirl/50errorboyrate=errorboy/250errorrate=error/l3%畫圖[filename,pathname,filterinde*]=uigetfile('*.t*t','請讀入男生訓(xùn)練集');fileAddrs=[pathname,filename];[A1A2]=te*tread(fileAddrs,'%f%f');[filename,pathname,filterinde*]=uigetfile('*.t*t','請讀入女生訓(xùn)練集');fileAddrs=[pathname,filename];[B1B2]=te*tread(fileAddrs,'%f%f');AA=[A1A2];BB=[B1B2];A=AA';B=BB';[k1,l1]=size(A);[k2,l2]=size(B);[w,y0]=fisher(AA,BB);fori=1:l1*=A(1,i);y二A(2,i);%*是身高,y是體重plot(*,y,'R.');holdonendfori=1:l2*=B(1,i);y=B(2,i);plot(*,y,'G.');holdonenda1=min(A(1,:));%男生身高最小值a2=ma*(A(1,:));%男生身高最大值b1=min(B(1,:));%女生身高最小值b2二ma*(B(1,:));%女生身高最大值a3二min(A(2,:));%男生體重最小值a4=ma*(A(2,:));%男生體重最大值b3=min(B(2,:));%女生體重最小值b4=ma*(B(2,:));%女生體重最大值ifa1<b1a=a1;elsea=b1;%a是所有人中身高最小值endifa2>b2b=a2;elseb=b2;%b是所有人中身高最大值endifa3<b3c=a3;elsec=b3;%c是所有人中體重最小值endifa4>b4d=a4;elsed二b4;%d為所有人中體重最大值end*=a:0.01:b;y=(y0-**w(1,1))/w(2,1);plot(*,y,'B');holdon;%身高體重相關(guān),判別測試樣本%手動先驗概率P1=0.5;P2=0.5;FA=A;MA=B;a=cov(FA')*(length(FA)-1)/length(FA);b=cov(MA')*(length(MA)-1)/length(MA);W1=-1/2*inv(a);W2=-1/2*inv(b);Ave1=(sum(FA')/length(FA))';Ave2=(sum(MA')/length(MA))';w1=inv(a)*Ave1;w2=inv(b)*Ave2;w10=-1/2*Ave1'*inv(a)*Ave1-1/2*log(det(a))+log(P1);w20=-1/2*Ave2'*inv(b)*Ave2-1/2*log(det(b))+log(P2);syms*;symsy;h=[*y]';h1=h'*W1*h+w1'*h+w10;h2=h'*W2*h+w2'*h+w20;h=h1-h2;ezplot(h,[130,200,30,100])%功能:應(yīng)用Fisher準(zhǔn)則判斷一個身高體重二維數(shù)據(jù)的性別vector=[*;y];yy=(w.')*vector;ifyy>y0value=2;%表示樣本是男生elsevalue=1;%表示樣本是女生end%功能:使用留一法求訓(xùn)練樣本錯誤率[A1A2]=te*tread('C:\Users\Administrator\Desktop\模式識另U\homework\MALE.t*t','%f%f');[B1B2]=te*tread('C:\Users\Administrator\Desktop\模式識別\homework\FEMALE.t*t','%f%f');AA=[A1A2];BB=[B1B2];A=AA';B=BB';m1=2;m2=2;n1=50;n2=50;tempA=zeros(m1,n1-1);count=0;fori=1:n1forj=1:(i-1)tempA(:,j)=A(:,j);endforj=(i+1):n1tempA(:,j-1)=A(:,j);end[w,y0]=fisher((tempA.'),BB);flag=classify_CH(A(1,i),A(2,i),w,y0);ifflag==1cou
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年租賃交易:商業(yè)地產(chǎn)居間協(xié)議3篇
- 體育用品企業(yè)顧問聘用協(xié)議
- 2024年企業(yè)團建研學(xué)旅行定制合同協(xié)議2篇
- 汽車維修大院租賃合同
- 2025版飛機購買銷售合同附帶飛行員轉(zhuǎn)場與支援服務(wù)3篇
- 貴州省木材行業(yè)人才培養(yǎng)計劃
- 主題公園綠化養(yǎng)護服務(wù)協(xié)議
- 學(xué)校教學(xué)樓內(nèi)墻刮瓷施工合同
- 2024年打樁機租賃與施工協(xié)調(diào)服務(wù)合同3篇
- 二零二五年度臨時農(nóng)業(yè)試驗田租賃協(xié)議3篇
- 《中考體育項目跳繩》教案
- 增服葉酸預(yù)防神經(jīng)管缺陷理論知識考核試題及答案
- 新業(yè)娛樂安全評價報告
- 醫(yī)保工作自查表
- 調(diào)休單、加班申請單
- 小學(xué)-英語-湘少版-01-Unit1-What-does-she-look-like課件
- 單證管理崗工作總結(jié)與計劃
- 安全安全隱患整改通知單及回復(fù)
- 國有檢驗檢測機構(gòu)員工激勵模式探索
- 采購部年終總結(jié)計劃PPT模板
- CDI-EM60系列變頻調(diào)速器使用說明書
評論
0/150
提交評論