⭐ 答題得分:0 / 0
NEURAL NETWORK · L23 · 機器學習技術與應用
神經網路完全攻略
前向傳播、反向傳播、激活函數、CNN 架構到過擬合防治,對應 iPAS 中級科目三重點
矩陣乘法 梯度下降 反向傳播 CNN 過擬合 / 正則化
⚡ 前向傳播(Forward Propagation)
神經網路的核心計算:矩陣乘法+激活函數

前向傳播就是資料從輸入層流向輸出層的過程,每一層都做:線性變換(矩陣乘法) → 非線性變換(激活函數)

// 單層神經元計算(前向傳播核心)
z = W · x + b   // 線性變換:W=權重矩陣, x=輸入, b=偏置
a = σ(z)       // 非線性變換:σ 為激活函數

// 多層堆疊(L 層網路)
a[l] = σ( W[l] · a[l-1] + b[l] )

// 考試考點:前向傳播主要依賴「矩陣乘法與向量內積」
輸入層 x 隱藏層 1 隱藏層 2 輸出層 ŷ x₁ x₂ x₃ h₁ h₂ h₃ h₁ h₂ h₃ ŷ₁ ŷ₂
📌 考試考點(重要):「在神經網路中,前向傳播主要依賴哪種數學操作?」→ 答案:矩陣乘法與向量內積
🔥 激活函數(Activation Functions)
為什麼需要激活函數?

若沒有激活函數,多層神經網路等同於單層線性模型,無法學習非線性規律。激活函數引入非線性,讓網路能擬合複雜函數。

激活函數公式輸出範圍常見用途缺點
Sigmoid1/(1+e⁻ˣ)(0, 1)二元分類輸出層梯度消失
Tanheˣ-e⁻ˣ / eˣ+e⁻ˣ(-1, 1)RNN 隱藏層梯度消失
ReLUmax(0, x)[0, ∞)CNN / 深度網路隱藏層Dead Neuron
Leaky ReLUmax(0.01x, x)(-∞, ∞)改善 Dead Neuronα 需調整
Softmaxeˣⁱ / Σeˣʲ(0,1) 且和=1多類別分類輸出層計算量大
📌 考試考點:隱藏層首選 ReLU(計算快、緩解梯度消失);多類別輸出用 Softmax;二元分類輸出用 Sigmoid
🔄 反向傳播(Backpropagation)
梯度下降更新權重的完整流程
// 損失函數(以 MSE 為例)
L = (1/n) · Σ( ŷᵢ - yᵢ

// 梯度下降:用偏微分計算每個權重對損失的影響
L/∂W = (損失函數對權重的偏微分)

// 權重更新規則
WW - η · ∂L/∂W  // η = 學習率(Learning Rate)
1
前向傳播 — 計算輸出與損失
資料從輸入層流向輸出層,得到預測值 ŷ,再計算損失 L(預測值與真實值的差距)。
ŷ = f(W,x) → L = loss(ŷ, y)
2
反向傳播 — 鏈式法則計算梯度
從輸出層往回,用「鏈式法則(Chain Rule)」計算每個權重對損失的偏微分(梯度)。告訴每個權重「你需要增加還是減少」。
∂L/∂W¹ = ∂L/∂a² · ∂a²/∂z² · ∂z²/∂W¹
3
梯度下降 — 更新所有權重
用計算出的梯度,按學習率 η 更新權重。學習率太大會震盪,太小收斂太慢。
W ← W - η · ∂L/∂W
4
重複迭代直到收斂
重複以上步驟 N 個 Epoch,每次看一批資料(Mini-batch),直到損失函數不再下降。
for epoch in range(N): forward → loss → backward → update
🖼️ CNN 卷積神經網路架構
CNN 核心操作:捲積 → 激活 → 池化 → 全連接
輸入圖片 224×224×3 Convolution 3×3 Kernel 特徵提取 ReLU 激活 Max Pooling 2×2 stride 2 降維壓縮 重複 N 次 深層特徵 Flatten 攤平成向量 全連接層 + Softmax 分類輸出
捲積層(Convolution)
用小型濾波器(Kernel)在圖片上滑動,提取局部特徵(邊緣、紋理等)。參數共享大幅減少參數量。
▶ 考點:特徵圖(Feature Map)
池化層(Pooling)
Max Pooling 取局部最大值,降低特徵圖尺寸,減少計算量並增強平移不變性。
▶ 考點:降維、防止過擬合
知名 CNN 架構
VGG(深層3×3)、ResNet(殘差連結)、Inception(並行多尺度)。考試常問 Inception 架構特點。
▶ 考點:Inception / ResNet
⚠️ 過擬合 vs 欠擬合(高頻考點)
問題表現原因解法考試關鍵字
過擬合
Overfitting
訓練準確率高
測試準確率低
模型太複雜
訓練資料太少
Dropout、L1/L2正則化
增加資料、早停法
泛化能力差
欠擬合
Underfitting
訓練和測試
準確率都低
模型太簡單
訓練不夠
增加神經元/層數
訓練更多 Epoch
高偏差(Bias)
// L2 正則化(Weight Decay)— 加入懲罰項防止權重過大
L_reg = L + λ · Σ

// Dropout — 訓練時隨機關閉部分神經元,防止過度依賴特定路徑
mask ~ Bernoulli(p)  // p = 保留機率(通常 0.5)
a_drop = amask          // ⊙ 為逐元素相乘
📌 考試考點(必考):「過擬合」= 模型「背答案」,換個題目就不會 → 解法:Dropout、L1/L2正則化、增加資料量、Early Stopping。
🎯 最佳化器(Optimizer)
最佳化器特點適用情境
SGD
隨機梯度下降
每次用一筆資料更新,計算快但震盪大大規模資料集基礎訓練
Mini-batch SGD每次用一小批(32/64筆)資料,平衡速度與穩定性最常見的訓練方式
Adam自動調整學習率,結合動量與 RMSProp最廣泛使用,適合大多數任務
Adagrad自動調整每個參數的學習率稀疏資料(考試考點!)
📌 考試考點:「哪個最佳化器特別適合稀疏資料?」→ 答案:Adagrad(自動調整各參數學習率)
📝 模擬考題(仿 iPAS 中級題型)
🎮 3D 互動視覺化教學
Three.js 即時渲染