---
title: "全連接層（Fully Connected Layer）"
slug: fully-connected-layer
language: zh-TW
source: https://aiterms.tw/learning/what-is-fully-connected-layer
updated_at: 2026-06-22
tags: [深度學習, 神經網路, 模型訓練, AI基礎]
ipas_term: false
type: deep-dive
---

# 全連接層 是什麼？

> 神經網路中每個神經元都與前一層所有神經元相連的層級，每條連接都有獨立的可學習權重，能進行高度非線性的特徵轉換，常用於網路最後階段進行分類或迴歸。

## 核心概念

全連接層（又稱密集層或線性層）是深度學習的基礎構件。其核心思想是，前一層的每個輸出都與當前層的每個神經元建立連接。若前一層有 n 個輸出，當前層有 m 個神經元，則全連接層包含 n×m 個權重參數和 m 個偏差項。

數學表達為：
y = σ(Wx + b)

其中 W 是權重矩陣，x 是輸入向量，b 是偏差項，σ 是激活函數。

全連接層的優勢在於其通用逼近定理（universal approximation theorem）：單層隱藏層全連接網路可以逼近任意連續函數，前提是隱藏層神經元足夠多。

## 運作原理

全連接層的運作分為前向傳播和反向傳播兩部分：

1. **前向傳播**：計算加權和並應用激活函數。輸入 x 與權重矩陣 W 相乘，加上偏差 b，經激活函數 σ（如 ReLU、Tanh）得到輸出。

2. **非線性轉換**：激活函數引入非線性，使單層網路能學習非線性映射。沒有激活函數的堆疊全連接層等價於單層線性變換。

3. **反向傳播**：梯度計算相對直接。通過鏈式法則計算損失相對每個權重的梯度，然後用梯度下降法更新參數。

4. **過度參數化**：全連接層極易過度參數化。網路可能記住訓練數據而非學習泛化特徵，導致過擬合。

## 實際應用

全連接層在多個場景發揮核心作用：

1. **分類網路的輸出層**：在 CNN、RNN 後接全連接層進行最終分類決策。例如 ImageNet 分類任務中，卷積層提取特徵，全連接層進行 1000 類分類。

2. **自編碼器**：全連接層構建編碼器和解碼器，進行無監督特徵學習和維度縮減。

3. **強化學習策略網路**：在 DQN、A3C 等算法中，全連接層輸出動作價值或策略概率。

4. **推薦系統**：全連接層在協同過濾和深度學習推薦模型中學習用戶-物品交互模式。

5. **時序預測**：結合 LSTM 或其他序列模型，全連接層進行最終預測或回歸。

## 常見誤區

1. **計算複雜度誤解**：全連接層參數多，但計算量本身為 O(nm)，對於適度尺寸的層並不一定比卷積層慢，瓶頸往往在內存而非計算。

2. **激活函數的必要性被低估**：初學者有時認為堆疊足夠多的全連接層就能學習複雜函數，但不用激活函數的多層網路仍是線性的，必須加激活函數。

3. **權重初始化的忽視**：全連接層對初始化敏感。使用不當初始化（如全零或過大隨機數）會導致梯度消失或爆炸。

4. **與卷積層的簡單比較**：有人認為卷積層完全優於全連接層，但在某些任務（如結構化數據分類）中，全連接層表現更優。

## 與相關技術的比較

- **全連接層 vs 卷積層**：卷積層利用局部連接和參數共享減少參數，全連接層則完全連接。卷積層適合空間數據（圖像），全連接層適合結構化數據。在現代 CNN 中，全連接層常被全局平均池化（global average pooling）替代，以進一步減少參數。

- **全連接層 vs 注意力層**：注意力機制根據內容動態調整權重，全連接層的權重固定。注意力層在自然語言處理中更靈活，但計算複雜度更高。

- **標準全連接 vs 稀疏連接**：稀疏全連接層只連接部分神經元，減少參數和計算。這在某些應用中能保持性能同時提升效率。

- **全連接層 vs 圖神經網路層**：圖神經網路層考慮圖結構，只與相鄰節點相連，而全連接層無視結構連接所有節點。對於圖數據，圖神經網路層更合適。

## 常見問題

### 為什麼全連接層容易導致過擬合，如何解決？

全連接層參數眾多，擁有很高的模型容量。在數據有限的情況下，網路容易記住訓練樣本的細節而非學習泛化特徵。解決方案包括：使用正則化（L1/L2）限制權重大小、應用 Dropout 隨機丟棄神經元、使用提前停止（early stopping）監控驗證集性能、增加訓練數據、使用批正規化穩定訓練。這些技術合理組合能有效緩解過擬合。

### 全連接層為什麼需要激活函數，不用行不行？

不用激活函數的全連接層只進行線性變換 y = Wx + b。多層線性變換的組合仍是線性變換，無法增加模型表達能力。激活函數（如 ReLU、Sigmoid、Tanh）引入非線性，使多層網路能逼近任意非線性函數。實踐表明，沒有激活函數的深層網路性能很差，無法解決複雜問題。

### 全連接層的權重初始化為什麼這麼重要？

不恰當的初始化會導致梯度消失或爆炸。例如，權重過大時，梯度也很大，容易爆炸；權重過小時，梯度消失，網路難以訓練。Xavier 初始化和 He 初始化考慮層的輸入輸出維度，確保信號在前向傳播中保持合理尺度，反向傳播中梯度也保持穩定。合適的初始化能顯著加快訓練收斂。

---

深度解說頁：https://aiterms.tw/learning/what-is-fully-connected-layer
快查頁：https://aiterms.tw/terms/fully-connected-layer
最後更新：2026/06/22