從神經網路到 Transformer:層級、序列與 Attention
本頁為依教材與考古題整理的原創摘要;考古題答案經技術覆核,但不是官方答案。
考古題證據邊界: im-it-ai-cnn-rnn-sequence 目前沒有 direct primary past-paper refs,屬 foundational coverage;對應 cards 不掛考古 refs。
第一次接觸也沒關係
這堂先懂這些詞
先記住白話意思,不必急著背英文。看到正文時,再把正式名稱接回來。
注意力機制與 Transformer
也會看到:attention、self-attention、Transformer、注意力機制attention 讓模型依當下任務衡量不同內容的重要性,Transformer 以此處理序列關係。
- 生活例子:
- 讀代名詞「他」時,回頭特別注意前文可能指的是誰。
- 別搞混:
- attention 不是模型具有人的專注或理解;Transformer 也不只用於文字。
反向傳播與最佳化器
也會看到:backpropagation、gradient、optimizerBackpropagation 計算各參數對誤差的影響,optimizer 再依這些 gradients 更新參數。
- 生活例子:
- 像先查出每個旋鈕對成品偏差的影響,再決定各旋鈕要轉多少。
- 別搞混:
- Backpropagation 計算梯度;真正套用更新規則的是 optimizer,兩者角色不同。
CNN、RNN 與 LSTM
也會看到:CNN、convolutional neural network、RNN、LSTMCNN 擅長利用局部與共享模式;RNN/LSTM 以序列狀態處理前後次序資訊。
- 生活例子:
- CNN 像在照片各處找同一種圖案,RNN/LSTM 像讀句子時保留前文線索。
- 別搞混:
- 這是典型設計偏好,不代表 CNN 只能看圖片或 RNN 一定最適合所有序列。
大型語言模型與 token
也會看到:LLM、Large Language Model、token、GPT、大型語言模型LLM 從大量 token 序列學習下一個 token 的機率,token 是模型切分文字的基本單位。
- 生活例子:
- 像根據前文玩的超大型接龍,但每一步選的是文字片段而非必然完整單字。
- 別搞混:
- token 不等於一個中文字或一個英文單字;流暢輸出也不保證事實正確。
神經網路
也會看到:neural network、layer、weight、activation function、神經網路由多層可調參數的計算單元組成,透過資料調整權重來近似複雜關係。
- 生活例子:
- 像一排排篩選站,各站把前一站訊息重新加權後再傳下去。
- 別搞混:
- 名稱來自生物啟發,但不是大腦的完整複製品。
以 layered representation 與 training 為底座,比較 CNN 的局部共享特性、RNN/LSTM 的序列狀態,再進入 Transformer self-attention 的 token 關聯。
先抓住這幾件事
- 說明 deep neural network 的 layers 與 representations
- 區分 backpropagation 計算 gradients 與 optimizer 更新參數
- 比較 CNN 與 RNN/LSTM 的典型 inductive biases
- 解釋 self-attention 如何聚合 token 間資訊
先想像這個場景
校園資料處理小組
學校要處理照片與長篇文字:影像小組反覆搜尋局部圖樣,紀錄員依序讀取並保留狀態,另一組直接比較全段文字中詞彙的關聯。
先別急著往下看,花十秒想一想:
若任務需要直接建模長文中相隔很遠的 tokens,哪種 mechanism 最直接建立彼此關聯?
把故事換成電腦語言
| 生活中的角色 | 對應到 | 技術概念 |
|---|---|---|
| 多層工作站逐步提取較抽象特徵 | Deep neural network layered representations | |
| 錯誤訊號從產出端往前計算每個參數的影響 | Backpropagation computes gradients | |
| 影像小組用共用檢視器掃描局部圖樣 | CNN shared filters and local patterns | |
| 紀錄員依序讀取並攜帶先前狀態 | RNN/LSTM hidden state | |
| 讀者比較每個詞與整段其他詞的關聯 | Transformer self-attention |
題目出現這些字,先想到
- Deep 通常指多個 representation layers,不是資料量或 fan-in/out。
- Backpropagation 計算 gradients,optimizer 依 gradients 更新 parameters。
- 局部 spatial patterns 常對應 CNN;依序更新狀態常對應 RNN/LSTM。
- Self-attention 依內容加權聚合 tokens,可直接連結遠距關係。
1.Deep learning 的 deep 指層級表示
Neural network 由參數化 units 與 layers 組成;training 依 loss 調整 weights。Deep 通常指多個 representation layers,而不是資料量、標籤數或單一 node 的 fan-in/fan-out。
- Forward pass 產生 prediction
- Backpropagation 計算 gradient
- Optimization 更新 parameters
- AlphaGo 的關鍵技術包含 deep learning 與 search
2.CNN 與 RNN 處理不同結構偏好
CNN 以共享 filters 擷取局部 pattern,典型用於 images;RNN 逐步更新 hidden state 來處理 sequence,LSTM/GRU 以 gating 改善長期依賴。這是常見 inductive bias,不是用途硬限制。
- CNN parameter sharing 支援位置重複 pattern
- RNN state 依 sequence order 更新
- Embedding 把離散 token 映成向量
- 本節目前沒有 direct primary refs
3.Transformer 用 self-attention 建立關聯
Self-attention 讓每個 token 依內容對其他 tokens 分配權重,能直接建模遠距關係。Transformer 還包含 position information、feed-forward layers、residual connections 與 normalization,不能把整個架構縮成 attention 一項。
- Attention 比較 query、key 並聚合 value
- 距離不再依 recurrent steps 傳遞
- Attention weight 不等於因果解釋
- Transformer 還有 position information、feed-forward layers、residual connections 與 normalization
4.架構是 inductive bias,不是用途硬分類
CNN 對局部共享 pattern、RNN 對序列狀態、self-attention 對 token 關聯各有典型偏好,但現代系統可混合架構並應依資料、任務、成本與評估結果選擇。
- CNN 也能處理 sequence
- Transformer 也能處理 image/audio modalities
- 架構名稱不能代替實驗評估
一起拆題目
範例 1:把三項任務配對:辨識照片局部紋理、逐步處理感測序列、比較長文相隔很遠的詞。
- 局部 spatial patterns 對應 CNN。
- 依序更新狀態對應 RNN/LSTM。
- 直接衡量 token 關聯對應 Transformer self-attention。
所以答案是:依序是 CNN、RNN/LSTM、Transformer;這是典型偏好而非絕對限制。
範例 2:一個 neural network 已用 backpropagation 算出每個 parameter 的 gradient。下一步誰負責實際改變參數?
- Backpropagation 負責對 loss 求 gradient。
- Optimizer 依學習率與更新規則使用 gradients。
- 新 parameters 再用於下一次 forward pass。
所以答案是:Optimizer 負責依 gradients 更新 parameters;backpropagation 本身負責計算 gradients。
這裡最容易選錯
- 把 deep 誤解成資料多或 fan-in 大
- 把 backpropagation 與 optimizer 當同一步
- 把 CNN、RNN、Transformer 當成互斥用途分類
- 認為 self-attention 就是整個 Transformer
- 把 attention weights 當成完整因果解釋
換你快速判斷
先在心中作答,再展開答案。答不出來時,回頭找本課的對照關係。
1Deep learning 的「deep」通常指什麼?
指多個 representation/processing layers,不是資料量、tag 數或單一 node fan-in/fan-out。
Layered representations 逐步把輸入轉成較抽象特徵。
2Training neural network 時 backpropagation 與 optimizer 各做什麼?
Backpropagation 計算 loss 對參數的 gradients;optimizer 依 gradients 更新參數。
這是 reviewed ML/NLP sources 支撐的基礎卡;AlphaGo 題只識別 deep learning,因此不掛該題。
3CNN 的典型 inductive bias 是什麼?
以共享 filters 擷取局部 pattern,常適合 spatial data 如 images。
這是基礎補充;目前沒有 direct primary past-paper ref。
4RNN/LSTM 如何處理 sequence?
依順序更新 hidden state;LSTM 以 gates 控制資訊保留與遺忘。
這是基礎補充;目前沒有 direct primary past-paper ref。
5Self-attention 的主要功能是什麼?
讓每個 token 依內容衡量序列中其他 tokens 的重要性並聚合資訊。
它能直接連結遠距 token,但 attention weight 不等於因果解釋。
6Transformer 是否只有 self-attention?
不是;還包含 position information、feed-forward layers、residual connections 與 normalization 等。
這是 reviewed CS224N 支撐的架構卡;self-attention 題未直接檢驗其他元件,因此不掛該題。
最後用考古題驗證
本課連結的題目都已通過可重現的技術覆核,可逐題練習與判分。
開始本課考古題練習參考來源
- Machine Learning 2021 Spring — 李宏毅
- CS224N: Natural Language Processing with Deep Learning — Stanford NLP Group