神經(jīng)網(wǎng)絡(luò)仿真_第1頁
神經(jīng)網(wǎng)絡(luò)仿真_第2頁
神經(jīng)網(wǎng)絡(luò)仿真_第3頁
神經(jīng)網(wǎng)絡(luò)仿真_第4頁
神經(jīng)網(wǎng)絡(luò)仿真_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、3.6 MATLAB3.6 MATLAB神經(jīng)網(wǎng)絡(luò)工具箱的使用神經(jīng)網(wǎng)絡(luò)工具箱的使用2、利用、利用MATLAB提供的提供的神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)工具箱函數(shù)工具箱函數(shù)1、利用神經(jīng)網(wǎng)絡(luò)工具箱的圖形界面、利用神經(jīng)網(wǎng)絡(luò)工具箱的圖形界面1 1、利用神經(jīng)網(wǎng)絡(luò)工具箱的圖形界面、利用神經(jīng)網(wǎng)絡(luò)工具箱的圖形界面在在MATLAB命令窗口輸入命令窗口輸入nntool,即可打開網(wǎng)絡(luò),即可打開網(wǎng)絡(luò)/數(shù)據(jù)管理器窗口。數(shù)據(jù)管理器窗口。 窗口有窗口有7個顯示區(qū)域和個顯示區(qū)域和2個按鈕區(qū)個按鈕區(qū) (1)Inputs區(qū)域區(qū)域 顯示輸入向量變量名顯示輸入向量變量名(2)Targets區(qū)域區(qū)域 顯示目標(biāo)向量變量名顯示目標(biāo)向量變量名(4)Netw

2、orks 區(qū)域區(qū)域 顯示用戶定義的顯示用戶定義的 網(wǎng)絡(luò)名網(wǎng)絡(luò)名(3)Input Delay States 區(qū)域區(qū)域 顯示輸入延遲參數(shù)變量名顯示輸入延遲參數(shù)變量名(5)Outputs區(qū)域區(qū)域 顯示輸出向量變量名顯示輸出向量變量名(6)Errors區(qū)域區(qū)域 顯示網(wǎng)絡(luò)訓(xùn)練誤差變量名顯示網(wǎng)絡(luò)訓(xùn)練誤差變量名(7)Layer Delay States 區(qū)域區(qū)域 顯示網(wǎng)絡(luò)層延遲參數(shù)變量名顯示網(wǎng)絡(luò)層延遲參數(shù)變量名7個顯示區(qū)域個顯示區(qū)域2個按鈕區(qū)個按鈕區(qū)(1)Networks and Data 按鈕(包含按鈕(包含7個按鈕)個按鈕)(2)Networks only按鈕按鈕-4 -3 -2 -1 0 121P1P

3、2例例1:利用前向傳播神經(jīng)網(wǎng)絡(luò)實現(xiàn)對下圖進(jìn)行分類。:利用前向傳播神經(jīng)網(wǎng)絡(luò)實現(xiàn)對下圖進(jìn)行分類。網(wǎng)絡(luò)結(jié)構(gòu)網(wǎng)絡(luò)結(jié)構(gòu): 2個輸入,個輸入, 5個隱含層神經(jīng)元個隱含層神經(jīng)元(第一層第一層) , 1個輸出神經(jīng)元個輸出神經(jīng)元(第二層第二層)激活函數(shù):對數(shù)函數(shù)激活函數(shù):對數(shù)函數(shù)logsig訓(xùn)練樣本集為:訓(xùn)練樣本集為:11242110p0.20.80.80.2t 1、創(chuàng)建神經(jīng)網(wǎng)絡(luò)、創(chuàng)建神經(jīng)網(wǎng)絡(luò) 輸入網(wǎng)絡(luò)名:輸入網(wǎng)絡(luò)名:fenlei選擇網(wǎng)絡(luò)類型:選擇網(wǎng)絡(luò)類型:Feed-forward backprop(前向網(wǎng)絡(luò))前向網(wǎng)絡(luò))輸入向量的取值范圍:輸入向量的取值范圍:-4 1;0 2選擇訓(xùn)練函數(shù)選擇訓(xùn)練函數(shù):TRAIN

4、LM選擇學(xué)習(xí)函數(shù):選擇學(xué)習(xí)函數(shù):LEARNGDM選擇誤差性能函數(shù)選擇誤差性能函數(shù):MSE(均方差)(均方差)確定網(wǎng)絡(luò)層數(shù):確定網(wǎng)絡(luò)層數(shù):2確定各網(wǎng)絡(luò)層的屬性:確定各網(wǎng)絡(luò)層的屬性:Layer1: 神經(jīng)元數(shù):神經(jīng)元數(shù):5 傳輸函數(shù):傳輸函數(shù): logsigLayer2:神經(jīng)元數(shù):神經(jīng)元數(shù):1傳輸函數(shù):傳輸函數(shù): logsig單擊單擊“View”查看網(wǎng)絡(luò)結(jié)構(gòu)查看網(wǎng)絡(luò)結(jié)構(gòu)單擊單擊“Create”按鈕,關(guān)閉窗口,回到數(shù)據(jù)管按鈕,關(guān)閉窗口,回到數(shù)據(jù)管理器窗口,可看見網(wǎng)絡(luò)名理器窗口,可看見網(wǎng)絡(luò)名“fenlei”2、訓(xùn)練網(wǎng)絡(luò)、訓(xùn)練網(wǎng)絡(luò)確定訓(xùn)練樣本的輸入向量,確定訓(xùn)練樣本的輸入向量, 單擊單擊New Data

5、按鈕按鈕確定訓(xùn)練樣本的目標(biāo)向量確定訓(xùn)練樣本的目標(biāo)向量 t=0.2 0.8 0.8 0.2訓(xùn)練網(wǎng)絡(luò)訓(xùn)練網(wǎng)絡(luò)在數(shù)據(jù)管理器窗口,選中網(wǎng)絡(luò)名,單擊在數(shù)據(jù)管理器窗口,選中網(wǎng)絡(luò)名,單擊“Train”,彈出:彈出:單擊單擊“Train network”,開始訓(xùn)練開始訓(xùn)練訓(xùn)練完成后,在數(shù)據(jù)管理器窗口,選中變量名,可以訓(xùn)練完成后,在數(shù)據(jù)管理器窗口,選中變量名,可以查看變量的具體數(shù)據(jù)查看變量的具體數(shù)據(jù)3、網(wǎng)絡(luò)仿真、網(wǎng)絡(luò)仿真在數(shù)據(jù)管理器窗口,選中網(wǎng)絡(luò)名,單擊在數(shù)據(jù)管理器窗口,選中網(wǎng)絡(luò)名,單擊 “Simulate”,按下圖選擇后,單擊按下圖選擇后,單擊 “Simulate Network”在數(shù)據(jù)在數(shù)據(jù)管理器管理器窗口

6、,窗口,選中變選中變量量a,單擊單擊“View”查看仿查看仿真結(jié)果真結(jié)果題目題目1:利用多層前向傳播神經(jīng)網(wǎng)絡(luò)來逼近非線性函數(shù)利用多層前向傳播神經(jīng)網(wǎng)絡(luò)來逼近非線性函數(shù)y=0.5(1+cosx) 網(wǎng)絡(luò)結(jié)構(gòu)網(wǎng)絡(luò)結(jié)構(gòu):1個輸入神經(jīng)元,個輸入神經(jīng)元,1個輸出神經(jīng)元、個輸出神經(jīng)元、 6個隱含層神經(jīng)元。個隱含層神經(jīng)元。激活函數(shù):激活函數(shù):雙曲正切函數(shù)雙曲正切函數(shù)tansig樣本樣本x:20點,點,x=2i20,i=0,1,19x=2*pi*i/20;i=0:19;%定義目標(biāo)定義目標(biāo)t=0.5*(1+cos(x);%繪制此函數(shù)曲線繪制此函數(shù)曲線plot(x,t,-); xlabel(time(s); ylab

7、el(非線線函數(shù)非線線函數(shù)); title(要逼近的非線線函數(shù)要逼近的非線線函數(shù));2 2、利用、利用MATLABMATLAB提供的提供的神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)工具箱函數(shù)工具箱函數(shù)%建立神經(jīng)網(wǎng)絡(luò)建立神經(jīng)網(wǎng)絡(luò) n=6;net=newff(minmax(x),n 1,tansig,tansig,trainlm); y1=sim(net,x);figure; plot(x,t,-,x,y1,-);xlabel(time(s);ylabel(仿真輸出仿真輸出- 原函數(shù)原函數(shù)-); title(未訓(xùn)練網(wǎng)絡(luò)的輸出結(jié)果未訓(xùn)練網(wǎng)絡(luò)的輸出結(jié)果);%用理想樣本訓(xùn)練神經(jīng)網(wǎng)絡(luò)用理想樣本訓(xùn)練神經(jīng)網(wǎng)絡(luò)net.trainPara

8、m.goal=0.001; %訓(xùn)練目標(biāo)誤差訓(xùn)練目標(biāo)誤差net.trainParam.epochs=2000; %訓(xùn)練時間訓(xùn)練時間net1,tr=train(net,x,t); %訓(xùn)練神經(jīng)網(wǎng)絡(luò)訓(xùn)練神經(jīng)網(wǎng)絡(luò)%測試測試 y2=sim(net1,x); figure; plot(x,t,-,x,y1,-,x,y2,-);xlabel(time(s); ylabel(仿真輸出仿真輸出); title(訓(xùn)練后網(wǎng)絡(luò)的輸出結(jié)果訓(xùn)練后網(wǎng)絡(luò)的輸出結(jié)果);題目題目2:編寫一個利用前向傳播神經(jīng)網(wǎng)絡(luò)進(jìn)行字符識編寫一個利用前向傳播神經(jīng)網(wǎng)絡(luò)進(jìn)行字符識別的程序。假設(shè)神經(jīng)網(wǎng)絡(luò)為具有一個隱含層的別的程序。假設(shè)神經(jīng)網(wǎng)絡(luò)為具有一個隱

9、含層的BP網(wǎng)絡(luò),網(wǎng)絡(luò),需要識別的字符有需要識別的字符有A、I、O,其輸入為,其輸入為44個象素的個象素的掃描輸入。掃描輸入。目標(biāo)輸出分別為目標(biāo)輸出分別為A=(1,0,0),),I=(0,1,1),),O=(0,0,1),網(wǎng)絡(luò)為),網(wǎng)絡(luò)為16個輸入節(jié)點、個輸入節(jié)點、3個輸出節(jié)點、個輸出節(jié)點、9個隱含層節(jié)點。利用所編程序完成訓(xùn)練后,在輸入樣個隱含層節(jié)點。利用所編程序完成訓(xùn)練后,在輸入樣本本X=(1,1,1,1,1,-1,-1,1,1,1,1,1,1,1,-1,1)時,求網(wǎng)絡(luò)輸出值。)時,求網(wǎng)絡(luò)輸出值。%定義用定義用4*4個象素表示的個象素表示的A,I,OA=1 1 1 1 1 0 0 1 1 1

10、1 1 1 0 0 1;I=0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0;O=1 1 1 1 1 0 0 1 1 0 0 1 1 1 1 1;%將每個字母按列表示將每個字母按列表示X=A I O;%定義目標(biāo)矩陣定義目標(biāo)矩陣TA=1;0;0;TI=0;1;1;TO=0;0;1;T=TA TI TO;%建立網(wǎng)絡(luò)建立網(wǎng)絡(luò)R,N1=size(X);S2,N1=size(T);S1=9;net=newff(minmax(X),S1 S2,logsig,logsig,traingdx); %生成新的前向神生成新的前向神經(jīng)網(wǎng)絡(luò)經(jīng)網(wǎng)絡(luò)輸出層輸出層節(jié)點節(jié)點3隱含層隱含層節(jié)點節(jié)點9輸入節(jié)輸入節(jié)點

11、點16組數(shù)組數(shù)3訓(xùn)練算訓(xùn)練算法法w=net.LW2,1;b1=net.b1;b2=net.b2;y1=sim(net,X); %用理想樣本訓(xùn)練神經(jīng)網(wǎng)絡(luò)用理想樣本訓(xùn)練神經(jīng)網(wǎng)絡(luò) net.performFcn=sse; %平方和誤差函數(shù)平方和誤差函數(shù) net.trainParam.goal=0.00001; %訓(xùn)練目標(biāo)誤差訓(xùn)練目標(biāo)誤差net.trainParam.show=20; %計算步長計算步長net.trainParam.epochs=5000; %訓(xùn)練時間訓(xùn)練時間net.trainParam.mc=0.95 %動量參數(shù)動量參數(shù)net,tr=train(net,X,T); %訓(xùn)練神經(jīng)網(wǎng)絡(luò)訓(xùn)練神

12、經(jīng)網(wǎng)絡(luò) %利用不含和含有噪聲的樣本訓(xùn)練神經(jīng)網(wǎng)絡(luò)利用不含和含有噪聲的樣本訓(xùn)練神經(jīng)網(wǎng)絡(luò) net.trainParam.goal=0.6; %訓(xùn)練目標(biāo)誤差訓(xùn)練目標(biāo)誤差 net.trainParam.epochs=500; %訓(xùn)練時間訓(xùn)練時間 net1=net; T1=T T T T; for i=1:10 X1=X X (X+randn(R,N1)*0.1) (X+randn(R,N1)*0.2); net1,tr=train(net1,X1,T1); end y3=sim(net1,X1); %再用理想樣本訓(xùn)練神經(jīng)網(wǎng)絡(luò)再用理想樣本訓(xùn)練神經(jīng)網(wǎng)絡(luò) net1,tr=train(net1,X,T); w=net

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論