91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 2KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-06-08
  • 語言: Matlab
  • 標(biāo)簽: Bayes??

資源簡介

matlab代碼,有詳細(xì)解釋,產(chǎn)生正態(tài)分布隨機數(shù)據(jù),劃分訓(xùn)練集測試集,用Bayes分類器分類

資源截圖

代碼片段和文件信息

%-------------------------------------------------
%由訓(xùn)練數(shù)據(jù)統(tǒng)計先驗概率得到分界線(設(shè)計分類器);
%用測試數(shù)據(jù)測試分類器性能,計算錯判率;
%畫出訓(xùn)練集二維分布,測試集數(shù)據(jù)三維分布圖及分界線
%-------------------------------------------------
function?bayes_classifier(datatarget)
train=zeros(10002);
test=zeros(20002);
prior_class1=0;
prior_class2=0;
class1_num=0;
class2_num=0;
%打亂下標(biāo)便于隨機劃分訓(xùn)練集和測試集
index=randperm(3000);

figure;
hold?on;
%由訓(xùn)練數(shù)據(jù)得到先驗概率
for?i=1:1000
????%按打亂順序的前1000個下標(biāo)選取訓(xùn)練數(shù)據(jù)
????train(i:)=data(index(i):);
????%統(tǒng)計訓(xùn)練集中兩類數(shù)據(jù)點,得到先驗概率
????if?index(i)>1500?
????????scatter(train(i1)train(i2)‘m‘‘.‘);%粉紅表示第二類,綠色表示第一類
????????class2_num=class2_num+1;
????????data_class2(class2_num:)=data(index(i):);
????else????????
????????class1_num=class1_num+1;
????????scatter(train(i1)train(i2)‘g‘‘.‘);????????
????????data_class1(class1_num:)=data(index(i):);
????end
end

mu1=mean(data_class1);
mu2=mean(data_class2);
sigma1=cov(data_class1);
sigma2=cov(data_class2);
display(mu1);
display(sigma1);
display(mu2);
display(sigma2);
%由訓(xùn)練集得到的先驗概率
prior1=class1_num/1000;
prior2=class2_num/1000;
display(prior1);
display(prior2);

%根據(jù)貝葉斯決策方程求數(shù)據(jù)分界線
syms?x1?x2
Xr=[x1x2];
Xt=[x1;x2];
%對于一般性多元正態(tài)數(shù)據(jù),決策面方程為X‘(Wi-Wj)X+(wi-wj)‘X+wi0-wj0=0X為列向量;
%式中的WiWj即下式w1(2)_1;
%wiwj即w1(2)_2;
%wi0wj0即w1(2)_3;
w1_1=-0.5*inv(sigma1);
w2_1=-0.5*inv(sigma2);
w1_2=inv(sigma1)*mu1‘;
w2_2=inv(sigma2)*mu2‘;
w1_3=-0.5*mu1*inv(sigma1)*mu1‘+log(prior1);
w2_3=-0.5*mu2*inv(sigma2)*mu2‘+log(prior2);
%分界線方程
g12=Xr*(w1_1-w2_1)*Xt+(w1_2-w2_2)‘*Xt+w1_3-w2_3;
g12=simple(g12);

ezplot(g12);
hold?off;
%初始化錯分樣本數(shù)
error_count=0;
test=data(index(1001:3000):);
for?i=1:2000
????if?index(i+1000)<=1500
????g(i)=-0.5*(test(i:)-mu1)*inv(sigma1)*(test(i:)-mu1)‘-0.5*log(det(sigma1))+log(prior1);
????g_temp=-0.5*(test(i:)-mu2)*inv(sigma2)*(test(i:)-mu2)‘-0.5*log(det(sigma2))+log(prior2);
????????if?g(i)???????????error_count=error_count+1;?
????????end
????else?
????g(i)=-0.5*(test(i:)-mu2)*inv(sigma2)*(test(i:)-mu2)‘-0.5*log(det(sigma2))+log(prior2);???
????g_temp=-0.5*(test(i:)-mu1)*inv(sigma1)*(test(i:)-mu1)‘-0.5*log(det(sigma1))+log(prior1);
????????if?g(i)????????????error_count=error_count+1;?
????????end
????end
end
error_rate=error_count/2000;
display(error_rate);

data3d(:1:2)=test;
data3d(:3)=g;
[XYZ]=griddata(data3d(:1)data3d(:2)data3d(:3)linspace(min(data3d(:1))max(data3d(:1)))‘linspace(min(data3d(:2))max(data3d(:2))));

figure;
hold?on;
grid?on;
mesh(XYZ);
ezplot(g12);
hold?off;
end



















?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2011-12-21?17:35??Bayes\
?????文件????????2813??2011-12-13?15:43??Bayes\bayes_classifier.m
?????文件?????????831??2011-12-13?14:02??Bayes\bayes_main.m
?????文件?????????624??2011-12-13?13:16??Bayes\data_generator.m

評論

共有 條評論