導航:首頁 > 五金知識 > bp工具箱函數

bp工具箱函數

發布時間:2023-01-15 06:01:04

⑴ 怎麼用mtlab優化工具箱求目標函數為BP神經網路訓練結果的極值

需要聲明全局變數。分別在兩段程序的開頭加上

globalnet

不然無法在函數中調用net.


如果你要多於一個函數共用一個簡單的變數,簡單的處理方法就是把這個變數在所有函數中定義為global全局變數。在命令行做同樣的事情,如果你要工作空間訪問上述變數。這個全局變數的定義必須出現在變數被應用於一個函數之前。雖然不是要求,但全局變數也最好以大寫字母開頭,這樣可以同其他變數區別出來。舉個例子,做一個以falling.m命名的M-文件。

function h = falling(t)
global GRAVITY
h = 1/2*GRAVITY*t.^2;

然後交互地輸入語句

global GRAVITY
GRAVITY = 32;
y = falling((0:.1:5)');

這兩個變數在函數中表示同一個內容。之後你可以交互地修改GRVITY並獲得新的解法,而不用再編輯文檔。

注意:1 全局變數列表中各個變數名不能用逗號分隔。 如: global a b c
2 全局變數使用前必須再matlab工作空間中申明,如果再具體得函數中用則要在函數前面申明,否則在該函數中即使用到了該變數,也會被當成局部變數使用。

⑵ BP神經網路matlab工具箱中的激勵函數(傳遞函數),訓練函數,學習函數

激勵函數用於神經元由輸入計算輸出的,而訓練函數和學習函數是基於誤差,內來修改權值和閾容值的,再就完成了一次訓練,然後繼續迭代,知道達到迭代次數或滿足精度。
然而,學習函數和訓練函數的功能貌似很相近,至於具體區別,正在糾結著我呢

⑶ 用MATLAB中神經網路工具箱固有函數建立的BP網路,訓練精度始終達不到,而且誤差也大,該如何解決

除了樓上的方法,還可以修改下神經網路的初始權值,這方面的方法很多,可以改變下初始參數的取值范圍,或者用遺傳演算法搜索下。另外,改變神經網路的訓練函數是十分有效的,比如trainscg什麼的,還有好幾個記不得了,自己找找看!

⑷ 如何用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

⑸ BP神經網路中的訓練函數如何選取

神經網路不同的網路有這不同的訓練函數,BP神經網路有兩種訓練函數,trainbp(),利用BP演算法訓練前向神經網路。trainbpx(),利用快速BP演算法訓練前向神經網路,即採用了動量或自適應學習,可減少訓練時間,tansig函數是神經元的傳遞函數,與訓練函數無關,在trainbp()函數中含有要訓練神經元的函數。

⑹ 你好 我在做BP神經網路的一個課程設計 想請教你一些問題

Matlab 中有的神經網路BP的工具箱的,就一個函數,你只要設置一下參數,像閥值等、初始權值。

⑺ 請大師指點:BP網路工具箱中的newff()中的參數如何設置

分類: 電腦/網路 >> 互聯網
問題描述:

threshold=[0 1;0 1;0 1;0 1]';

=newff(threshold,[9,4],{'tansig','logsig'},'trainlm');

.trainParam.epochs=500;

.trainParam.goal=0.01;

LP.lr=0.1;

=train(,P,T);

P_test=[0.3277 0.4745 1.0000 0.2854];

out=sim(,P_test);

M=[0.1709 0.4114 0.7783 0.3101];

plot(1:4,M-out)

上面第二行的newff(threshold,[9,4],{'tansig','logsig'},'trainlm')

中[9,4]這兩個數據是怎麼確定的??

還有學習速度LP.lr=0.1這個參數是如何選擇的?

懇請大師指點一二,感激不盡~!

解析:

threshold是一個限定BP網路輸出的范圍

在它規定的范圍內為有效(當無效值太多的時候會early stop)

[9,4]代表輸入輸出的神經元數目

學習速度關繫到誤差梯度的調整,由於誤差梯度是由誤差對權值的求導得出的,我們加上一個學習速度的系數可以加快或減慢權值調整的速度.一般在0.1~0.8之間.當然也可以用可變學習速率的訓練函數進行,這樣學習速率可以在開始的時候大一些,而後減小,優化學習過程.

⑻ matlabBP神經網路工具箱,可以調整隱含層節點數嘛

Matlab神經網路工具箱幾乎包含了現有神經網路的最新成果,神經網路工具箱模型包括感知回器、線性網路、答BP網路、徑向基函數網路、競爭型神經網路、自組織網路和學習向量量化網路、反饋網路BP神經網路具有很強的映射能力,主要用於模式識別分類、函數逼近、函數壓縮等。下面通過實例來說明BP網路在函數逼近方面的應用需要逼近的函數是f(x)=1+sin(k*pi/2*x),其中,選擇k=2進行模擬,設置隱藏層神經元數目為n,n可以改變,便於後面觀察隱藏層節點與函數逼近能力的關系。

⑼ bp神經網路 matlab 工具箱怎麼調出來

有神經網路的工具箱,bp是配出來的!

⑽ matlab中bp神經網路的工具箱怎麼用,不要matlab程序,就工具箱怎麼實現問題的解決

matlab中神經網路的工具箱:輸入nntool,就會彈出一個對話框,然後你就可以根據彈出框的指示來操作。

閱讀全文

與bp工具箱函數相關的資料

熱點內容
凱迪拉克xts怎麼用機械鑰匙打火 瀏覽:865
通用pe工具箱使用方法 瀏覽:468
美國賣攝影器材哪裡好 瀏覽:768
健身器材杠鈴怎麼組裝 瀏覽:117
怎麼換水稻收割機地輪軸承 瀏覽:417
電風扇軸承鬆了怎麼緊 瀏覽:968
如何做軸承外圈 瀏覽:634
一加全機型工具箱怎麼用 瀏覽:611
軸承油封壞了會出現什麼症狀 瀏覽:824
實驗室溴化氫製取裝置 瀏覽:253
對照實驗裝置 瀏覽:659
有閥門的N95口罩怎麼用 瀏覽:700
超聲波應用於什麼地方 瀏覽:979
防護閥門和閘閥怎麼選擇 瀏覽:297
汽車組合儀表用什麼控制 瀏覽:157
自動門的電磁感應裝置多少錢 瀏覽:381
圓閥門怎麼換閥芯 瀏覽:488
一次性杯機器設備多少錢 瀏覽:425
實驗儀器哪些需要定做 瀏覽:236
綿陽市高新區五金機電城地址 瀏覽:703