BP神經(jīng)網(wǎng)絡(luò)的設(shè)計實例(MATLAB編程)
BP神經(jīng)網(wǎng)絡(luò)的設(shè)計實例(MATLAB編程):例1 采用動量梯度下降算法訓練 BP 網(wǎng)絡(luò)。?
訓練樣本定義如下:?
輸入矢量為?????
?p =[-1 -2 3? 1??
???? -1? 1 5 -3]?
目標矢量為?? t = [-1 -1 1 1]?
解:本例的 MATLAB 程序如下:??
close all??
clear??
echo on??
clc??
% NEWFF——生成一個新的前向神經(jīng)網(wǎng)絡(luò)??
% TRAIN——對 BP 神經(jīng)網(wǎng)絡(luò)進行訓練??
% SIM——對 BP 神經(jīng)網(wǎng)絡(luò)進行仿真??
pause?????????
%? 敲任意鍵開始??
clc??
%? 定義訓練樣本??
% P 為輸入矢量??
P=[-1,? -2,??? 3,??? 1;?????? -1,??? 1,??? 5,? -3];?
% T 為目標矢量??
T=[-1, -1, 1, 1];??
pause;??
clc??
%? 創(chuàng)建一個新的前向神經(jīng)網(wǎng)絡(luò)??
net=newff(minmax(P),[3,1],{'tansig','purelin'},'traingdm')?
%? 當前輸入層權(quán)值和閾值??
inputWeights=net.IW{1,1}??
inputbias=net.b{1}??
%? 當前網(wǎng)絡(luò)層權(quán)值和閾值??
layerWeights=net.LW{2,1}??
layerbias=net.b{2}??
pause??
clc??
%? 設(shè)置訓練參數(shù)??
net.trainParam.show = 50;??
net.trainParam.lr = 0.05;??
net.trainParam.mc = 0.9;??
net.trainParam.epochs = 1000;??
net.trainParam.goal = 1e-3;??
pause??
clc??
%? 調(diào)用 TRAINGDM 算法訓練 BP 網(wǎng)絡(luò)??
[net,tr]=train(net,P,T);??
pause??
clc??
%? 對 BP 網(wǎng)絡(luò)進行仿真??
A = sim(net,P)??
%? 計算仿真誤差??
E = T - A??
MSE=mse(E)??
pause??
非常好我支持^.^
(10) 100%
不好我反對
(0) 0%
下載地址
BP神經(jīng)網(wǎng)絡(luò)的設(shè)計實例(MATLAB編程)下載
相關(guān)電子資料下載
- MATLAB程序算法實例 65
- matlab怎么取三位數(shù)的每一位 85
- 現(xiàn)代永磁同步電機原理及matlab仿真 136
- 應用衛(wèi)星通信領(lǐng)域的一個坐標轉(zhuǎn)換過程—機體坐標系與ENU坐標系的轉(zhuǎn)換 97
- ZEMAX與MATLAB動態(tài)數(shù)據(jù)交換及其應用 314
- 無線通信空間調(diào)制的基本原理 200
- 利用MATLAB進行天線陣列方向圖綜合 558
- FPGA圖像處理—ISP算法BLC知識詳解 475
- 虛擬驗證輔助工具助力抗震建筑物設(shè)計 231
- 基于Simulink的迷你無人機飛行控制系統(tǒng)設(shè)計 142