深度學習知識地圖 · 電腦視覺
ViT
Vision Transformer
觀念教學
Transformer 本來是讀句子的,ViT 把圖片也「唸」成一個句子 — 切成小方塊、每塊當一個詞,結果在大型資料集上打贏了 CNN。
核心觀念
ViT(Vision Transformer)把 Transformer 架構帶進影像辨識。作法:把圖片切成 16×16 的小方塊(patch),每塊攤平成向量、加上位置資訊,當成一個「詞」;再用自注意力機制讓所有方塊互相對看,以全局視角理解整張圖。在大型資料集上,表現超越傳統 CNN。
白話理解
CNN 像拿放大鏡,用滑動視窗一小塊一小塊掃描;ViT 像把拼圖打散攤在桌上,一眼同時看所有碎片之間的關係。前者見樹、後者見林 — 但要先看過夠多拼圖,才練得出這種眼力。
優缺點對照
- 優點一:全局視野 — 一開始就能建立整張圖任意兩處的關聯,不像 CNN 只看局部
- 優點二:擴展性好 — 模型與資料越大、效果越好,和規模法則很合拍
- 缺點一:需要大量資料 — 少了 CNN 內建的「局部性」先驗,小資料集通常輸 CNN
- 缺點二:計算量大 — 注意力要兩兩互看,方塊一多成本飆升
- 適用:影像分類、物件偵測、圖像分割(搭配大量資料效果最好);成績看 Top-1 Accuracy 與 ImageNet 準確率
🎯 口訣:ViT = 把圖切塊當句子讀;大資料稱王、小資料讓賢給 CNN。
iPAS 考點
易混淆對:CNN 對 ViT — 局部卷積、小資料友善,對上全局注意力、資料飢渴。題目描述「將影像切成 patch 序列輸入 Transformer」→ 就是 ViT。陷阱敘述:「ViT 在任何資料量下都優於 CNN」— 錯,小資料集上 CNN 常更強,「資料夠大才翻身」是 ViT 的標配註腳。