[論文レビュー] How to Fine-Tune Vision Models with SGD
この論文は、分布シフト下で視覚変換器およびConvNeXtにおいてSGDがAdamWに劣る理由が、埋め込み層における割合が著しく大きい勾配に起因することを特定している。この小さな層(パラメータの1%未塔)を固定することで、SGDはメモリを著しく削減しながらAdamWと同等またはそれ以上の性能を達成し、5つの分布シフトベンチマークで最先端の精度を達成した。
SGD and AdamW are the two most used optimizers for fine-tuning large neural networks in computer vision. When the two methods perform the same, SGD is preferable because it uses less memory (12 bytes/parameter with momentum and 8 bytes/parameter without) than AdamW (16 bytes/parameter). However, on a suite of downstream tasks, especially those with distribution shifts, we find that fine-tuning with AdamW performs substantially better than SGD on modern Vision Transformer and ConvNeXt models. We find that large gaps in performance between SGD and AdamW occur when the fine-tuning gradients in the first "embedding" layer are much larger than in the rest of the model. Our analysis suggests an easy fix that works consistently across datasets and models: freezing the embedding layer (less than 1% of the parameters) leads to SGD with or without momentum performing slightly better than AdamW while using less memory (e.g., on ViT-L, SGD uses 33% less GPU memory). Our insights result in state-of-the-art accuracies on five popular distribution shift benchmarks: WILDS-FMoW, WILDS-Camelyon, BREEDS-Living-17, Waterbirds, and DomainNet.
研究の動機と目的
- 分布シフトデータセットで微調整する際、AdamWがSGDを上回る理由を理解すること。
- 現代の視覚アーキテクチャにおいてSGDとAdamWの性能差の根本的要因を同定すること。
- AdamWの性能を同等または上回る、最小限でメモリ効率の良いSGDの修正法を提案すること。
- メモリや計算コストを増加させることなく、分布シフトベンチマークで最先端の結果を達成すること。
提案手法
- SGD微調整中に最初の埋め込み層(パラメータの1%未塔)を固定し、高勾配初期更新への過学習を防ぐ。
- 複数のモデルとデータセットで、モーメンタム有無、埋め込み層の固定有無を比較する。
- 層ごとの初期化時勾配ノルムを分析し、埋め込み層に顕著に大きな勾配が生じることを特定する。
- パラメータノルムおよび√(パラメータ数)で勾配を正規化し、各層間での相対的更新量を評価する。
- メモリ使用量をプロファイルし、提案手法がAdamWに比べてどれほどメモリ利点があるかを定量的に評価する。
- 5つの分布シフトベンチマークで性能を評価:WILDS-FMoW、WILDS-Camelyon、BREEDS-Living-17、Waterbirds、DomainNet。
実験結果
リサーチクエスチョン
- RQ1なぜ分布シフトデータセットで微調整する際、AdamWが視覚変換器およびConvNeXtにおいてSGDを上回るのか?
- RQ2このような状況下でSGDがAdamWに劣る原因となる、モデルの構造的または最適化的特性は何か?
- RQ3小さな層であるがゆえに、埋め込み層を固定することでSGDの微調整性能が一貫して向上するのか?
- RQ4モーメンタムなしのメモリ効率の良いSGDの変種が、標準SGDおよびAdamWを上回るOOD一般化性能を達成できるか?
- RQ5埋め込み層を固定することで得られる性能向上は、勾配爆発の低減によるものか、それともAdamWの適応的学習率のおかげの独立した改善か?
主な発見
- CLIP ViT-B/16では、AdamWは標準SGDに比べてインハウス精度で2.1%高く、アウトオブ分布精度で8.1%高い。
- 埋め込み層を固定することで、SGDはAdamWの性能に達するか、それを上回り、全モデル・全データセットで76.7%のOOD精度を達成した。
- ViT-B/16およびViT-L/14では、AdamWのメモリオーバーヘッドはSGD(埋め込み層固定、モーメンタムなし)に比べてそれぞれ18%および49%高い。
- 埋め込み層を固定し、モーメンタムなしのSGDは76.9%のOOD精度を達成し、AdamWおよびベースラインSGDをわずかに上回った。
- 勾配解析により、SGDで事前学習したモデルでは埋め込み層の勾配が他の層に比べ2〜3倍大きく、AdamWで事前学習したモデルでは10倍以上も大きいことが判明した。
- 埋め込み層を固定することでSGDとAdamWの性能差が解消されたことから、これがSGDの劣化の主な要因であると示唆された。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。