📄 breast_cancer_wisconsin_even.asv
字号:
clear;
load data.mat
load ID.mat
Total = length(data(:,1));
VaribleNumber = length(data(1,:));
TrainNumber = length([2:2:Total]);
TestNumber = Total - TrainNumber;
TrainMatrix = data(2:2:end,:);
TestMatrix = data(1:2:end,:);
Answer = strcmp(textdata(1:Total,2),'B');
TrainNumber_B = sum(Answer(2:2:end));
TrainNumber_M = TrainNumber - TrainNumber_B;
P_B = TrainNumber_B / TrainNumber;
P_M = TrainNumber_M / TrainNumber;
Train_B_Matrix = TrainMatrix(Answer(2:2:end) == 1,:);
Train_M_Matrix = TrainMatrix(Answer(2:2:end) == 0,:);
B_MeanMatrix = mean(Train_B_Matrix);
M_MeanMatrix = mean(Train_M_Matrix);
B_ConvarianceMatrix = cov(Train_B_Matrix);
M_ConvarianceMatrix = cov(Train_M_Matrix);
%zero-one loss function
TestCondition_B = zeros(TestNumber,1);
invB_ConvarianceMatrix = inv(B_ConvarianceMatrix);
detB_ConvarianceMatrix = sqrt(det(B_ConvarianceMatrix));
TestCondition_M = zeros(TestNumber,1);
invM_ConvarianceMatrix = inv(M_ConvarianceMatrix);
detM_ConvarianceMatrix = sqrt(det(M_ConvarianceMatrix));
pi2 = (2*pi)^(VaribleNumber/2);
for i = 1:TestNumber
TestCondition_B(i,1) = exp(-.5*(TestMatrix(i,:)-B_MeanMatrix)*invB_ConvarianceMatrix*(TestMatrix(i,:)-B_MeanMatrix)')/detB_ConvarianceMatrix/pi2;
end
for i = 1:TestNumber
TestCondition_M(i,1) = exp(-.5*(TestMatrix(i,:)-M_MeanMatrix)*invM_ConvarianceMatrix*(TestMatrix(i,:)-M_MeanMatrix)')/detM_ConvarianceMatrix/pi2;
end
Result = zeros(TestNumber,1);
ConfusionMatrix =zeros(4,4);
Result(find(TestCondition_B ./ TestCondition_M * P_B / P_M > 1)) = 1;
ConfusionMatrix(1,1) = sum(and((Result == ones(TestNumber,1)) , (Answer(1:2:end,1) == ones(TestNumber,1))));
ConfusionMatrix(1,2) = sum(and((Result == zeros(TestNumber,1)) , (Answer(1:2:end,1) == ones(TestNumber,1))));
ConfusionMatrix(2,1) = sum(and((Result == ones(TestNumber,1)) , (Answer(1:2:end,1) == zeros(TestNumber,1))));
ConfusionMatrix(2,2) = sum(and((Result == zeros(TestNumber,1)) , (Answer(1:2:end,1) == ones(TestNumber,1))));
performance = sum((Result == Answer(1:2:end,1))) / TestNumber
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -