clc;
clear all;
close all;
warning off;
addpath 'func\';
rng('default');
load DATA\breast.mat
%训练比例
L = 0.6;
P = breast(:,1:9);
T = round(breast(:,end)/2);
MTKL= 100;
I1 = find(T==1);
I2 = find(T==2);
idx1= [I1(1:floor(L*length(I1)));I2(1:floor(L*length(I2)))];
idx2= [I1(1+floor(L*length(I1)):end);I2(1+floor(L*length(I2)):end)];
for j = 1:MTKL
j
rng(j);
Ptrain = P(idx1,:);
Ptest = P(idx2,:);
Ttrain = T(idx1);
Ttest = T(idx2);
%数据输入
net2 = newff(Ptrain',Ttrain',4,{'tansig', 'purelin'}, 'traingd'); % 隐含层有5个神经元
net2.trainParam.goal = 1e-5;
net2.trainParam.epochs = 1000;
net2.trainParam.lr = 0.0025;
net2.trainParam.showWindow = 0;
net2 = train(net2,Ptrain',Ttrain');
y = [round(sim(net2,Ptest'))]';
[A,~]= confusionmat(Ttest,y);
%计算-1类的评价值
c1_precise(j) = A(1,1)/(A(1,1) + A(2,1));
c1_recall(j) = A(1,1)/(A(1,1) + A(1,2));
c1_F1(j) = 2 * c1_precise(j) * c1_recall(j)/(c1_precise(j) + c1_recall(j));
%计算1类的评价值
c2_precise(j) = A(2,2)/(A(1,2) + A(2,2));
c2_recall(j) = A(2,2)/(A(2,1) + A(2,2));
c2_F1(j) = 2 * c2_precise(j) * c2_recall(j)/(c2_precise(j) + c2_recall(j));
end
idx=[];
for i =1:MTKL
if isnan(c1_precise(i))==1 | isnan(c1_recall(i))==1 | isnan(c1_F1(i))==1 | isnan(c2_precise(i))==1 | isnan(c2_recall(i))==1 | isnan(c2_F1(i))==1
idx=[idx,i];
end
end
c1_precise(idx)=[];
c1_recall(idx)=[];
c1_F1(idx)=[];
c2_precise(idx)=[];
c2_recall(idx)=[];
c2_F1(idx)=[];
R = [mean(c1_precise),mean(c1_recall),mean(c1_F1),mean(c2_precise),mean(c2_recall),mean(c2_F1)]
figure;
bar([mean(c1_precise),mean(c2_precise)]);title('识别率');
figure;
bar([mean(c1_recall),mean(c2_recall)]);title('召回率');
figure;
bar([mean(c1_F1),mean(c2_F1)]);title('F1');
save R1.mat c1_precise c1_recall c1_F1 c2_precise c2_recall c2_F1
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
matlab_(含教程)基于BP神经网络的乳腺癌识别算法的MATLAB仿真,包含数据库,输出识别率,召回率以及F1.7z (5个子文件)
matlab_(含教程)基于BP神经网络的乳腺癌识别算法的MATLAB仿真,包含数据库,输出识别率,召回率以及F1
教程.mp4 25.81MB
BP
DATA
breast.mat 3KB
R1.mat 8KB
main.m 2KB
main.asv 2KB
共 5 条
- 1
资源评论
mYlEaVeiSmVp
- 粉丝: 1889
- 资源: 19万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功