load data1;
right=0;
x=zeros(2,1);
%假设它们都符合二元高斯分布
u1=zeros(2,1);%值为1的类的均值
v1=zeros(2,2);%值为1的类的方差
u2=zeros(2,1);%值为2的类的均值
v2=zeros(2,2);%值为2的类的方差
sum1=0;
sum2=0;
pior1=0;
posterior1=0;
likehood1=0;
pior2=0;
posterior2=0;
likehood2=0;
for i=1:1:2500%求先验
if(data(3,i)==1)
sum1=sum1+1;
else
sum2=sum2+1;
end
end
pior1=sum1/(sum1+sum2);
pior2=sum2/(sum1+sum2);
for m=2501:1:3000 %测试循环
for i=1:1:2500%求均值
if(data(3,i)==1)
u1(1,1)=u1(1,1)+data(1,i);
u1(2,1)=u1(2,1)+data(2,i);
else
u2(1,1)=u2(1,1)+data(1,i);
u2(2,1)=u2(2,1)+data(2,i);
end
end
u1=u1/2500;
u2=u2/2500;
for i=1:1:2500%求方差
if(data(3,i)==1)
x(1,1)=data(1,i);
x(2,1)=data(2,i);
v1=v1+(x-u1)*(x-u1)';
else
x(1,1
matlab 贝叶斯决策对二维二分类问题的实现
最新推荐文章于 2024-04-20 16:24:59 发布