2026年5月12日 星期二

An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale (ViT) 深度解析

在深度學習蓬勃發展的過程中,卷積神經網路(Convolutional Neural Network,CNN)長期以來一直是電腦視覺領域的主流架構,特別是在影像分類、物體檢測等任務上,已達到極為優異的表現。與此同時,Transformer 架構自 2017 年提出以來,迅速成為自然語言處理(Natural Language Processing,NLP)不可或缺的基石,尤其以其自注意力機制(Self-Attention)在序列建模上的優勢,成功取代了許多傳統循環神經網路(RNN)及卷積方法。然而,Transformer 在純影像辨識任務中的應用並不普遍,因為影像的高維度及空間特性,使得直接套用 NLP 中的 Transformer 架構有較大挑戰。

研究背景與動機

傳統上,視覺系統中多使用卷積層提取局部特徵,藉由層層堆疊形成對複雜空間結構的理解。近期一些研究則嘗試將注意力機制與 CNN 結合,甚至用 Transformer 元件替代 CNN 的部分模組,期望引入 Transformer 在序列建模的長距依賴優勢。然而,此類方法均未脫離 CNN 的架構框架。Dosovitskiy 等人在《An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale(ViT)》中提出:能否完全捨棄卷積網路,使用純 Transformer 架構完整處理影像識別任務?這不僅是架構上的創新挑戰,也是深刻檢驗 Transformer 在非 NLP 領域泛化能力的重要一步。

核心方法與創新

ViT 的核心思想在於將影像視為一系列非重疊的固定大小補丁(patches),以 16x16 像素為一個補丁單位,將整張影像拆解成多個 Patch Tokens。每個補丁會被線性展開並映射到一個特徵向量,與 NLP 中的詞向量(word embeddings)相似,形成一個「視覺詞」序列,之後將序列餵入標準的 Transformer 編碼器。

具體步驟包括:

  • 將輸入影像(例如 224x224 RGB)切分為大小固定的 16x16 補丁,得到約 196 個 Patch Tokens。
  • 對每個補丁進行線性嵌入,並加入位置編碼(positional embeddings),以保留影像中的空間資訊。
  • 引入一個特殊的分類標記(class token),類似 BERT 的做法,在 Transformer 編碼完成後,其輸出代表整張影像的全局表示。
  • 使用多層 Transformer 編碼器堆疊(包含多頭自注意力層和全連接前饋網路層)。
  • 最後利用分類標記的輸出,餵入線性分類器獲得最終影像類別判斷。

ViT 藉由大規模資料預訓練(通常使用 JFT-300M 這類超大規模影像資料集)來克服 Transformer 自身對大量資料的需求。此方式與 BERT 事先在海量文字資料上預訓練,再微調於特定任務如情感分析類似。

技術創新要點包括:

  • 全序列化:完全不使用任何卷積操作,純 Transformer 架構下的影像識別。
  • Patch Embedding 機制:將影像劃分為類似 NLP 序列的視覺詞,使得 Transformer 能直接應用。
  • 高效計算:相較於 CNN,Transformer 的計算複雜度與序列長度平方成正比,透過適度的 Patch 大小降低序列長度,達成效能與效率的平衡。
  • 重視大數據瓶頸:證明 ViT 在充足的預訓練資料和計算資源下,能超越傳統 CNN 架構。

主要實驗結果

在實驗部分,ViT 以 ImageNet-1k、ImageNet-21k 以及 JFT-300M 等大型影像分類資料集進行預訓練,並微調於 ImageNet 及多個中小型資料集(CIFAR-100、VTAB 等)。核心發現包含:

  • 在大規模預訓練下,ViT 超越了目前最先進的卷積網路:如 ResNet、EfficientNet 等架構。
  • 訓練計算資源效率更高:雖然 Transformer 本身計算複雜,但因為避免重複卷積計算,且在序列長度受控的情況下,ViT 在訓練速度及資源使用上相當可觀。
  • 轉移學習性能優越:經過微調後在多項視覺任務中表現優異,顯示 ViT 的通用性強、特徵表達能力優良。
  • 模型規模與表現間的關係清晰:更大架構、更多層次的 Transformer 能帶來更好結果,但得配合更大數據集預訓練。

該論文亦對比了其他視覺 Transformer 變體,分析該架構的侷限,例如在小資料集訓練不足時表現較差,以及對位置編碼敏感等問題。

對 AI 領域的深遠影響

ViT 的問世,改變了 AI 研究界對於 Transformer 與 CNN 在視覺領域角色的既有認知。從以下幾個層面闡述其深遠影響:

  • 架構統一化趨勢:ViT 證明 Transformer 可以作為一種通用模型架構,橫跨自然語言與視覺領域。後續研究逐漸發展多模態融合模型及強化學習應用,皆受 ViT 啟發。
  • 促進大規模預訓練技術普及:ViT 展現大型預訓練資料集對於視覺模型性能提升的重要性,帶動更多研究投入於資料蒐集與自監督學習方法的開發,以期降低標註成本並擴大數據規模。
  • 點燃了純注意力網路的研究熱潮:ViT 推動了後續包括 Swin Transformer、DeiT 等多個變種出現,這些模型針對 Transformer 在影像任務中所面臨的計算量和空間結構處理提出優化策略,逐步繞過 CNN 統治地位。
  • 應用場景擴展與革新:隨著 ViT 顯示出強勁的表現,Transformer 基礎的視覺模型被引入醫療影像分析、衛星影像識別、自動駕駛等關鍵領域,推動這些產業的智能化升級。

總結

《An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale》這篇論文開創了純 Transformer 架構應用於大規模影像識別的先河,透過將影像拆分為固定大小補丁並視為序列,成功挑戰 CNN 在視覺領域的霸主地位。其架構設計簡潔卻充滿巧思,顯示出當擁有充足資料和計算資源時,Transformer 不僅可取代 CNN,更能在多項影像分類任務上超越其性能。此一創新不僅擴展了 Transformer 的應用版圖,也為未來跨模態深度學習模型的發展奠定基礎,可謂 AI 視覺研究的一大里程碑。


論文資訊
📄 An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale (ViT)
👥 Dosovitskiy, Beyer, Kolesnikov, Weissenborn et al.
🏆 ICLR 2021 · Outstanding Paper
🔗 arxiv.org/abs/2010.11929

沒有留言:

張貼留言