多層人工神經網路有哪些方法?
人工神經網路的機制比感知器模型複雜得多。多層人工神經網路中有多種方法,如下所示:
網路可以在其輸入層和輸出層之間包含多箇中間層。這些中間層稱為隱藏層,安裝在這些層中的節點稱為隱藏節點。由此產生的架構稱為多層神經網路。
在前饋神經網路中,一層中的節點僅與下一層中的節點連線。感知器是一個單層前饋神經網路,因為它只有一層節點(輸出層)來實現複雜的數值運算。在迴圈神經網路中,連結可以連線同一層內的節點或一層中的節點到先前層。
網路可以使用除了符號函式之外的其他啟用函式方法。多種啟用函式的例項,例如線性、S型(邏輯)和雙曲正切函式。這些啟用函式使隱藏節點和輸出節點能夠產生對其輸入引數呈非線性關係的輸出值。
這些更復雜的特性使多層神經網路能夠模擬輸入和輸出變數之間更復雜的關係。例項可以使用兩個將輸入空間劃分為其特定類別的超平面來定義。
要了解 ANN 模型的權重,需要一個有效的演算法,當提供足夠數量的訓練資料時,該演算法能夠彙集到正確的解決方案。一種方法是將網路中的每個隱藏節點或輸出節點視為一個單獨的感知器單元,並使用相同的權重更新公式。
此方法將不起作用,因為它可能缺乏關於隱藏節點正確輸出的先驗知識。這使得確定與每個隱藏節點相關的誤差項(y – y')變得複雜。接下來將展示一種瞭解神經網路權重的方法,該方法依賴於梯度下降法。
ANN 學習演算法的目標是確定一類權重 w,以最小化平方誤差的總和:
$$\mathrm{E(w)\:=\:\frac{1}{2}\displaystyle\sum\limits_{i=1}^N (Y_{i}-Y^{'}_i)^2}$$
平方誤差之和基於 w,因為預測類別 y' 是建立到隱藏節點和輸出節點的權重的函式。在這些情況下,由於選擇了其啟用函式(例如 S 型或 tanh 函式),因此 ANN 的輸出是其引數的非線性函式。
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP