㈠ 如何用MATLAB的神經網路工具箱實現三層BP網路
這是一個來自<神經網路之家>nnetinfo的例子,在matlab2012b運行後的確可以,因為網路知道的文本寬度不夠,注釋擠到第二行了,有些亂,樓主注意區分哪些是代碼哪些是注釋,
x1 =
[-3,-2.7,-2.4,-2.1,-1.8,-1.5,-1.2,-0.9,-0.6,-0.3,0,0.3,0.6,0.9,1.2,1.5,1.8]; %x1:x1 = -3:0.3:2;
x2 =
[-2,-1.8,-1.6,-1.4,-1.2,-1,-0.8,-0.6,-0.4,-0.2,-2.2204,0.2,0.4,0.6,0.8,1,1.2];%x2:x2 = -2:0.2:1.2;
y = [0.6589,0.2206,-0.1635,-0.4712,-0.6858,-0.7975,-0.8040,...
-0.7113,-0.5326,-0.2875
,0,0.3035,0.5966,0.8553,1.0600,1.1975,1.2618]; %y:
y = sin(x1)+0.2*x2.*x2;
inputData = [x1;x2]; %將x1,x2作為輸入數據
outputData = y; %將y作為輸出數據
%使用用輸入輸出數據(inputData、outputData)建立網路,
%隱節點個數設為3.其中隱層、輸出層的傳遞函數分別為tansig和purelin,使用trainlm方法訓練。
net = newff(inputData,outputData,3,{'tansig','purelin'},'trainlm');
%設置一些常用參數
net.trainparam.goal = 0.0001;
%訓練目標:均方誤差低於0.0001
net.trainparam.show = 400; %每訓練400次展示一次結果
net.trainparam.epochs = 15000;
%最大訓練次數:15000.
[net,tr] = train(net,inputData,outputData);%調用matlab神經網路工具箱自帶的train函數訓練網路
simout = sim(net,inputData);
%調用matlab神經網路工具箱自帶的sim函數得到網路的預測值
figure; %新建畫圖窗口窗口
t=1:length(simout);
plot(t,y,t,simout,'r')%畫圖,對比原來的y和網路預測的y
㈡ matlab bp神經網路工具箱和程序的區別
沒區別,那些工具箱就是為了應用方便,原理還是編程
㈢ 用matlab的nntool工具箱訓練好的一個BP神經網路,下一步要怎麼做才能進行數據輸入得到相應的輸出結果
a=sim(net,x)
說實話我也菜鳥級別,你看一下最後這個函數能不能用:
其中「a」自己隨便可以設的,其實就是個代表返回值
「net」換成你訓練好的函數,
「x」換成你的輸入矩陣
㈣ matlab中bp神經網路的工具箱怎麼用,不要matlab程序,就工具箱怎麼實現問題的解決
matlab中神經網路的工具箱:輸入nntool,就會彈出一個對話框,然後你就可以根據彈出框的指示來操作。
㈤ bp神經網路matlab工具箱建模結果
你用的是matlab的神經網路工具箱吧。那是因為權值和閾值每次都是隨機初始化的專,所以結果屬就會不一樣,
你可以把隨機種子固定,即在代碼前面加上setdemorandstream(pi); 這樣每次訓練出來的結果都是一樣的了。
看來樓主是剛開始學習神經網路的,推薦一些資料給樓主:
神經網路之家 (專講神經網路的網站,有視頻下載)
matlab中文論壇的神經網路專區
數學中國的神經網路專區
較好的書:
MATLAB神經網路原理與實例精解
㈥ BP神經網路matlab工具箱中的激勵函數(傳遞函數),訓練函數,學習函數
激勵函數用於神經元由輸入計算輸出的,而訓練函數和學習函數是基於誤差,內來修改權值和閾容值的,再就完成了一次訓練,然後繼續迭代,知道達到迭代次數或滿足精度。
然而,學習函數和訓練函數的功能貌似很相近,至於具體區別,正在糾結著我呢
㈦ matlabBP神經網路工具箱,可以調整隱含層節點數嘛
Matlab神經網路工具箱幾乎包含了現有神經網路的最新成果,神經網路工具箱模型包括感知回器、線性網路、答BP網路、徑向基函數網路、競爭型神經網路、自組織網路和學習向量量化網路、反饋網路BP神經網路具有很強的映射能力,主要用於模式識別分類、函數逼近、函數壓縮等。下面通過實例來說明BP網路在函數逼近方面的應用需要逼近的函數是f(x)=1+sin(k*pi/2*x),其中,選擇k=2進行模擬,設置隱藏層神經元數目為n,n可以改變,便於後面觀察隱藏層節點與函數逼近能力的關系。
㈧ 關於Matlab BP神經網路工具箱nntool的數據輸入問題。
這是可以的,但是,要把兩組數據合到一個變數中,如:x=[trainx1;trainx2];作為一個輸入矩陣。
㈨ 直接用神經網路工具箱構建bp神經網路,希望能給個例子說明,有註解最好,本人matlab新手,謝謝
BP(Back Propagation)神經網路是1986年由Rumelhart和McCelland為首的科學家小組提出,是一種按誤差逆傳播演算法訓練的多層專前饋網路,是目前應用屬最廣泛的神經網路模型之一。BP網路能學習和存貯大量的輸入-輸出模式映射關系,而無需事前揭示描述這種映射關系的數學方程。它的學習規則是使用最速下降法,通過反向傳播來不斷調整網路的權值和閾值,使網路的誤差平方和最小。BP神經網路模型拓撲結構包括輸入層(input)、隱層(hidden layer)和輸出層(output layer)。
附件就是利用神經網路工具箱構建BP神經網路進行預測的實例。如果要用可視化工具,可以在命令窗口輸入nntool.
㈩ 用matlab的神經網路工具箱(nntool命令打開的窗口化工具)做bp神經網路時怎麼生成誤差曲
訓練結束後,訓練窗口裡有一個plot區域,點擊performance按鈕,就能彈出誤差曲線下降圖。內
BP(Back Propagation)神經網路是86年由容Rumelhart和McCelland為首的科學家小組提出,是一種按誤差逆傳播演算法訓練的多層前饋網路,是目前應用最廣泛的神經網路模型之一。BP網路能學習和存貯大量的輸入-輸出模式映射關系,而無需事前揭示描述這種映射關系的數學方程。它的學習規則是使用最速下降法,通過反向傳播來不斷調整網路的權值和閾值,使網路的誤差平方和最小。BP神經網路模型拓撲結構包括輸入層(input)、隱層(hidden layer)和輸出層(output layer)。