CNN 與 ViT:一張圖怎麼變成模型的輸入|CMU 10-423 第 5 堂
語言模型先把文字變成 token,影像模型也需要把畫素整理成可運算的表示。
語言模型先把文字變成 token,影像模型也需要把畫素整理成可運算的表示。
CS231N Spring 2026 的 A3 占總成績 15%,四個 Colab notebook 把 L8、L12–L14、L16 各自落成一份實作:Q1 手寫 multi-head attention、Transformer decoder 做 COCO captioning,再組一個 ViT 在 CIFAR-10 上訓練;Q2 實作 SimCLR 的資料增強與對比損失,比較有無自監督預訓練的線性分類;Q3 寫 DDPM 的加噪、UNet、去噪損失、取樣與 classifier-free guidance,生成文字條件的 32×32 emoji;Q4 用預訓練 CLIP 做相似度、零樣本分類與檢索,再用 DINO 特徵只靠一幀標註做影片分割。本文只講題目結構、檔案與目標,不給解答。
CS231N Spring 2026 第 8 講從 RNN 翻譯模型的瓶頸出發,把 attention 抽象成一個作用在「向量集合」上的運算,再推到 self-attention、masked 與 multi-head,最後證明整層只是四次矩陣乘法。Transformer block 由 self-attention、LayerNorm、殘差與 MLP 組成;ViT 把 224×224 的圖切成 16×16 的 patch 當 token。講次結尾列出 2017 年後常見的四個改動:Pre-Norm、QK-Norm、SwiGLU 與 MoE。
CS231N 第 10 講把影片看成「2D+時間」的 T×3×H×W 張量,再沿著一條效率主線往下走:先在短片段上訓練、測試時平均多個片段;架構從逐幀 2D CNN、late fusion、3D CNN,到用光流分出動作的 two-stream 與把 2D 權重「充氣」成 3D 的 I3D;2021 年後換成 Transformer,但 token 數會爆炸,於是有 divided space-time attention、Video Swin、MViT 與 tubelet。最後一段擴展到時序定位、影音多模態、VideoLLM 與長影片理解,並用 HourVideo 指出這塊還差得遠。
第 16 講談 ViT:高解析度下 attention 成本隨解析度平方成長,window attention(Swin)把計算限制在局部視窗,EfficientViT 用 ReLU linear attention 把複雜度降到線性再補回局部與多尺度能力,SparseViT 剪掉不重要的視窗;自監督(對比學習、CLIP、MAE)解決 ViT 需要大量標註的問題;最後 HART 用離散 token 加殘差 diffusion,比 diffusion 模型高出數倍吞吐量。第 17 講針對三種冗餘:GAN 的 2D 空間冗餘(GAN Compression、AnyCost GAN、DiffAugment)、影片的時間冗餘(TSM 零 FLOPs 的時間建模)、點雲的 3D 稀疏(PVCNN、SPVCNN、BEVFusion)。Fall 2026 排程已拿掉第 17 講。
CME295 最後一講 128 頁投影片分三段:用八張圖複習前八講、Transformer 怎麼用在影像上(ViT 與兩種 VLM 接法)、以及一次吐出多個 token 的 masked diffusion LLM,最後談研究與應用的下一步。這堂不在考試範圍;2026 版把 diffusion LLM 拉成獨立一講,第 9 講改以多模態為主。
2021 是 Transformer 正式入侵電腦視覺的元年——Swin Transformer 拿下 ICCV Best Paper,DINO 證明自監督 ViT 能自動學會物件分割,NeRF 從單篇論文變成一整個子領域。CVPR 和 ICCV 都因疫情改為全線上舉辦,但這一年產出的論文深遠影響了此後整個 CV 領域的架構選擇。