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

📄 character_recognize.m

📁 此为BP感知神经分类器,自己写的.有须要的请下载,很不错的.
💻 M
字号:
%特征识别
%识别26个字母 使用函数newwff创建一个两层网络并初始化
%***********************************
[alphabet,targets]=prprob;
S1=10;
[R,Q]=size(alphabet);               %alphabet在prprob函数中有定义
[S2,Q]=size(targets);               %targets在prprob函数中有定义
P=alphabet;
net=newff(minmax(P),[S1 S2],{'logsig' 'logsig'},'traingdx');
net.LW{2,1}=net.LW{2,1}*0.01;
net.b{2}=net.b{2}*0.01;
%**********************************
%网络训练  用理想的信号进行训练和加有噪声的信号进行训练
%用理想的信号
P=alphabet;
T=targets;
net.performFcn='sse';
net.trainParam.goal=0.1;
net.trainParam.show=20;
net.trainParam.epochs=5000;
net.trainParam.mc=0.95;
[net,tr]=train(net,P,T);
%**********************************
%加有噪声的信号进行训练 300个时间单位 误差参数增加到0.6 因为训练内容提高了4倍
netn=net;
netn.trainParam.goal=0.6;
netn.trainParam.epochs=300;
T=[targets targets targets targets];
for pass=1:10
    P=[alphabet,alphabet,...
            (alphabet+randn(R,Q)*0.1),...
            (alphabet+randn(R,Q)*0.2)];
    [netn,tr]=train(netn,P,T);
end

%************************************************
%系统性能评估
noise_range=0:0.05:0.5;
max_test=100;
T=targets;
for i=1:11
    noiselevel(i)=noise_range(i);
    errors1(i)=0;
    errors2(i)=0;
    for j=1:max_test
        P=alphabet+randn(35,26)*noiselevel(i);      %测试款经误差训练的网络
        A=sim(net,P);
        AA=compet(A);
        errors1(i)=errors1(i)+sum(sum(abs(AA-T)))/2; %测试经过误差训练的网络
        An=sim(netn,P);
        AAn=compet(An);
        errors2(i)=errors2(i)+sum(sum(abs(AAn-T)))/2;
    end
end
pause
figure(1);
plot(noise_range,errors1*100,'--',noise_range,errors2*100);
title('识别错误率');
xlabel('噪声指标');
ylabel('未经误差训练的网络--  经过误差训练的网络---');
%******************************************************
%测试系统
for index=1:5:26;
    noisyJ=alphabet(:,index)+randn(35,1)*0.2;
    figure(2);
    plotchar(noisyJ);
    A2=sim(net,noisyJ);
    A2=compet(A2);
    answer=find(compet(A2)==1);
    figure(3);
    plotchar(alphabet(:,answer));
end
%******************************************************




⌨️ 快捷键说明

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