?? bp2.m
字號:
close all
clear
echo on
clc
% NEWFF---生成一個新的前向神經網絡
% TRAIN-----對BP神經網絡進行訓練
% SIM----對BP神經網絡進行仿真
pause
% 敲任意鍵開始
clc
% 定義訓練樣本
% P 為輸入矢量
P=textread('yang1.txt');
%T為目標矢量
T=textread('yang2.txt');
pause;
clc
P=P';
T=T';
%創建一個新的前向神經網絡
net=newff(minmax(P),[30,1],{'tansig','purelin'},'traingdm')
%當前輸入層權值和閾值
inputWeights=net.IW{1,1}
inputbias=net.b{1}
%當前網絡層權值和閾值
layerWeights=net.LW{2,1}
layerbias=net.b{2}
pause
clc
% 設置訓練參數
net.trainParam.show=1000;
net.trainParam.lr=0.01;
net.trainParam.mc=0.95;
net.trainParam.epochs=1500000;
net.trainParam.goal=0.07;
pause
clc
% 調用TRAINGDM算法訓練BP網絡
[net,tr]=train(net,P,T);
pause
clc
%訓練后網絡層權值和閾值
layerWeights=net.LW{2,1}
layerbias=net.b{2}
pause
clc
% 對BP網絡進行仿真
A=sim(net,P)
for i=1:100
A(i)
end
plot(i,A);
% 計算仿真誤差
E=T-A
MSE=mse(E)
pause
clc
echo off
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -