資源簡介
一個最小風險貝葉斯決策的程序,很不錯,推薦。

代碼片段和文件信息
clear
syms?pw1?pw2;
pf=input(‘女生的先驗概率:‘);
pm=1-pf;
X=input(‘請輸入身高體重矩陣:‘);
X=X‘
%求出為女生的概率密度函數
fid1=fopen(‘FEMALE.txt‘‘r‘);
rf=textscan(fid1?‘%f?%f‘);
fheight=mean(rf{1});
fweight=mean(rf{2});
fm=[fheight;fweight];
fM1=cov(rf{1}rf{2});
?fM=det(fM1);
fw1=1/((2*pi)*sqrt(fM))*exp(-0.5*(X-fm)‘*inv(fM1)*(X-fm));
%求出為男生的概率密度函數
fid2=fopen(‘MALE.txt‘‘r‘);
rm=textscan(fid2?‘%f?%f‘);
mheight=mean(rm{1});
fweight=mean(rm{2});
X2=[fheight;fweight];
mN1=cov(rm{1}rm{2});
mN=det((mN1));
fw2=1/((2*pi)*sqrt(mN))*exp(-0.5*(X-X2)‘*inv(mN1)*(X-X2));
%求后驗概率
hpf=pf*fw1/(pf*fw1+pm*fw2);
hpm=pm*fw2/(pf*fw1+pm*fw2);
?%設置風險矩陣
f=[0?7;3?0];
%計算風險及進行判決
Rf=f(11)*hpf+f(12)*hpm
Rm=f(21)*hpf+f(22)*hpm
disp(‘身高和體重相關時,最小風險Bayes判決結果:‘)
if?Rf>=Rm
?????disp(‘It?is?a?male!‘);
else
?????disp(‘It?is?a?female!‘);
end
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????348??2010-03-29?10:48??test1.txt
?????文件???????3018??2010-03-29?11:58??test2.txt
?????文件???????1197??2010-03-29?12:40??test_sike.m
?????文件???????1171??2010-03-29?22:20??xunlian_sike.m
?????文件????????915??2010-03-28?22:26??bayes_sike.m
?????文件???????1005??2010-03-28?22:25??bayes_sike_notc.m
?????文件????????426??2004-10-08?09:03??FEMALE.TXT
?????文件????????424??2004-10-08?09:04??MALE.TXT
-----------?---------??----------?-----??----
?????????????????8504????????????????????8
- 上一篇:.svs文件轉換成JPG文件
- 下一篇:同步電機SVPWM控制模型
評論
共有 條評論