多層感知器

維基百科,自由的百科全書

多層感知器(英語:Multilayer Perceptron,縮寫:MLP)是一種前向結構的人工神經網絡,映射一組輸入向量到一組輸出向量。MLP可以被看作是一個有向圖,由多個的節點層所組成,每一層都全連接到下一層。除了輸入節點,每個節點都是一個帶有非線性激活函數的神經元(或稱處理單元)。一種被稱為反向傳播算法監督學習方法常被用來訓練MLP。[1][2] 多層感知器遵循人類神經系統原理,學習並進行數據預測。它首先學習,然後使用權重存儲數據,並使用算法來調整權重並減少訓練過程中的偏差,即實際值和預測值之間的誤差。主要優勢在於其快速解決複雜問題的能力。多層感知的基本結構由三層組成:第一輸入層,中間隱藏層和最後輸出層,輸入元素和權重的乘積被饋給具有神經元偏差的求和結點,主要優勢在於其快速解決複雜問題的能力。 [3] MLP是感知器的推廣,克服了感知器不能對線性不可分數據進行識別的弱點。[4]

理論[編輯]

激活函數[編輯]

若每個神經元的激活函數都是線性函數,那麼,任意層數的MLP都可被約簡成一個等價的單層感知器[5]

實際上,MLP本身可以使用任何形式的激活函數,譬如階梯函數邏輯Sigmoid函數,但為了使用反向傳播算法進行有效學習,激活函數必須限制為可微函數。由於具有良好可微性,很多S函數,尤其是雙曲正切函數(Hyperbolic tangent)及邏輯函數,被採用為激活函數。

深度學習的最新發展中,線性整流(ReLU)更頻繁地被用來克服與S函數相關的數值問題。

兩個歷史上常見的激活函數都是 S函數,形式是

第一個是個雙曲正切函數,值域為 -1 到 1;第二個是個邏輯函數,形狀很相似但是值域為 0 到 1。令 yi 為第 i 個節點(神經元)的輸出,而 vi 是輸入連接的加權和。也有其他的激活函數,例如線性整流函數徑向基函數(用於徑向基函數網絡,另一種監督神經網絡模型)。

[編輯]

MLP由三層或更多層非線性激活節點組成(一個輸入層和一個具有一個或多個隱藏層的輸出層)。由於多層互連是完全連接的,所以一層中的每個節點都以一定的權重 wij 連接到下一層的每個節點。

學習[編輯]

MLP 在感知器中進行學習,通過每次處理數據後改變連接權重,降低輸出與預測結果的誤差量。這是有監督學習的一個例子,通過反向傳播來實現,反向傳播是線性感知器中最小均方算法的推廣。

我們可以將輸出節點 j 的第 n 個數據點的誤差表示為 ,其中 d 是目標值,y 是由感知器預測的值。調整節點權重的方式是,嘗試通過修正節點權重最小化輸出的整體誤差

.

使用梯度下降,每個權重的修正量為

其中 yi 是前一個神經元的輸出,η是學習率。η需要精心挑選,保證權重可以快速收斂而不發生震盪。

式中的導數取決於局部場 vj。場是變化的。很容易證明輸出節點的導數可以簡化為

其中 是激活函數的導數。是不變的。對於隱藏節點的權重變化,分析更加困難,但是可以看出相關的導數是

.

代表輸出層的第k個節點的權重變化會影響這個導數。因此,為了改變隱藏層權重,輸出層權重根據激活函數的導數而改變,因此該算法代表激活函數的反向傳播[6]

術語[編輯]

術語「多層感知器」不是指具有多層的單感知器,每一層由多個感知器組成。另一種說法是「多層感知器網絡」。此外,MLP的「感知器」不是最嚴格意義上的感知器。真正的感知器在形式上是人工神經元的一個特例,它使用一個閾值激活函數,如階躍函數。MLP感知器可以使用任意激活函數。一個真正的感知器執行二進制分類(或者這個或者那個),一個MLP神經元可以自由地執行分類或者回歸,這取決於它的激活函數。

後來應用術語「多層感知器」時,沒有考慮節點/層的性質,節點/層可以由任意定義的人工神經元組成,而不是具體的感知器。這種解釋避免了將「感知器」的定義放寬到一般意義上的人工神經元。

應用[編輯]

常被MLP用來進行學習的反向傳播算法,在模式識別的領域中算是標準監督學習算法,並在計算神經學及並行分布式處理領域中,持續成為被研究的課題。MLP已被證明是一種通用的函數近似方法,可以被用來擬合複雜的函數,或解決分類問題。

MLP在80年代的時候曾是相當流行的機器學習方法,擁有廣泛的應用場景,譬如語音識別、圖像識別、機器翻譯等等,但自90年代以來,MLP遇到來自更為簡單的支持向量機的強勁競爭。近來,由於深度學習的成功,MLP又重新得到了關注。

文獻[編輯]

  1. ^ Rosenblatt, Frank. x. Principles of Neurodynamics: Perceptrons and the Theory of Brain Mechanisms. Spartan Books, Washington DC, 1961
  2. ^ Rumelhart, David E., Geoffrey E. Hinton, and R. J. Williams.「Learning Internal Representations by Error Propagation」. David E. Rumelhart, James L. McClelland, and the PDP research group.(editors), Parallel distributed processing: Explorations in the microstructure of cognition, Volume 1: Foundations. MIT Press, 1986.
  3. ^ Sustainable Construction Safety Knowledge Sharing: A Partial Least Square-Structural Equation Modeling and A Feedforward Neural Network Approach, Sustainability 2019, 11(20), 5831; https://doi.org/10.3390/su11205831
  4. ^ Cybenko, G. 1989. Approximation by superpositions of a sigmoidal function Mathematics of Control, Signals, and Systems, 2(4), 303–314.
  5. ^ Neural Networks for pattern recognition 第一版. Oxford University Press. 1995. ISBN 0198538642. 
  6. ^ Haykin, Simon. Neural Networks: A Comprehensive Foundation 2. Prentice Hall. 1998. ISBN 0-13-273350-1.