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

📄 bp.m

📁 这是一个关于BP神经网络的程序
💻 M
字号:
close all  
clear  
echo on  
clc  
% NEWFF——生成一个新的前向神经网络  
% TRAIN——对 BP 神经网络进行训练 
% SIM——对 BP 神经网络进行仿真  
pause         
%  敲任意键开始  
clc  
%  定义训练样本矢量  
% P 为输入矢量  
P = [-1:0.05:1];  
% T 为目标矢量  
randn('seed',78341223); T = sin(2*pi*P)+0.1*randn(size(P));  
%  绘制样本数据点  
plot(P,T,'+');  
echo off  
hold on;  
plot(P,sin(2*pi*P),':');         
%  绘制不含噪声的正弦曲线  
echo on  
clc  
pause  
clc  
%  创建一个新的前向神经网络  
net=newff(minmax(P),[20,1],{'tansig','purelin'});  
pause  
clc  
echo off  
clc 
disp('1.  L-M 优化算法 TRAINLM'); disp('2.  贝叶斯正则化算法 TRAINBR');  
choice=input('请选择训练算法(1,2):');  
figure(gcf);  
if(choice==1)                  
    echo on          
    clc          
    %  采用 L-M 优化算法 TRAINLM  
    net.trainFcn='trainlm';          
    pause          
    clc          
    %  设置训练参数          
    net.trainParam.epochs = 500;          
    net.trainParam.goal = 1e-6;          
    net=init(net);         
    %  重新初始化            
    pause          
    clc 
elseif(choice==2)          
    echo on          
    clc          
    %  采用贝叶斯正则化算法 TRAINBR          
    net.trainFcn='trainbr';          
    pause          
    clc          
    %  设置训练参数          
    net.trainParam.epochs = 500;          
    randn('seed',192736547);          
    net = init(net);         
    %  重新初始化            
    pause          
    clc          
end

⌨️ 快捷键说明

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