久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > EDA/PCB > 設計應用 > Matlab語言的Neural Network Toolbox 及其在同步中

Matlab語言的Neural Network Toolbox 及其在同步中

作者: 時間:2012-09-11 來源:網絡 收藏

子對象結構中包含了網絡單個對象的信息。神經元的每一層有相同的傳輸函數net.transferFcn和網絡輸入函數net.netInputFcn,對于創建感知機采用hardlim和netsum函數。如果神經元要有不同的傳輸函數,則將設計不同的層以滿足要求。參數net.Input-Weights和net.layerWeights描述了被應用的訓練函數以及它們的參數。

接下來敘述訓練函數、初始化函數和性能函數。

trainFcn和adaptFcn是2種不同的訓練方式,分別指批處理方式和增加方式或稱在線方式。通過設置trainFcn的參數,就可以告訴哪種運算法被使用;在運用循環順序增加方式時,多用trainc函數。ANN工具箱包含大約20個訓練函數。性能函數用來測定ANN完成規定任務時的性能。對于感知機,它的平均差錯性能測定用函數mae;對于線性衰退系統,它的均方根差錯性能測定用函數mae。initFcn函數用來初始化網絡的權重和偏置。神經網絡工具箱包含在nnet目錄中,鍵入help nnet可得到幫助主題。如果要將這些函數替換為工具箱里的其他函數或者是自己編寫的函數,只需把這些函數名配置新的參數即可,例如:

通過改變參數,可以改變上面提到的函數的默認行為。最經常用到的函數的參數就是:trainParam,格式:net.trainParam.epochs,用來設置運算的時間點的最大數目;格式:net.trainParam.show,用來設置性能測定間隔的時間點的數目。可以通過輸入幫助help獲得更多信息。

網絡的權重和偏置也被存儲在下面的結構體里面:

IW(i,j)部分是一個二維的元胞矩陣,存儲輸入j與網絡層i的連接的權重。LW(i,j)部分,用來存儲網絡層j和網絡層i間連接的權重。元胞數組b存儲每一層的偏置向量。

2.2 模式分類

如果一個問題可以被分解為多個模式級別,則可以用神經網絡來解決這一問題。在大多數情況下,利用神經網絡解決問題是可能的。神經網絡的函數用來接收輸入模式,然后輸出適合這一級別的模式。

這方面的例子由產生和訓練一個感知機對屬于3個不同等級的點進行正確的分級。神經網絡的輸入數據被定義如下:

X矩陣的每一行代表一個采樣點,采樣點的等級用矩陣C的相應元素值來描述。因為想要對3個不同的等級進行區分,所以需要3個感知機,每一個等級有1個。相應的目標函數描述如下:

2.3 訓練與泛化

神經網絡是模式分級的,但并不是所有的模式分級都指的是神經網絡。下面將講述神將神經網絡與其他分級的一些區別。它們的主要區別在2個屬性上:學習與泛化。

在使用電子存儲器解決數字分級器時,管理存儲器,特別是完成輸入的合并方面,花費很大精力。要求能夠通過給它較少數目的簡單且具有正確響應的例子來解決問題,這就指的是學習或稱為訓練:系統學習識別默寫特定的模式,然后給出正確的輸出響應。

某種程度上,這一部分已經被如今的電子存儲器實現了。首先初始化設置存儲器的所有值為0,然后,調用范例對存儲器的值進行訓練,將結果存入存儲器的相應位置。在相應的位置用1替換原來的0。1顯示了相應的輸入模式等級。訓練階段結束后,進入實際操作。如果這些模式與訓練階段的模式是一樣的,則輸出結果就是正確的。

理想的,器件應該給出正確的響應,即使有些例子沒有明確的顯示。這部分被稱為泛化。系統能夠推斷出例子給的不同模式等級的屬性。神經網絡能夠做這種事,如果他們被正確操作,他們將對那些在訓練階段學習的模式非常相似的模式做出響應。那么,對于數字分級器來說,這意味著神經網絡被數據范例進行訓練,它就能正確地區分相似的數據,而以前這些都是次要的。這里設:

c++相關文章:c++教程




評論


相關推薦

技術專區

關閉