模式识别及MATLAB实现【电子工业出版社】学习笔记(二)

本文介绍了使用MATLAB进行最小风险判决实验的方法,包括计算后验概率、基于风险矩阵确定判决规则、生成风险判别曲线,并通过实例展示了如何运用这些步骤对样本进行分类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、 实验目的

1. 了解最小风险判决的基本原理;
2. 掌握最小风险判决规则的算法设计方法及 MATLAB 仿真。

二、实验仪器

安装有 MATLAB 软件的计算机一台。

三、实验内容

①给定样本 X,计算各类后验概率 ,j=1,2,...,c
②在已知风险矩阵的条件下,按照⑵求各种判决的条件平均风险 ,i=1,2,...,a
③按照⑶,比较各种判决的条件平均风险,把样本 X 归属于条件平均风险最小的那一张

判决。

四.实验代码

function [R1_x,R2_x,result]=m123344(~,~,~)
x=[-3.9847 -3.5549 -1.2401 -0.9780 -0.7932 -2.8531 -2.7605-3.7287 -2.5414 -2.2692 -3.4549 -3.0752 -3.9934-2.8792 -0.9780 -0.7932 -1.1882 -3.0682 -1.5799 -1.4885 -0.7431 -0.4221-1.1186 -4.2532];
pw1=0.9;
pw2=0.1;%正常细胞的先验概率为0.9,异常细胞概率为0.1
%[R1_X,R2_x,result]=smalltestbayes (x,pw1,pw2);
m=numel(x);%得到待测细胞数目
R1_x=zeros(1,m);%存放把样本X判为正常细胞所造成的整体损失
R2_x=zeros(1,m);%存放把样本X判为异常细胞所造成的整体损失
result=zeros(1,m);%存放比较结果%类条件概率分布 
% px_wl:(-2,0.25) 
% px_w2:(2,2)
e1=-2;
a1=0.5;
e2=2;
a2=2;
%风险决策值表
r11=0;
r12=4;
r21=4;
r22=0;
%计算两类风险值
for i= 1:m
R1_x(i)=r11*pw1*normpdf(x(i),e1,a1)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2))+r21*pw2*normpdf(x(i),e2,a2)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2));
R2_x(i)=r12*pw1*normpdf(x(i),e1,a1)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2))+r22*pw2*normpdf(x(i),e2,a2)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2));
end
for i= 1:m
if R2_x(i)>R1_x(i)
result(i)=0;
else
result(i)=1;
end
end
a=-5:0.05:5;
n=numel(a);
R1_plot=zeros(1,n);
R2_plot=zeros(1,n);
for j=1:n
R1_plot(j)=r11*pw1*normpdf(a(j),e1,a1)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2))+r21*pw2*normpdf(a(j),e2,a2)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2));
R2_plot(j)=r12*pw1*normpdf(a(j),e1,a1)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2))+r22*pw2*normpdf(a(j),e2,a2)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2));
end
figure(1)
hold on
plot(a,R1_plot,'b-',a,R2_plot,'g-')
for k=1:m
if result(k)==0
plot(x(k),-0.1,'b^')%正常细胞用上三角else
plot(x(k),-0.1,'go')%异常细胞用圆表示
end
end
legend('正常细胞','异常细胞','Location','best')
xlabel('细胞分类结果')
ylabel('风险条件')
title('风险判别曲线')
grid on
return
function [R1_x,R2_x,result]=m123344(~,~,~)
x=[-3.9847 -3.5549 -1.2401 -0.9780 -0.7932 -2.8531 -2.7605-3.7287 -2.5414 -2.2692 -3.4549 -3.0752 -3.9934-2.8792 -0.9780 -0.7932 -1.1882 -3.0682 -1.5799 -1.4885 -0.7431 -0.4221-1.1186 -4.2532];
pw1=0.9;
pw2=0.1;%正常细胞的先验概率为0.9,异常细胞概率为0.1
%[R1_x,R2_x,result]=m123344 (x,pw1,pw2);
m=numel(x);%得到待测细胞数目
R1_x=zeros(1,m);%存放把样本X判为正常细胞所造成的整体损失
R2_x=zeros(1,m);%存放把样本X判为异常细胞所造成的整体损失
result=zeros(1,m);%存放比较结果%类条件概率分布
% px_wl:(-2,0.25)
% px_w2:(2,2)
e1=-2;
a1=0.5;
e2=2;
a2=2;
%风险决策值表
r11=0;
r12=4;
r21=4;
r22=0;
%计算两类风险值
for i= 1:m
    R1_x(i)=r11*pw1*normpdf(x(i),e1,a1)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2))+r21*


pw2*normpdf(x(i),e2,a2)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2));
    R2_x(i)=r12*pw1*normpdf(x(i),e1,a1)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2))+r22*pw2*normpdf(x(i),e2,a2)/(pw1*normpdf(x(i),e1,a1)+pw2*normpdf(x(i),e2,a2));
end
for i= 1:m
    if R2_x(i)>R1_x(i)
        result(i)=0;
    else
        result(i)=1;
    end
end
a=-5:0.05:5;%样本点
n=numel(a);%加载返回样本点
R1_plot=zeros(1,n);%全零矩阵
R2_plot=zeros(1,n);
for j=1:n
    %normpdf(参数,均值,标准差)正态密度函数
R1_plot(j)=r11*pw1*normpdf(a(j),e1,a1)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2))+r21*pw2*normpdf(a(j),e2,a2)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2));
    R2_plot(j)=r12*pw1*normpdf(a(j),e1,a1)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2))+r22*pw2*normpdf(a(j),e2,a2)/(pw1*normpdf(a(j),e1,a1)+pw2*normpdf(a(j),e2,a2));
end
figure(1)
hold on  %窗口保持命令
plot(a,R1_plot,'b-',a,R2_plot,'g-')
for k=1:m
    if result(k)==0
        plot(x(k),-0.1,'b^')%正常细胞用上三角
    else
        plot(x(k),-0.1,'go')%异常细胞用圆表示
    end
end
legend('正常细胞','异常细胞','Location','best')%图形标注函数
xlabel('细胞分类结果')%X轴标签
ylabel('风险条件')%y轴标签
title('风险判别曲线')%图像标签
grid on%是否加网格线
Return

五.实验结果

ans =

列 1 至 13

1.8180 0.2752 0.0927 0.2758 0.6466 0.0249 4.0000 0.0151 0.0131 0.1775 0.0443 4.0000 0.2758

列 14 至 21

0.6466 0.1132 0.0434 0.0316 0.0405 0.8140 0.0350 3.3729

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

时肆 知还

你的鼓励将是我创作的最大动力,

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值