• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-05-17
  • 语言: Matlab
  • 标签: A2  sim  net  

资源简介

[alphabet,targets]=prprob; % Character recognition problem definition S1=10; % 定义隐层神经元数目 [R, Q]= size(alphabet); % 获取输入变量数 [S2,Q]=size(targets); % 获取输出变量数 P=alphabet; % P为输入矩阵 net= newff(minmax(P),[S1 S2],{'logsig' 'logsig'},'traingdx'); % 生成BP网络 net.LW{2,1}= net.LW{2,1}*0.01; % 调整输出层权值 net.b{2}= net.b{2}*0.01;

资源截图

代码片段和文件信息

%神经网络进行字符识别
close all
clear
echo on
clc
%用BP神经网络进行英文字符识别
%NEWFF——生成一个新的bp神经网络
%TRAIN——对神经网络进行训练
%SIM——对神经网络进行仿真
pause % 敲任意键开始
clc
%载入训练样本
[alphabettargets]=prprob
[R1Q1]=size(alphabet)
[R2Q2]=size(targets)
pause
clc
%生成神经网络
S1=10
S2=R2
net=newff(minmax(alphabet)[S1 S2]{‘logsig‘ ‘logsig‘}‘traingdx‘);
net.LW{21}=net.LW{21}*0.01;
pause
clc
%训练神经网络
%1.用理想样本训练神经网络
P=alphabet;
T=targets;
%net.performFcn=‘see‘;
net.trainParam.goal=0.1;
net.trainParam.show=20;
net.trainParam.epochs=5000;
net.trainParam.mc=0.095;
[nettr]=train(netPT);
pause
clc
%2.用喊有不同程度噪声的样本训练神经网络
netn=net;
netn.trainParam.goal=0.6;
netn.trainPAram.epochs=300;
T=[targets targets targets targets];
for pass=1:10
fprintf(‘Pass=%.0f\n‘pass);
P=[alphabetalphabet(alphabet+randn(R1Q1)*0.1)(alphabet+randn(R1Q1)*0.2)];
[netntr]=train(netnPT);
echo off
end
echo on
pause
%3.再次用理想样本训练神经网络
netn.trainParam.goal=0.1;
netn.trainParam.epochs=500;
netn.trainParam.show=5;
P=alphabet;
T=targets;
[netntr]=train(netnPT);
%训练

评论

共有 条评论