MATLAB中模糊神經(jīng)網(wǎng)絡工具箱的使用
前些天把玩了一下MATLAB中神經(jīng)網(wǎng)絡工具箱的使用,忽有“捫參歷井仰脅息”之感。別的倒是沒什么,只是神經(jīng)網(wǎng)絡的數(shù)據(jù)組織結(jié)構(gòu)有些“怪異”,要是不小心就會導致工具箱報錯。以下便是神經(jīng)網(wǎng)絡工具箱的正確打開姿勢,謹供諸君參考:
先貼一個使用批處理命令調(diào)用神經(jīng)網(wǎng)絡工具箱的方法:
P = [0.1515 0.1501 0.1509 0.1504 0.1504 0.1500
0.1515 0.1501 0.1509 0.1504 0.1504 0.1500
0.1515 0.1501 0.1500 0.1504 0.1504 0.1500
0.1515 0.1500 0.1509 0.1504 0.1504 0.1500
0.1515 0.1500 0.1509 0.1504 0.1504 0.1500
0.1515 0.1500 0.1509 0.1504 0.1504 0.1500
0.9684 0.2792 0.877 0.7426 0.7228 0.2272
0.9838 0.2941 0.9181 0.7977 0.7702 0.2452
0.9922 0.3101 0.9475 0.8445 0.8227 0.2665
0.9953 0.3058 0.9625 0.8708 0.8637 0.2624
0.9982 0.3242 0.9797 0.9089 0.9001 0.3008
0.9995 0.3469 0.9917 0.9314 0.9282 0.3678
0.9998 0.3565 0.9948 0.9493 0.9525 0.4500];
T= [0.1521
0.6949
0.7064
0.7083
0.7560
0.7807
0.8182
0.8533
0.8677
0.8459
0.8910
0.9269
0.9496];
P=P‘;T=T’;
ff=newff(P,T,13);
ff.trainParam.epochs = 15000;
ff = train(ff,P,T);
Y1 = sim(ff,P);
cf=newcf(P,T,13);
cf.trainParam.epochs = 15000;
cf = train(cf,P,T);
Y2 = sim(cf,P);
plot(P,T,‘o-’);
hold on;
plot(P,Y1,‘^m-’);
plot(P,Y2,‘*-k’);
TItle(‘newff & newcf’)
legend(‘原始數(shù)據(jù)’,‘newff結(jié)果’,‘newcf結(jié)果’,0);
上面這個方法要注意P和T應該要先進行轉(zhuǎn)置,即神經(jīng)網(wǎng)絡訓練樣本是矩陣的每一個列。
首先要做的自然是安裝MATLAB,這個步驟我就不過多描述了,請諸君自行參悟。打開后在命令行輸入:anfisedit ,然后就會出現(xiàn)如下的界面:
首先點擊第一個紅框中的“Load Data”按鈕來導入數(shù)據(jù),可以從文件導入也可以從工作空間導入。這里要說明的是導入數(shù)據(jù)的格式,它必須滿足如下的要求:數(shù)據(jù)前面部分是系統(tǒng)輸入,后面部分是系統(tǒng)輸出。假設我們的系統(tǒng)是3輸入1輸出,那么數(shù)據(jù)就應該是:[x1,x2,x3,y]。
先導入系統(tǒng)所需的訓練數(shù)據(jù)(第一個紅框選的是數(shù)據(jù)類型為:Training)。導入數(shù)據(jù)后,工具箱會在相應位置打點,情況如下:
單擊“Edit”菜單下的“FIS ProperTIes”選項,出現(xiàn)如下的界面: