感知機(Perceptron)、多層感知機(MLP,Multilayer Perceptron)和全連接神經網絡(FCNN,Fully Connected Neural Network)是神經網絡發展過程中密切相關的概念,但它們有明確的區別。以下從結構、功能和應用場景進行對比:
1. 感知機(Perceptron)
定義與結構
- 單層結構:只有輸入層和輸出層(無隱藏層),輸入直接映射到輸出。
- 線性分類器:通過權重和偏置計算輸出,公式為:
[
y = \text{激活函數}(w^T x + b)
]
常用階躍函數(Step Function)作為激活函數,輸出二分類結果(如 0 或 1)。
功能限制
- 僅解決線性可分問題:例如邏輯與(AND)、邏輯或(OR),但無法處理異或(XOR)等非線性問題。
- 無深度表達能力:單層結構無法擬合復雜模式。
歷史意義
- 1958年由 Frank Rosenblatt 提出,是神經網絡的最早形式,奠定了權重調整(如感知機學習算法)的基礎。
2. 多層感知機(MLP)
定義與結構
- 多層結構:至少包含一個隱藏層(輸入層 → 隱藏層 → 輸出層)。
- 全連接 + 非線性激活:
- 每一層的神經元與下一層全連接。
- 必須使用非線性激活函數(如 Sigmoid、ReLU),否則多層線性層等效于單層(失去深度意義)。
功能優勢
- 解決非線性問題:通過隱藏層和非線性激活,可擬合任意復雜函數(通用近似定理)。
- 適用于分類和回歸:如手寫數字識別(MNIST)、房價預測等。
典型應用場景
- 傳統機器學習任務,如圖像分類、簡單序列建模(需搭配其他結構如 RNN)。
3. 全連接神經網絡(FCNN)
定義與結構
- 廣義的全連接結構:可以是任意層數的全連接網絡(例如 3 層、5 層甚至更深)。
- 靈活性與擴展性:
- 可能包含線性層或非線性層。
- 常作為復雜網絡的子模塊(如 CNN 的分類頭部、Transformer 中的前饋網絡)。
與 MLP 的關系
- MLP 是 FCNN 的子集:所有 MLP 都是全連接神經網絡,但 FCNN 不一定是 MLP(例如純線性層堆疊的 FCNN 沒有非線性能力,嚴格來說不算是 MLP)。
應用場景
- 深度學習的通用組件,例如:
- 卷積神經網絡(CNN)末端的分類層。
- 自編碼器(Autoencoder)的編碼器/解碼器。
- 強化學習中的策略網絡。
三者的核心區別總結
特征 | 感知機 | 多層感知機(MLP) | 全連接神經網絡(FCNN) |
---|---|---|---|
層數 | 單層(輸入+輸出) | 至少一個隱藏層 | 任意層數 |
連接方式 | 全連接 | 全連接 | 全連接 |
非線性激活函數 | 階躍函數(二分類) | 必須使用(如 ReLU) | 可自由選擇(可含純線性層) |
解決任務 | 線性可分分類 | 非線性分類/回歸 | 通用任務(分類、回歸、特征提取) |
歷史定位 | 神經網絡雛形 | 經典神經網絡模型 | 深度學習的基礎組件 |
示例對比
-
感知機:
- 輸入:二維坐標點 ((x_1, x_2))
- 輸出:0(紅點)或 1(藍點)
- 只能畫一條直線分割數據。
-
MLP:
- 輸入:二維坐標點 ((x_1, x_2))
- 結構:輸入層 → 隱藏層(ReLU) → 輸出層(Sigmoid)
- 輸出:概率值(0~1),可擬合曲線分割數據。
-
FCNN:
- 可能結構:輸入層 → 線性層 → ReLU 層 → 線性層 → 輸出層
- 用途:作為圖像分類模型(如 ResNet)的最后一層全連接分類器。
關鍵結論
- 感知機是單層線性模型,能力有限,是神經網絡的起點。
- MLP 是感知機的多層擴展,通過非線性激活解決復雜問題。
- FCNN 是更廣義的全連接結構,強調連接方式而非具體用途,可靈活嵌入現代深度學習模型。