首頁 / 學習筆記 / 中級科目三 / 深度學習原理與框架

iPAS AI中級中級科目三🧬 深度學習/NLP/CV架構
📖 學習筆記・中級科目三

CH4.3 深度學習原理與框架

深度學習原理與框架

🧭 本節架構

人工神經元/感知器 → 激活函數引入非線性 → 前向傳播(做預測)與反向傳播(調參數,靠鏈式法則計算梯度)→ 過擬合與正則化技術 → 深度模型架構家族:MLP → CNN(卷積/池化/全連接)→ RNN(LSTM/GRU)→ Transformer(注意力機制/自注意力/多頭注意力)→ 生成式模型(自編碼器/GAN)→ 主流框架(TensorFlow、PyTorch)。

1. 人工神經元與感知器

人工神經元是受生物神經元啟發設計的數學模型:接收多個輸入,加權求和後透過激活函數產生輸出:

\[Z = w_1x_1+w_2x_2+\cdots+w_nx_n+b = \sum_{i=1}^n w_ix_i+b, \quad \text{Output}=A(Z)\]

感知器(Perceptron)是最早的人工神經元模型之一(Frank Rosenblatt, 1957),使用步階函數(Step Function)作為激活函數,可解決線性可分的二元分類問題,但無法解決非線性可分問題,如經典的 XOR 問題,這正是後續多層神經網路發展的動機。

2. 激活函數:賦予非線性的關鍵

🎯 核心觀念

若沒有激活函數,或只用線性激活函數,無論神經網路有多少層,最終輸出都只是輸入的線性組合,等同於單層線性模型。激活函數的根本作用就是引入非線性,讓神經網路能逼近任意複雜的函數關係。

激活函數公式輸出範圍適用位置
Sigmoid\(\sigma(x)=\dfrac{1}{1+e^{-x}}\)(0,1)二元分類輸出層
Tanh\(\tanh(x)=\dfrac{e^x-e^{-x}}{e^x+e^{-x}}\)(-1,1)隱藏層,需正負對稱輸出時
ReLU\(\text{ReLU}(x)=\max(0,x)\)[0,∞)深度網路隱藏層(計算快、緩解梯度消失)
Softmax\(\text{Softmax}(z_i)=\dfrac{e^{z_i}}{\sum_j e^{z_j}}\)總和為 1 的機率分佈多類別單選輸出層

3. 前向傳播與反向傳播

步驟目標說明
前向傳播(Forward Propagation)做預測輸入資料逐層計算(加權求和 + 激活函數),一路推進到輸出層產生預測結果
反向傳播(Backpropagation)調整參數比較預測與真實答案計算損失,透過鏈式法則(Chain Rule)將誤差從輸出層反向傳遞至每一層,計算損失對各權重的梯度,再由優化器更新權重
🧠 記憶技巧

「前向傳播做預測,反向傳播找錯改錯」——前向推論一次,反向沿鏈式法則逐層歸因,兩者反覆循環構成一次完整的訓練迭代。

4. 過擬合與正則化技術

過擬合(Overfitting):模型在訓練資料表現優異,但在未見過的新資料上表現顯著下降。常見成因:模型過於複雜、訓練資料不足、訓練時間過長。特徵:訓練集損失低、準確率高;驗證集損失高、準確率明顯低於訓練集。

正則化技術核心概念
L1 正則化(Lasso)加入權重絕對值總和,促使部分權重縮為零,達到特徵選擇效果
L2 正則化(Ridge)加入權重平方和,防止權重過大,讓模型更平滑穩定
Elastic Net結合 L1 與 L2,兼具特徵選擇與權重平滑
Dropout訓練時隨機屏蔽部分神經元,避免神經元間過度依賴
早停法(Early Stopping)驗證集損失不再下降時提前停止訓練

> 詳細原理與公式請對照 CH5.4 模型調整與優化。

5. 深度模型架構家族

(1) 多層感知器(MLP)

由輸入層、隱藏層、輸出層構成的前饋(Feedforward)全連接網路,資訊單向流動。優點:概念簡單、可逼近任意複雜非線性函數。缺點:對輸入的空間或序列關係不敏感(會把圖片、文字攤平成一維向量,丟失空間/序列資訊)、參數量大、易過擬合、缺乏可解釋性。

(2) 卷積神經網路(CNN)

結構層功能
卷積層(Convolutional Layer)卷積核在輸入上滑動提取局部特徵,透過權重共享(Weight Sharing)大幅減少參數,並使模型具位置不變性
激活函數層通常接 ReLU,增加非線性表達能力
池化層(Pooling Layer)降採樣縮減特徵映射尺寸(最大池化/平均池化),增加平移不變性
全連接層(Fully Connected Layer)將高層次抽象特徵扁平化後進行最終分類/迴歸
🎯 核心觀念

CNN 的權重共享(Weight Sharing)同時達成兩個效果:大幅減少參數量(降低過擬合風險)與辨識位置不變的特徵(例如無論貓的眼睛在圖像左邊或右邊都能被同一濾波器辨識),這是 CNN 相對 MLP 最核心的優勢來源。

CNN 衍伸模型演進:AlexNet(首次證明深層 CNN 的威力)→ VGG(堆疊小型 3×3 卷積核加深網路)→ GoogLeNet/Inception(並行不同尺度卷積)→ ResNet(殘差連接解決梯度消失,可建構數百層網路)→ DenseNet(特徵極大重用)→ MobileNet/EfficientNet(輕量化、高效部署)。

(3) 遞迴神經網路(RNN)

專為序列資料設計,神經元間存在循環連接,隱藏狀態 \(H_t\) 由當前輸入與前一時間步隱藏狀態共同決定,使當前輸出依賴過去的「記憶」。權重跨時間步共享,訓練使用時間上的反向傳播(BPTT, Backpropagation Through Time)。

缺點說明
梯度消失(Vanishing Gradient)長序列中梯度指數級衰減,難以學習遠距離依賴
梯度爆炸(Exploding Gradient)梯度指數級增長,訓練不穩定
訓練速度慢序列性計算本質上是串行的,難以平行化

RNN 衍伸模型:

模型核心機制特點
LSTM(Long Short-Term Memory)輸入門、遺忘門、輸出門 + 獨立細胞狀態(Cell State)有效解決梯度消失,能捕捉長期依賴
GRU(Gated Recurrent Unit)更新門、重置門(只有兩個門)LSTM 簡化版,計算量更少,效果相當
雙向 RNN(Bi-RNN)同時訓練正向與反向兩個方向的 RNN能同時考慮過去與未來的上下文,適合命名實體辨識

(4) Transformer 架構

Transformer(2017《Attention Is All You Need》)完全基於注意力機制,捨棄 RNN 的循環結構與 CNN 的卷積結構,可並行化處理序列並捕捉長距離依賴。

組件功能
編碼器(Encoder)堆疊將輸入序列轉換為富含上下文資訊的表示
解碼器(Decoder)堆疊接收編碼器輸出與已生成的部分序列,自迴歸生成目標序列,內含遮罩自注意力避免「偷看」未來
自注意力(Self-Attention)將輸入映射為 Query(我在找什麼)、Key(我能提供什麼)、Value(我提供的內容),計算任意兩元素間的關聯權重
多頭注意力(Multi-Head Attention)並行執行多次獨立自注意力,從不同「表示子空間」捕捉多樣關係
位置編碼(Positional Encoding)用正弦/餘弦函數將位置資訊注入詞嵌入,彌補無循環結構帶來的順序缺失
殘差連接與層歸一化緩解深層網路梯度消失,穩定訓練並減少內部協變偏移(ICS)
⚠️ 易錯點

Transformer 自注意力機制的計算複雜度與序列長度的平方成正比 O(L²),處理極長序列時計算量與記憶體消耗巨大,這是其主要限制,因此才衍生出 Longformer、Reformer 等稀疏注意力/長序列 Transformer 變體。

Transformer 衍伸模型:BERT(僅用編碼器,雙向上下文預訓練,擅長語言理解)、GPT 系列(僅用解碼器,單向自迴歸,擅長文本生成)、T5(統一為 Text-to-Text 框架)、Vision Transformer(ViT,將圖像切成 Patch 序列輸入 Transformer)。

(5) 生成式模型

模型結構訓練目標優缺點
自編碼器(Autoencoder)編碼器(壓縮至瓶頸層)+ 解碼器(重構回原維度)最小化重構誤差優點:降維、特徵學習、去噪、異常偵測;缺點:只能重構而非生成全新多樣樣本
GAN(生成對抗網路)生成器(Generator)vs 判別器(Discriminator)零和博弈,生成器騙過判別器優點:生成品質極高;缺點:訓練不穩定,易發生模式崩潰(Mode Collapse)
🎯 核心觀念

自編碼器的目標是「重構」輸入(學習壓縮表示),GAN 的目標是「生成」全新樣本(透過對抗學習資料分佈)——這是兩種生成式模型最本質的差異,也是選擇題常考的辨析重點。

6. 主流深度學習框架比較

框架開發者核心特性定位
TensorFlowGoogle早期靜態計算圖,2.x 起支援 Eager Execution;跨平台部署(CPU/GPU/TPU/行動裝置/網頁)生產級部署生態完整(TFX、TensorFlow Serving)
Keras(已整合進 TensorFlow)高階 API,極簡、模組化,tf.keras快速原型開發
PyTorchMeta(Facebook AI Research)動態計算圖(Define-by-Run),Pythonic 介面,內建 Autograd 自動微分學術研究與快速實驗的主流選擇
JAXGoogle結合 NumPy 易用性、自動微分與 GPU/TPU 高效運算數值計算庫而非端到端框架
MXNetApache/AWS混合式程式設計(符號式+命令式)多語言綁定
🧠 記憶技巧

「TensorFlow 早期像寫劇本先寫完再演(靜態圖),PyTorch 像即興演出邊寫邊演(動態圖)」——這個對比是框架選型與考題辨析的最快記憶法。

📝 章節考題自測(先作答,再點開解答)

Q1. 在深度學習中,用於學習資料中局部特徵的網路架構通常是什麼?

(A) 循環神經網路(RNN) (B) 決策樹 (C) 卷積神經網路(CNN) (D) 隨機森林

解答與解析

參考 Ans: (C) 卷積神經網路(CNN)透過卷積層偵測局部特徵,尤其擅長處理影像、語音等具空間或時間結構的資料。

Q2. 下列何者是為了引入非線性,使神經網路能學習複雜模式的元件?

(A) 損失函數 (B) 激活函數 (C) 隱藏層 (D) 梯度下降

解答與解析

參考 Ans: (B) 激活函數為神經網路帶來非線性能力,若沒有激活函數,多層網路仍只是線性變換,無法表現複雜的關係。

Q3. Transformer 模型中用來捕捉輸入序列不同位置間依賴關係的核心機制是什麼?

(A) 池化機制 (B) 注意力機制(Attention) (C) 決策樹分支 (D) 激活函數

解答與解析

參考 Ans: (B) Transformer 核心在於注意力機制,透過計算序列中各元素間的關聯權重捕捉長距離依賴,徹底取代傳統 RNN 的循環架構。

Q4. 下列關於 LSTM 與 GRU 的敘述,何者正確?

(A) LSTM 只有兩個門,GRU 有三個門 (B) GRU 是 LSTM 的簡化版,只包含更新門與重置門 (C) 兩者皆無法處理長期依賴問題 (D) GRU 的參數量比 LSTM 多

解答與解析

參考 Ans: (B) GRU 是 LSTM 的簡化版本,只包含更新門(Update Gate)與重置門(Reset Gate)兩個門,計算複雜度與參數量比 LSTM 少,但在許多任務上仍能達到相當性能;LSTM 則有輸入門、遺忘門、輸出門三個門加上獨立細胞狀態。

Q5. 自編碼器(Autoencoder)與生成對抗網路(GAN)最本質的差異為何?

(A) 自編碼器目標是重構輸入,GAN 目標是透過對抗學習生成全新樣本 (B) 兩者訓練目標完全相同 (C) GAN 不能用於影像生成 (D) 自編碼器一定比 GAN 生成品質更好

解答與解析

參考 Ans: (A) 自編碼器透過最小化重構誤差學習壓縮表示,主要用於降維、特徵學習與異常偵測;GAN 透過生成器與判別器的對抗學習資料分佈,能生成全新且多樣的樣本,這是兩者最核心的差異。

Q6. 下列何者是 CNN 中「權重共享(Weight Sharing)」帶來的效果?

(A) 增加參數量以提升表達力 (B) 減少參數量並使模型具位置不變性 (C) 使模型無法辨識平移後的特徵 (D) 只能用於全連接層

解答與解析

參考 Ans: (B) 同一卷積核在輸入不同位置共享權重,減少了模型的參數數量,同時使 CNN 能辨識圖像中位置不變的特徵,例如無論物體在圖像何處都能被同一濾波器偵測到。

Q7. PyTorch 相較於早期 TensorFlow 最大的架構特點差異為何?

(A) PyTorch 使用靜態計算圖,TensorFlow 使用動態計算圖 (B) PyTorch 使用動態計算圖(Define-by-Run),運算定義時立即執行 (C) 兩者計算圖機制完全相同 (D) PyTorch 不支援自動微分

解答與解析

參考 Ans: (B) PyTorch 最大特點是動態計算圖,運算在定義時立即執行,行為更像標準 Python 代碼,簡化了調試與實驗流程;早期 TensorFlow(1.x)則採靜態計算圖,需先構建完整圖形再執行。

Q8. 機器學習模型若過度學習訓練資料中的雜訊,導致泛化能力下降,此現象稱為什麼?

(A) 欠擬合 (B) 過擬合 (C) 特徵縮放 (D) 梯度爆炸

解答與解析

參考 Ans: (B) 過擬合是指模型在訓練資料上表現極好,卻無法在未知新資料上維持預測效能,通常因模型過於複雜,學習到不具代表性的雜訊所致。

Q9. 感知器(Perceptron)最主要的限制是什麼?

(A) 無法處理任何分類問題 (B) 無法解決非線性可分問題,如 XOR 問題 (C) 計算成本過高,無法實作 (D) 只能用於迴歸任務

解答與解析

參考 Ans: (B) 單一感知器只能解決線性可分的分類問題,無法解決如 XOR 這類非線性可分的問題,這正是後續發展多層神經網路(MLP)以引入非線性能力的關鍵動機。

Q10. Transformer 架構的自注意力機制計算複雜度與序列長度的關係為何?

(A) 呈線性關係 O(L) (B) 與序列長度無關 (C) 與序列長度平方成正比 O(L²) (D) 呈對數關係 O(log L)

解答與解析

參考 Ans: (C) 自注意力機制的計算複雜度與序列長度的平方 O(L²) 成正比,處理極長序列時計算量與記憶體消耗巨大,這是原始 Transformer 的主要限制,也是 Longformer、Reformer 等長序列變體要解決的問題。