Skip to content

神經網路與深度學習

前言

神經網路是 AI 革命的引擎。 從 ChatGPT 的語言理解到自動駕駛的圖像辨識,背後都是神經網路在工作。它不是魔法,而是一套精巧的數學框架——透過大量資料「學習」出輸入到輸出的對映關係。理解它的基本原理,能幫你更好地使用和除錯 AI 工具。

這篇文章會帶你學什麼?

學完這章後,你將獲得:

  • 核心概念:理解神經元、層、前向傳播、反向傳播的基本原理
  • 網路類型:了解 CNN、RNN、Transformer 等主流架構的特點和適用場景
  • 訓練過程:明白模型是如何從資料中「學習」的
  • 關鍵技巧:掌握過擬合、學習率、正則化等實用概念
  • 發展脈絡:了解從感知機到大語言模型的演進歷程
章節內容核心概念
第 1 章從神經元到網路感知機、激活函數、前向傳播
第 2 章網路如何學習損失函數、梯度下降、反向傳播
第 3 章主流網路架構CNN、RNN、Transformer
第 4 章訓練的藝術過擬合、正則化、超參數調優
第 5 章發展歷程與前沿從感知機到 GPT

1. 從神經元到網路

單個神經元

神經網路的最小單元是神經元(Neuron)。它模擬了生物神經元的工作方式:接收多個輸入訊號,加權求和,透過激活函數產生輸出。

輸入 x1 ──→ ×w1 ──┐
輸入 x2 ──→ ×w2 ──┼──→ Σ(加權求和) + b(偏置) ──→ f(激活函數) ──→ 輸出
輸入 x3 ──→ ×w3 ──┘

數學表達:y = f(w₁x₁ + w₂x₂ + w₃x₃ + b)

How a Neuron Works
Adjust inputs and weights to see how the neuron output changes
Input × Weight
0.5
×
0.8
=0.40
-0.3
×
1.2
=-0.36
0.7
×
-0.5
=-0.35
Weighted sum + bias (0.1)
-0.21
Activation: Sigmoid
0.4477
0.1

激活函數:為什麼需要非線性?

如果沒有激活函數,無論多少層神經元疊加,最終都等價於一個線性變換(矩陣乘法)。激活函數引入非線性,讓網路能學習複雜的模式。

激活函數公式特點常用場景
ReLUmax(0, x)簡單高效,訓練快隱藏層的預設選擇
Sigmoid1/(1+e⁻ˣ)輸出 0~1二分類輸出層
Tanh(eˣ-e⁻ˣ)/(eˣ+e⁻ˣ)輸出 -1~1RNN 中常用
Softmaxeˣᵢ/Σeˣⱼ輸出機率分佈多分類輸出層

從神經元到網路

把多個神經元組織成,多個層串聯起來,就構成了神經網路:

輸入層          隱藏層1        隱藏層2        輸出層
(特徵)         (提取低級特徵)   (提取高級特徵)   (預測結果)

 x1 ──→  [○ ○ ○ ○] ──→ [○ ○ ○] ──→  [○ ○]
 x2 ──→  [○ ○ ○ ○] ──→ [○ ○ ○] ──→  貓/狗
 x3 ──→  [○ ○ ○ ○] ──→ [○ ○ ○]
概念說明
輸入層接收原始資料(圖片像素、文字向量等)
隱藏層中間處理層,層數越多網路越「深」(深度學習的「深」)
輸出層產生最終預測(分類機率、迴歸值等)
前向傳播資料從輸入層逐層流向輸出層的過程

為什麼叫「深度」學習?

傳統機器學習通常只有 1-2 層。當隱藏層數量增加到幾十甚至上百層時,就叫「深度」學習。更深的網路能學習更抽象的特徵:第一層學邊緣,第二層學紋理,第三層學部件,更深的層學到「這是一隻貓」。


2. 網路如何學習

神經網路的「學習」本質上是一個最佳化問題:找到一組權重(w)和偏置(b),使得網路的預測盡可能接近真實答案。

訓練三步曲

1. 前向傳播:輸入資料,得到預測結果
2. 計算損失:用損失函數衡量預測與真實值的差距
3. 反向傳播:根據損失,計算每個權重的梯度,更新權重

重複以上步驟,直到損失足夠小

損失函數:衡量「錯得有多離譜」

損失函數(Loss Function)量化了預測值和真實值之間的差距。訓練的目標就是最小化損失。

損失函數公式簡述適用場景
MSE(均方誤差)預測值與真實值差的平方的均值迴歸問題
Cross-Entropy(交叉熵)-Σ y·log(ŷ)分類問題
Binary Cross-Entropy交叉熵的二分類版本二分類問題

梯度下降:找到最低點

想像你站在一座山上,蒙著眼睛要走到最低點。你能做的就是摸一下腳下的坡度,然後往下坡方向走一步。這就是梯度下降。

損失值

  │    ╱╲
  │   ╱  ╲      ← 目前位置
  │  ╱    ╲    ↙ 沿梯度方向下降
  │ ╱      ╲╱   ← 局部最小值
  │╱            ╲╱  ← 全域最小值
  └──────────────→ 權重值
概念說明
梯度損失函數對每個權重的偏導數,指示「往哪個方向調整能減少損失」
學習率每一步走多遠。太大會跳過最低點,太小會收斂太慢
批次大小每次用多少樣本計算梯度。全量太慢,單樣本太抖,小批次(mini-batch)是折衷

反向傳播:鏈式法則的勝利

反向傳播(Backpropagation)是計算梯度的高效演算法。它利用微積分的鏈式法則,從輸出層開始,逐層向後計算每個權重對損失的貢獻。

前向傳播:輸入 → 隱藏層1 → 隱藏層2 → 輸出 → 損失
反向傳播:損失 → 輸出 → 隱藏層2 → 隱藏層1 → 更新所有權重

直覺理解反向傳播

把神經網路想像成一條流水線。產品(預測)出了問題(損失大),你需要從最後一道工序開始往回查,看每道工序(每層權重)對最終問題貢獻了多少,然後按貢獻大小調整。貢獻大的多調,貢獻小的少調。


3. 主流網路架構

不同類型的資料需要不同的網路架構。選對架構,事半功倍。

Common Neural Network Layer Types
Click a layer to inspect its role and parameters
Dense layer
Each neuron connects to every neuron in the previous layer. This is the most basic layer type and learns combinations of input features.
units (number of neurons)activation
Output layers for classification or regression, and simple feature extraction
Dense(128, activation="relu")

3.1 CNN(卷積神經網路)

CNN 是處理圖像的王者。核心思想:用小的卷積核在圖像上滑動,提取局部特徵。

輸入圖像 → [卷積層→激活→池化] × N → 全連接層 → 輸出
  28×28      提取邊緣/紋理/形狀        分類結果
特點說明
局部連接每個神經元只看一小塊區域,而非整張圖
參數共享同一個卷積核在整張圖上複用,大幅減少參數
平移不變性貓在圖片左邊還是右邊,都能辨識
層級特徵淺層學邊緣,深層學語義

代表模型:LeNet、AlexNet、VGG、ResNet、EfficientNet

3.2 RNN(循環神經網路)

RNN 專為序列資料設計。它的隱藏狀態會傳遞到下一個時間步,讓網路具有「記憶」能力。

時間步 t1    時間步 t2    時間步 t3
 "我"  ──→   "喜歡"  ──→  "貓"
  ↓           ↓           ↓
 [h1]  ──→  [h2]   ──→  [h3] ──→ 輸出
  ↑           ↑           ↑
 隱藏狀態在時間步之間傳遞(記憶)
變體解決的問題核心機制
原始 RNN基礎序列建模簡單循環連接
LSTM長序列梯度消失遺忘門、輸入門、輸出門
GRULSTM 參數太多簡化為重置門和更新門
雙向 RNN只能看到過去同時從前往後和從後往前處理

LSTM 的門控機制

LSTM 的精妙之處在於三個「門」:遺忘門決定丟棄哪些舊記憶,輸入門決定存入哪些新資訊,輸出門決定輸出哪些內容。就像你讀一本書,會選擇性地記住重要情節、忘掉無關細節。

3.3 Transformer:注意力就是一切

2017 年 Google 發表的 "Attention Is All You Need" 論文提出了 Transformer,徹底改變了 AI 領域。它用自注意力機制替代了循環結構,是 GPT、BERT、Claude 等大模型的基礎。

輸入序列 → 嵌入 + 位置編碼 → [多頭注意力 → 前饋網路] × N → 輸出

                          每個詞都能「看到」所有其他詞
優勢說明
並列計算不像 RNN 必須逐步處理,Transformer 可以並列處理整個序列
長距離依賴任意兩個位置之間直接建立聯繫,不受距離限制
可擴展性模型越大、資料越多,效果越好(Scaling Law)

自注意力的直覺:讀「小貓坐在墊子上,因為很累」這句話時,「它」需要關注「小貓」才能理解含義。自注意力讓模型學會這種關聯——為序列中的每對詞計算一個「相關性分數」。

Common Neural Network Architectures
Click to inspect each architecture, its characteristics, and applications
Feedforward neural network(FNN)
1958
The most basic neural network structure. Data flows one way from the input layer through hidden layers to the output layer, with no recurrence. Neurons in each layer connect to all neurons in the next layer.
Network structure
Input layer Hidden layers ×N Output layer
Typical applications
ClassificationRegressionFunction approximation
Key idea:Map inputs to outputs through multiple nonlinear transformations. More layers can represent more complex functions.

4. 訓練的藝術

有了好的架構還不夠,訓練過程中有很多「坑」需要避開。

4.1 過擬合 vs 欠擬合

問題表現原因解決方案
過擬合訓練集表現好,測試集表現差模型太複雜,「背答案」而非學規律正則化、Dropout、資料增強、早停
欠擬合訓練集和測試集都表現差模型太簡單,學不到規律增加模型容量、訓練更久、更好的特徵
誤差

  │ ╲  訓練誤差          測試誤差  ╱
  │  ╲                          ╱
  │   ╲─────────────────╱
  │    欠擬合 ← 最佳點 → 過擬合
  └──────────────────────────→ 模型複雜度

4.2 關鍵超參數

超參數是訓練前需要人為設定的參數(不是模型自己學的):

超參數作用常見範圍調優建議
學習率每步更新的幅度1e-5 ~ 1e-1最重要的超參數,通常從 1e-3 開始
批次大小每次訓練用多少樣本16 ~ 512越大訓練越穩定,但需要更多顯示記憶體
訓練輪數(Epoch)遍歷整個資料集的次數10 ~ 100+配合早停法,驗證集不再提升就停
最佳化器梯度更新策略Adam、SGDAdam 是預設選擇,SGD+動量適合精調

4.3 正則化技巧

防止過擬合的常用手段:

技巧原理使用方式
Dropout訓練時隨機關閉部分神經元通常 p=0.1~0.5
權重衰減在損失函數中加入權重大小的懲罰L2 正則化,λ=1e-4
資料增強對訓練資料做隨機變換(翻轉、裁剪、旋轉)圖像任務必備
早停法驗證集損失不再下降時停止訓練patience=5~10
Batch Normalization標準化每層的輸入分佈加速收斂,有輕微正則化效果

訓練的經驗法則

  1. 先用小資料集跑通整個流程,確認程式碼沒 bug
  2. 從已有的預訓練模型開始微調,而非從零訓練
  3. 學習率是最值得花時間調的超參數
  4. 如果訓練損失不下降,先檢查資料和程式碼,再懷疑模型

5. 發展歷程與前沿

神經網路的發展經歷了幾次「寒冬」和「復興」,每次突破都源於關鍵的技術創新。

年代里程碑關鍵突破
1958感知機(Perceptron)第一個神經網路模型,只能處理線性問題
1986反向傳播演算法讓多層網路的訓練成為可能
1998LeNet(CNN)卷積網路在手寫數字辨識上大獲成功
2012AlexNet深度 CNN 在 ImageNet 上碾壓傳統方法,深度學習爆發
2014GAN(生成對抗網路)兩個網路對抗訓練,能生成逼真圖像
2017Transformer"Attention Is All You Need",注意力機制取代 RNN
2018BERT預訓練+微調範式,NLP 全面突破
2020GPT-31750 億參數,展示了大模型的湧現能力
2022ChatGPTRLHF 對齊技術,AI 進入大眾視野
2023+多模態大模型GPT-4V、Claude 等,同時理解文字和圖像

當前趨勢

方向說明
大模型(LLM)參數量從億級到兆級,湧現出推理、程式設計等能力
多模態同一個模型處理文字、圖像、音訊、影片
高效微調LoRA、QLoRA 等技術讓普通開發者也能微調大模型
AI Agent讓大模型使用工具、規劃任務、自主完成複雜目標
小模型蒸餾用大模型的知識訓練小模型,在端側部署

對開發者的啟示

你不需要從零訓練神經網路。現代 AI 開發更多是呼叫 API(如 OpenAI、Claude API)或微調預訓練模型(如用 Hugging Face)。但理解底層原理能幫你更好地選擇模型、設計 prompt、診斷問題。


總結

核心概念一句話總結
神經元加權求和 + 激活函數,網路的最小計算單元
前向傳播資料從輸入層逐層流向輸出層,產生預測
反向傳播從損失出發,逐層計算梯度,更新權重
CNN卷積核提取局部特徵,圖像處理的首選
RNN/LSTM循環連接保持記憶,處理序列資料
Transformer自注意力並列處理,大模型的基礎架構
過擬合模型「背答案」,用正則化、Dropout 等手段防止
遷移學習站在巨人肩膀上,用預訓練模型微調解決新問題

延伸閱讀