bayes.m

来自「Bayes分类器和Fisher分类器的设计仿真」· M 代码 · 共 48 行

M
48
字号
% Bayes分类器设计
close all 
clear all
echo off

x_serie=[-4:0.01:5];
% 待测细胞
x_value=[-3.9847   -3.5549   -1.2401   -0.9780   -0.7932   -2.8531...
         -2.7605   -3.7287   -3.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];

% 先验概率
p1=0.9; % 正常细胞
p2=0.1; % 异常细胞

% 类条件概率密度1
ptj1x=zeros(1,length(x_serie));
ptj2x=zeros(1,length(x_serie));
ptj1x=pdf(2,2,x_serie); % 正常细胞
ptj2x=pdf(-2,0.5,x_serie); % 异常细胞
% 类条件概率密度2
ptj1=zeros(1,length(x_value));
ptj2=zeros(1,length(x_value));
ptj1=pdf(2,2,x_value); % 待测样本中的正常细胞
ptj2=pdf(-2,0.5,x_value); % 待测样本中的异常细胞

% 后验概率1
phyx=zeros(2,length(x_serie)); % 正常细胞
phyx=phyf(p1,p2,ptj1x,ptj2x); % 异常细胞
% 后验概率2
phy=zeros(2,length(x_value)); % 待测样本中的正常细胞
phy=phyf(p1,p2,ptj1,ptj2); % 待测样本中的异常细胞

% 分类判决
hold on
% 后验概率的分布曲线
plot(x_serie,phyx(1,:),'r'); % 正常细胞
plot(x_serie,phyx(2,:),'b'); % 异常细胞
% 对待测细胞进行分类
for ii=1:length(x_value)
    if phy(1,ii)>phy(2,ii) % 判为正常细胞
        plot(x_value(ii),-0.1,'r*');
    else % 判为异常细胞
        plot(x_value(ii),-0.1,'bo');
    end
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?