㈠ 直接用神經網路工具箱構建bp神經網路,希望能給個例子說明,有註解最好,本人matlab新手,謝謝
BP(Back Propagation)神經網路是1986年由Rumelhart和McCelland為首的科學家小組提出,是一種按誤差逆傳播演算法訓練的多層專前饋網路,是目前應用屬最廣泛的神經網路模型之一。BP網路能學習和存貯大量的輸入-輸出模式映射關系,而無需事前揭示描述這種映射關系的數學方程。它的學習規則是使用最速下降法,通過反向傳播來不斷調整網路的權值和閾值,使網路的誤差平方和最小。BP神經網路模型拓撲結構包括輸入層(input)、隱層(hidden layer)和輸出層(output layer)。
附件就是利用神經網路工具箱構建BP神經網路進行預測的實例。如果要用可視化工具,可以在命令窗口輸入nntool.
㈡ 如何用MATLAB神經網路工具箱創建BP神經網路模型
1. 常用的前饋型BP網路的轉移函數有logsig,tansig,有時也會用到線性函數purelin。當網路的最後一層採用曲線函數時,輸出被限制在一個很小的范圍內,如果採用線性函數則輸出可為任意值。以上三個函數是BP網路中最常用到的函數,但是如果需要的話你也可以創建其他可微的轉移函數。
2. 在BP網路中,轉移函數可求導是非常重要的,tansig、logsig和purelin都有對應的導函數dtansig、dlogsig和dpurelin。為了得到更多轉移函數的導函數,可以帶字元"deriv"的轉移函數:tansig('deriv')
㈢ 用MATLAB建立bp神經網路模型,求高手,在線等
Matlab神經網路工具箱提供了一系列用於建立和訓練bp神經網路模型的函數命念友令,很仔擾槐難一時講全。下面僅以一個例子列舉部分函數的部分用法。更多的函數和用法請仔細查閱Neural Network Toolbox的幫助文檔。
例子:利用bp神經網路模型建立z=sin(x+y)的模型並檢驗效果
%第1步。隨機生成200個采樣點用於訓練
x=unifrnd(-5,5,1,200);
y=unifrnd(-5,5,1,200);
z=sin(x+y);
%第2步。建立神經網路模型。其中參數一是輸入數據的范圍,參數二是各層神經李櫻元數量,參數三是各層傳遞函數類型。
N=newff([-5 5;-5 5],[5,5,1],{'tansig','tansig','purelin'});
%第3步。訓練。這里用批訓練函數train。也可用adapt函數進行增長訓練。
N=train(N,[x;y],z);
%第4步。檢驗訓練成果。
[X,Y]=meshgrid(linspace(-5,5));
Z=sim(N,[X(:),Y(:)]');
figure
mesh(X,Y,reshape(Z,100,100));
hold on;
plot3(x,y,z,'.')
㈣ matlab bp神經網路工具箱怎麼用
%% 訓練集/測試集產來生
% 訓練源集——用於訓練網路
P_train = ;%輸入集
T_train = ;%輸出集
% 測試集——用於測試或者使用。
P_test = ;%輸入
T_test ;
N = size(P_test,2);
%% BP神經網路創建、訓練及模擬測試
% 創建網路
net = newff(P_train,T_train,9);
% 設置訓練參數
net.trainParam.epochs = 1000;
net.trainParam.goal = 1e-3;
net.trainParam.lr = 0.01;
% 訓練網路
net = train(net,P_train,T_train);
% 模擬測試、使用。
T_test = sim(net,P_test);%得到結果。
㈤ 如何用MATLAB的神經網路工具箱實現三層BP網路
使用神經網路工具箱可以非常簡便地實現網路建立和訓練,實例代碼如下:
%%BP演算法
functionOut=bpnet(p,t,p_test)
%p,t為樣本需要提前組織好
globalS1
net=newff(minmax(p),[S1,8],{'tansig','purelin'},'trainlm');%trainlm訓練函數最有效
%net=newff(P,T,31,{'tansig','purelin'},'trainlm');%新版用法
net.trainParam.epochs=1000;
net.trainParam.goal=0.00001;
net.trainParam.lr=0.01;
net.trainParam.showWindow=false;%阻止訓練窗口的彈出
net.trainParam.showCommandLine=false;%阻止訓練窗口的彈出
net=train(net,p,t);
Out=sim(net,p_test);
end
上面的代碼不完整,完整的帶訓練樣本數據的程序見附件。