《《數(shù)據(jù)分析》實(shí)驗(yàn)報(bào)告三》由會(huì)員分享,可在線閱讀,更多相關(guān)《《數(shù)據(jù)分析》實(shí)驗(yàn)報(bào)告三(6頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、課程名稱(chēng)
數(shù)據(jù)分析方法
課程編號(hào)
實(shí)驗(yàn)地點(diǎn)
系統(tǒng)建模與仿真實(shí)驗(yàn)室SL110
實(shí)驗(yàn)時(shí)間
校外指導(dǎo)教師
無(wú)
校內(nèi)指導(dǎo)教師
實(shí)驗(yàn)名稱(chēng)
實(shí)驗(yàn)3 距離判別與貝葉斯判別分析
評(píng)閱人簽字
成績(jī)
實(shí)驗(yàn)數(shù)據(jù)與內(nèi)容
我國(guó)山區(qū)某大型化工廠, 在廠區(qū)及鄰近地區(qū)挑選有代表性的15個(gè)大氣取樣點(diǎn),每日4次同時(shí)抽取大氣樣品, 測(cè)定其中含有的6種氣體的濃度, 前后共4天, 每個(gè)取樣點(diǎn)每種氣體實(shí)測(cè)16次, 計(jì)算每個(gè)取樣點(diǎn)每種氣體的平均濃度, 數(shù)據(jù)見(jiàn)表4-8。氣體數(shù)據(jù)對(duì)應(yīng)的污染地區(qū)分類(lèi)見(jiàn)表4-8中最后一列。 現(xiàn)有兩個(gè)取自該地區(qū)的4個(gè)氣體樣本,氣體指標(biāo)見(jiàn)表4-8中后4行,試解決以下問(wèn)題
2、:
1. 判別兩類(lèi)總體的協(xié)方差矩陣是否相等,然后用馬氏距離差別這4個(gè)未知?dú)怏w樣本的污染類(lèi)別, 并計(jì)算回代誤判率與交叉誤判率;若兩類(lèi)總體服從正態(tài)分布,第一類(lèi)與第二類(lèi)的先驗(yàn)概率分別為7/15、8/15, 利用貝葉斯判別樣本的污染分類(lèi)。
2.先驗(yàn)概率為多少時(shí),距離判別與貝時(shí)斯判別相同?調(diào)整先驗(yàn)概率對(duì)判別結(jié)果的影響是什么?
3.對(duì)第一類(lèi)與第二類(lèi)的先驗(yàn)概率分別為7/15、8/15,計(jì)算誤判概率。
一、實(shí)驗(yàn)?zāi)康?
1.熟練掌握MATLAB軟件進(jìn)行距離判別與貝葉斯判別的方法與步驟。
2.掌握判別分析的回代誤判率與交叉誤判率的編程。
3.掌握貝葉斯判別的誤判率的計(jì)算。
二、實(shí)驗(yàn)原理
1
3、)在MATLAB中,進(jìn)行數(shù)據(jù)的判別分析命令為classify,其調(diào)用格式為:
class=classify(sample,training,group’type’)
將sample數(shù)據(jù)的每一行指定到訓(xùn)練集training的一個(gè)類(lèi)中。Sample和training必須具有相同的列數(shù)。group向量包含從1到組數(shù)的正整數(shù),它指明訓(xùn)練營(yíng)集中的每一行屬于哪一類(lèi)。group和training必須具有相同的行數(shù)。’type’是可選項(xiàng),選’linear’表示總體為多元正態(tài)總體,選’quadratic’與’mahalanobis’。該函數(shù)返回class,它是一個(gè)與sample具有相同行數(shù)的向量。Class
4、的每一個(gè)元素指定sample中對(duì)應(yīng)元素的分類(lèi)。通過(guò)計(jì)算sample和training中每一行的馬氏距離,classify函數(shù)決定sample中的每一行屬于哪一個(gè)分類(lèi)。
2)貝葉斯判別方法步驟
第1步,驗(yàn)證兩個(gè)總體服從二元正態(tài)分布;第2步,檢驗(yàn)兩個(gè)總體的協(xié)方差矩陣相等;估計(jì)兩個(gè)總體的先驗(yàn)概率p1、p2;利用MATLAB軟件計(jì)算。
3)回代誤判率
設(shè)G1,G2為兩個(gè)總體,x1,x2…和y1,y2…是分別來(lái)自G1,G2的訓(xùn)練樣本,以全體訓(xùn)練樣本作為m+n個(gè)新樣品,逐個(gè)代入已建立的判別準(zhǔn)則中判別其歸屬,這個(gè)過(guò)程稱(chēng)為回判?;嘏薪Y(jié)果中若屬于G1的樣品被誤判為屬于G2的個(gè)數(shù)為N1個(gè),屬于G2的樣品被
5、誤判為屬于G1的個(gè)數(shù)為N2個(gè),則誤判估計(jì)為:
P^=(N1+N2)/(m+n)
誤判率的回代估計(jì)易于計(jì)算。但是,p^是由建立判別函數(shù)的數(shù)據(jù)反過(guò)來(lái)用作評(píng)估準(zhǔn)則的數(shù)據(jù)而得到的。所以有偏,往往比真實(shí)誤判率小。當(dāng)訓(xùn)練樣本容量較大時(shí),p^可以作為真實(shí)誤判率的一種估計(jì)。
4)交叉誤判率估計(jì)是每次剔除一個(gè)樣品,利用m+n-1個(gè)訓(xùn)練樣本建立判別準(zhǔn)則,再利用建立的準(zhǔn)則對(duì)刪除的樣本進(jìn)行判別。對(duì)每個(gè)樣品做如上分析,以其誤判的比例作為誤判率,步驟;
從總體G1的訓(xùn)練樣本開(kāi)始,剔除其中一個(gè)樣品,剩余的m-1個(gè)樣品與G2中的全部樣品建立判別函數(shù);
用建立的判別函數(shù)對(duì)剔除的樣品進(jìn)行判別;
重復(fù)以上步驟,直到G1
6、中的全部樣本依次被刪除又進(jìn)行判別,其誤判的樣品個(gè)數(shù)記為N1*;
對(duì)G2的樣品重復(fù)以上步驟,直到G2中的全部樣本依次被刪除又進(jìn)行判別,其誤判的樣品個(gè)數(shù)記為N2*。
于是交叉誤判率估計(jì)為:
p^*=(N1*+N2*)/(m+n)
5)貝葉斯判別的有效性可以通過(guò)平均誤判率來(lái)確定。判別準(zhǔn)則的誤判率在一定程度上依賴(lài)于所考慮的各總體間的差異程度。各總體間差異越大,就越有可能建立有效的判別準(zhǔn)則。如果各總體間差異很小,做判別分析的意義不大。
三、實(shí)驗(yàn)步驟
輸入數(shù)據(jù),判別兩類(lèi)總體的協(xié)方差陣是否相等,用馬氏距離判斷判別污染類(lèi)別,計(jì)算回代誤判率與交叉誤判率,貝葉斯判別污染分類(lèi)。
四、實(shí)驗(yàn)過(guò)程原始記
7、錄(數(shù)據(jù)、圖表、計(jì)算等)
1、輸入矩陣,計(jì)算協(xié)方差矩陣是否相等
>> A=[0.0560 0.0840 0.0310 0.0380 0.0081 0.0220
0.0400 0.0550 0.1000 0.1100 0.0220 0.0073
……
0.0690 0.0870 0.0270 0.0500 0.0890 0.0210
0.0520 0.0840 0.0210 0.0370 0.0071 0.0220]
>> x=[0
8、.052 0.084 0.021 0.037 0.0071 0.022
0.0410 0.0550 0.1100 0.1100 0.0210 0.0073
0.0300 0.1120 0.0720 0.1600 0.0560 0.0210
0.0740 0.0830 0.1050 0.1900 0.0200 1.0000]
>> G1=A([1:4 7:8 15],:);
>> G2=A([5:6 9:4 15],:);
>> n1=size(G1,1);
>> n2=size(G2,1);
9、
>> n=n1+n2;
>> k=2;
>> p=6;
>> f=p*(p+1)*(k-1)/2;
>> d=(2*p^2+3*p-1)*(1/(n1-1)+1/(n2-1)-1/(n-k))/(6*(p+1)*(k-1));
>> p1=n1/n;p2=n2/n;
>> m1=mean(G1);m2=mean(G2);
>> s1=cov(G1);s2=cov(G2);
>> s=((n1-1)*s1+(n2-1)*s2)/(n-k);
>> M=(n-k)*log(det(s))-((n1-1)*log(det(s1))+(n2-1)*log(det(s2)));
10、>> T=(1-d)*M
T =
-44.8237 + 0.9288i
>> C=chi2inv(0.95,f)
C =
32.6706
>> if T> for i=1:4
w(1)=m1*inv(s)*x(i,:)-1/2*m1*inv(s)*m1+log(p1);
w(2)=m2*inv(s)*x(i,:)-1/2*m1*inv(s)*m2+log(p2);
for j=1:
11、2
if w(j)==max(w)
disp([待判樣品屬于第,num2str(j),類(lèi)污染]);
end
end
end
待判樣品屬于第2類(lèi)污染
待判樣品屬于第2類(lèi)污染
待判樣品屬于第2類(lèi)污染
待判樣品屬于第2類(lèi)污染
3、計(jì)算回代誤判率
>> n11=0;n22=0;
>> for i=1:n1
w1(i,1)=m1*inv(s)*G1(i,:)-1/2*m1*inv(s)*m1+log(p1);
w1(i,2)=m2*inv(s)*G1(i,:)-1/2*m2*inv(s)*m2+log(p2);
for j=1:2
if w1(i,j)==max(w1(i
12、,:))&j~=1
n11=n11+1;
end
end
end
>> for i=1:n2
w2(i,1)=m1*inv(s)*G2(i,:)-1/2*m1*inv(s)*m1+log(p1);
w2(i,2)=m2*inv(s)*G2(i,:)-1/2*m2*inv(s)*m2+log(p2);
for j=1:2
if w2(i,j)==max(w2(i,:))&j~=2
n22=n22+1;
end
end
end
>> poo=(n11+n22)/(n1+n2)
poo =
0.1000
4、計(jì)算交叉誤判率
>> N11=0;N22=0;
>>
13、 for k=1:n1
A=G1([1:k-1,k+1:n1],:);
N1=length(A(:,1));
M1=mean(A,1);s11=cov(A);
S1=((N1-1)*s11+(n2-1)*s2)/(N1+n2-k);
po1=N1/(n-1);po2=n2/(n-1);
for i=1:n1
w1(i,1)=M1*inv(S1)*G1(i,:)-1/2*M1*inv(S1)*M1+log(po1);
w1(i,2)=m2*inv(S1)*G1(i,:)-1/2*m2*inv(S1)*m2+log(po2);
for j=1:2
if w1(i.j)==max(W1(i,:))&j~=1
N11=N11+1;
end
end
end
end
嘗試引用非結(jié)構(gòu)體數(shù)組的字段(我沒(méi)轍了,實(shí)在不知道哪錯(cuò)了)
五、實(shí)驗(yàn)結(jié)果及分析
此題用貝葉斯判別法分析效果明顯
說(shuō)明:此部分的內(nèi)容和格式可根據(jù)實(shí)驗(yàn)課程的具體需要、要求自行設(shè)計(jì)和確定相關(guān)欄目。