资源简介

简单的运用MATLAB进行机器学习的程序,有关贝叶斯算法的简单程序。

资源截图

代码片段和文件信息

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%功能:演示贝叶斯学习算法在计算机视觉中的应用
%基于贝叶斯学习实现目标分类;
%环境:Win7,Matlab2012b
%Modi: NUDT-VAP
%时间:2014-02-04
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%加载背景和行人样本
load human;
load background;
%随机划分训练样本和测试样本
for j=1:10
k_s=13;
k_d=120;
hm_tr(250252)=0;
hm_test(250252)=0;
[hm_trhm_test]=randQ(human);
randQ(background);
bg_tr(250252)=0;
bg_test(250252)=0;
[bg_trbg_test]=randQ(background);
%设计最小风险贝叶斯分类器
M_hm=hm_tr(1k_s:k_d);
for i=2:250
M_hm=M_hm+(hm_tr(ik_s:k_d));
end
M_hm=M_hm/250;
M_bg=bg_tr(1k_s:k_d);
for i=2:250
M_bg=M_bg+(bg_tr(ik_s:k_d));
end
M_bg=M_bg/250;
E_hm(k_d-k_s+1k_d-k_s+1)=0;
E_bg(k_d-k_s+1k_d-k_s+1)=0;
for i=1:250
    E_hm=E_hm+(hm_tr(ik_s:k_d)-M_hm)‘*(hm_tr(ik_s:k_d)-M_hm);
    E_bg=E_bg+(bg_tr(ik_s:k_d)-M_bg)‘*(bg_tr(ik_s:k_d)-M_bg);
end
E_hm=E_hm/250;
E_bg=E_bg/250;

%分类测试
%设计判决函数并分类
flag_hm(250)=0;
flag_bg(250)=

评论

共有 条评论