matlab神經網絡工具箱創建神經網絡

http://blog.sina.com.cn/s/blog_8684880b0100vxtv.html


爲了看懂師兄的文章中使用的方法,研究了一下神經網絡
昨天花了一天的時間查怎麼寫程序,但是費了半天勁,不能運行,百度知道里倒是有一個,可以運行的,先貼着做標本

% 生成訓練樣本集
clear all;
clc;
P=[110 0.807 240 0.2 15 1 18 2 1.5;
110 2.865 240 0.1 15 2 12 1 2;
110 2.59 240 0.1 12 4 24 1 1.5;
220 0.6 240 0.3 12 3 18 2 1;
220 3 240 0.3 25 3 21 1 1.5;
110 1.562 240 0.3 15 3 18 1 1.5;
110 0.547 240 0.3 15 1 9 2 1.5];
0 1.318 300 0.1 15 2 18 1 2];
T=[54248 162787 168380 314797;
28614 63958 69637 82898;
86002 402710 644415 328084;
230802 445102 362823 335913;
60257 127892 76753 73541;
34615 93532 80762 110049;
56783 172907 164548 144040];
@907 117437 120368 130179];
m=max(max(P));
n=max(max(T));
P=P'/m;
T=T'/n;
%-------------------------------------------------------------------------%
pr(1:9,1)=0; %輸入矢量的取值範圍矩陣
pr(1:9,2)=1;
bpnet=newff(pr,[12 4],{'logsig', 'logsig'}, 'traingdx', 'learngdm');
%建立BP神經網絡, 12個隱層神經元,4個輸出神經元
%tranferFcn屬性 'logsig' 隱層採用Sigmoid傳輸函數
%tranferFcn屬性 'logsig' 輸出層採用Sigmoid傳輸函數
%trainFcn屬性 'traingdx' 自適應調整學習速率附加動量因子梯度下降反向傳播算法訓練函數
%learn屬性 'learngdm' 附加動量因子的梯度下降學習函數 
net.trainParam.epochs=1000;%允許最大訓練步數2000步
net.trainParam.goal=0.001; %訓練目標最小誤差0.001
net.trainParam.show=10; %每間隔100步顯示一次訓練結果
net.trainParam.lr=0.05; %學習速率0.05
bpnet=train(bpnet,P,T);
%-------------------------------------------------------------------------
p=[110 1.318 300 0.1 15 2 18 1 2];
p=p'/m;
r=sim(bpnet,p);
R=r'*n;
display(R);

運行的結果是出現這樣的界面
matlab神經網絡工具箱創建神經網絡

點擊performance,training state,以及regression分別出現下面的界面
matlab神經網絡工具箱創建神經網絡

matlab神經網絡工具箱創建神經網絡

matlab神經網絡工具箱創建神經網絡

再搜索,發現可以通過神經網絡工具箱來創建神經網絡,比較友好的GUI界面,在輸入命令裏面輸入nntool,就可以開始了。
matlab神經網絡工具箱創建神經網絡
點擊import之後就出現下面的具體的設置神經網絡參數的對話界面,
這是輸入輸出數據的對話窗

首先是訓練數據的輸入
matlab神經網絡工具箱創建神經網絡
然後點擊new,創建一個新的神經網絡network1,並設置其輸入輸出數據,包括名稱,神經網絡的類型以及隱含層的層數和節點數,還有隱含層及輸出層的訓練函數等
matlab神經網絡工具箱創建神經網絡
點擊view,可以看到這是神經網絡的可視化直觀表達
matlab神經網絡工具箱創建神經網絡

創建好了一個network之後,點擊open,可以看到一個神經網絡訓練,優化等的對話框,選擇了輸入輸出數據後,點擊train,神經網絡開始訓練,如右下方的圖,可以顯示動態結果

matlab神經網絡工具箱創建神經網絡

下面三個圖形則是點擊performance,training state以及regression而出現的
matlab神經網絡工具箱創建神經網絡
下面就是simulate,輸入的數據是用來檢驗這個網絡的數據,output改一個名字,這樣就把輸出數據和誤差都存放起來了

matlab神經網絡工具箱創建神經網絡

在主界面上點擊export就能將得到的out結果輸入到matlab中並查看

matlab神經網絡工具箱創建神經網絡
下圖就是輸出的兩個outputs結果
matlab神經網絡工具箱創建神經網絡

 還在繼續挖掘,to be continue……

20111130

神經網絡工具箱 
  
版本7.0(R2010b) 
  
  
圖形用戶界面功能。 
    
nnstart - 神經網絡啓動GUI 
    
nctool - 神經網絡分類工具 
    
nftool - 神經網絡的擬合工具 
    
nntraintool - 神經網絡的訓練工具 
    
nprtool - 神經網絡模式識別工具 
    
ntstool - NFTool神經網絡時間序列的工具 
    
nntool - 神經網絡工具箱的圖形用戶界面。 
    
查看 - 查看一個神經網絡。 
  
  
網絡的建立功能。 
    
cascadeforwardnet - 串級,前饋神經網絡。 
    
competlayer - 競爭神經層。 
    
distdelaynet - 分佈時滯的神經網絡。 
    
elmannet - Elman神經網絡。 
    
feedforwardnet - 前饋神經網絡。 
    
fitnet - 函數擬合神經網絡。 
    
layrecnet - 分層遞歸神經網絡。 
    
linearlayer - 線性神經層。 
    
lvqnet - 學習矢量量化(LVQ)神經網絡。 
    
narnet - 非線性自結合的時間序列網絡。 
    
narxnet - 非線性自結合的時間序列與外部輸入網絡。 
    
newgrnn - 設計一個廣義迴歸神經網絡。 
    
newhop - 建立經常性的Hopfield網絡。 
    
newlind - 設計一個線性層。 
    
newpnn - 設計概率神經網絡。 
    
newrb - 徑向基網絡設計。 
    
newrbe - 設計一個確切的徑向基網絡。 
    
patternnet - 神經網絡模式識別。 
    
感知 - 感知。 
    
selforgmap - 自組織特徵映射。 
    
timedelaynet - 時滯神經網絡。 
  
  
利用網絡。 
    
網絡 - 創建一個自定義神經網絡。 
    
SIM卡 - 模擬一個神經網絡。 
    
初始化 - 初始化一個神經網絡。 
    
適應 - 允許一個神經網絡來適應。 
    
火車 - 火車的神經網絡。 
    
DISP鍵 - 顯示一個神經網絡的屬性。 
    
顯示 - 顯示的名稱和神經網絡屬性 
    
adddelay - 添加延遲神經網絡的反應。 
    
closeloop - 神經網絡的開放反饋轉換到關閉反饋迴路。 
    
formwb - 表格偏見和成單個向量的權重。 
    
getwb - 將它作爲一個單一向量中的所有網絡權值和偏差。 
    
noloop - 刪除神經網絡的開放和關閉反饋迴路。 
    
開環 - 轉換神經網絡反饋,打開封閉的反饋循環。 
    
removedelay - 刪除延遲神經網絡的反應。 
    
separatewb - 獨立的偏見和重量/偏置向量的權重。 
    
setwb - 將所有與單個矢量網絡權值和偏差。 
  
  
Simulink的支持。 
    
gensim - 生成Simulink模塊來模擬神經網絡。 
    
setsiminit - 集神經網絡的Simulink模塊的初始條件 
    
getsiminit - 獲取神經網絡Simulink模塊的初始條件 
    
神經元 - 神經網絡Simulink的模塊庫。 
  
  
培訓職能。 
    
trainb - 批具有重量與偏見學習規則的培訓。 
    
trainbfg - 的BFGS擬牛頓倒傳遞。 
    
trainbr - 貝葉斯規則的BP算法。 
    
trainbu - 與重量與偏見一批無監督學習規則的培訓。 
    
trainbuwb - 與體重無監督學習規則與偏見一批培訓。 
    
trainc - 循環順序重量/偏見的培訓。 
    
traincgb - 共軛鮑威爾比爾重新啓動梯度反向傳播。 
    
traincgf - 共軛弗萊徹-裏夫斯更新梯度反向傳播。 
    
traincgp - 共軛波拉克- Ribiere更新梯度反向傳播。 
    
traingd - 梯度下降反向傳播。 
    
traingda - 具有自適應LR的反向傳播梯度下降。 
    
traingdm - 與動量梯度下降。 
    
traingdx - 梯度下降瓦特/慣性與自適應LR的反向傳播。 
    
trainlm - 採用Levenberg -馬奎德倒傳遞。 
    
trainoss - 一步割線倒傳遞。 
    
trainr - 隨機重量/偏見的培訓。 
    
trainrp - RPROP反向傳播。 
    
trainru - 無監督隨機重量/偏見的培訓。 
    
火車 - 順序重量/偏見的培訓。 
    
trainscg - 規模化共軛梯度BP算法。 
  
  
繪圖功能。 
    
plotconfusion - 圖分類混淆矩陣。 
    
ploterrcorr - 誤差自相關時間序列圖。 
    
ploterrhist - 繪製誤差直方圖。 
    
plotfit - 繪圖功能適合。 
    
plotinerrcorr - 圖輸入錯誤的時間序列的互相關。 
    
plotperform - 小區網絡性能。 
    
plotregression - 線性迴歸情節。 
    
plotresponse - 動態網絡圖的時間序列響應。 
    
plotroc - 繪製受試者工作特徵。 
    
plotsomhits - 小區自組織圖來樣打。 
    
plotsomnc - 小區自組織映射鄰居的連接。 
    
plotsomnd - 小區自組織映射鄰居的距離。 
    
plotsomplanes - 小區自組織映射重量的飛機。 
    
plotsompos - 小區自組織映射重量立場。 
    
plotsomtop - 小區自組織映射的拓撲結構。 
    
plottrainstate - 情節訓練狀態值。 
    
plotwb - 圖寒春重量和偏差值圖。 
  
  
列出其他神經網絡實現的功能。 
    
nnadapt - 適應職能。 
    
nnderivative - 衍生功能。 
    
nndistance - 距離函數。 
    
nndivision - 除功能。 
    
nninitlayer - 初始化層功能。 
    
nninitnetwork - 初始化網絡功能。 
    
nninitweight - 初始化權函數。 
    
nnlearn - 學習功能。 
    
nnnetinput - 淨輸入功能。 
    
nnperformance - 性能的功能。 
    
nnprocess - 處理功能。 
    
nnsearch - 線搜索功能。 
    
nntopology - 拓撲結構的功能。 
    
nntransfer - 傳遞函數。 
    
nnweight - 重量的功能。 
  
  
示例,數據集和其他資源 
    
nndemos - 神經網絡工具箱的示威。 
    
nndatasets - 神經網絡工具箱的數據集。 
    
nntextdemos - 神經網絡設計教科書的示威。 
    
nntextbook - 神經網絡設計教科書的資訊。 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章