⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 goodtest2.m

📁 matlab使用BP网络的例子,使用Levenberg Marquardt算法提高训练速度,效果不错
💻 M
字号:
%对效果不错的网络进行评估识别率,进行精确估计,即向后识别1步

clear;
load GoodBlueNetwork.txt -mat;
load data.txt -mat;
samplenum=size(TrainingObject,2);       %得到样本数
nown=n+1;
correctnum=0;
correct=0;
show=[];
for n=nown:samplenum-1  
    prediction=sim(net,TrainingSample(:,n));    %预测值
    real=TrainingObject(:,n);                  %目标值
    if(abs(prediction-real)<0.5)                    %计算正确率
        correctnum=correctnum+1;
        correct=1;
    else
        correct=0;
	end;
    show=[show;prediction,real,abs(prediction-real),correct];              %评估情况
    [net,tr]=train(net,TrainingSample(:,1:n),TrainingObject(:,1:n));    %评估完了要重新训练
    MSE=tr.perf(size(tr.perf,2));                       %计算性能  
    save teststate.mat;                                 %每做完一次训练后保存一次以便将来能继续
    save n.txt n MSE correctnum show -ascii;                 %可以让我们看出当前训练到哪一步了,MSE是多少,预测能力是多少
end;
num=samplenum-nown;
ratio=correctnum/num;                               %正确率

%sum(show(:,3))/size(show,1)    MATLAB求均值的方法
%sum(show(:,3)<0.5)             MATLAB计数的方法

⌨️ 快捷键说明

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