test_set.m

来自「Fisher线性判别是线性分类算法中最基本的一种算法」· M 代码 · 共 32 行

M
32
字号
%%%%%%%%%%%%%%%%%%%%%%%%%% Testing %%%%%%%%%%%%%%%%%%%%%%%%%%
function E=Test_Set(TestSet,Training)
% 计算各类错误率e1,e2 和总错误率e
X=TestSet.X';
E=[0,0;0,0;0,0;0,0];
for tk=1:4
switch tk
case 1,
    b=Training.y1;
case 2,
    b=Training.y2;
case 3,
    b=Training.y3;    
otherwise,
    b=Training.y4;    
end
for i=1:TestSet.n
    y=Training.W*X(:,i)-b;
    if TestSet.CN(i)*y<0
        if TestSet.CN(i)==1
            E(tk,1)=E(tk,1)+1;
        else
            E(tk,2)=E(tk,2)+1;
        end
    end
end
e1=E(tk,1)/TestSet.n1;
e2=E(tk,2)/TestSet.n2;
e=(E(tk,1)+E(tk,2))/TestSet.n;
fprintf('方法%d:\t错误率e1=%.2f%%,e2=%.2f%%,e=%.2f%%\n',tk,e1*100,e2*100,e*100);
end
%%%%%%%%%%%%%%%%%%%%%%%% Testing End %%%%%%%%%%%%%%%%%%%%%%%%

⌨️ 快捷键说明

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