Skip to main content
QUICK REVIEW

[論文レビュー] Learning to Merge Tokens in Vision Transformers

Cédric Renggli, André Susano Pinto|arXiv (Cornell University)|Feb 24, 2022
Multimodal Machine Learning Applications被引用数 24
ひとこと要約

PatchMerger を導入し、ViT および V-MoE モデルのトランスフォーマーブロック間のトークン数を削減する学習可能なモジュールを提示。精度をほぼ維持しつつ、計算量を 40-60% 削減。

ABSTRACT

Transformers are widely applied to solve natural language understanding and computer vision tasks. While scaling up these architectures leads to improved performance, it often comes at the expense of much higher computational costs. In order for large-scale models to remain practical in real-world systems, there is a need for reducing their computational overhead. In this work, we present the PatchMerger, a simple module that reduces the number of patches or tokens the network has to process by merging them between two consecutive intermediate layers. We show that the PatchMerger achieves a significant speedup across various model sizes while matching the original performance both upstream and downstream after fine-tuning.

研究の動機と目的

  • Vision Transformers の大規模化に伴う計算コストの増大を動機づけ、対応する。
  • エンコーダーブロック間でトークンを統合する PatchMerger を提案し、トークン数を削減する。
  • 出力トークン数を不変に保ちつつ、異なる解像度でファインチューニングを可能にする。
  • PatchMerger が性能を維持しつつ、FLOPs および実行時間の大幅な節約を実現することを示す。

提案手法

  • PatchMerger は二つのエンコーダーブロックの間に学習可能な統合レイヤーを配置し、N 個の入力トークンから固定の小さなトークン数 M を出力する(例: 8)。
  • 層正規化後に学習可能な W ∈ R^{D×M} および入力 X ∈ R^{N×D} を用いて Y = softmax(W^T X^T) X を計算し、ボトムアップ型のアテンション風の統合を実行する。
  • 出力トークン数 M は入力トークン数 N に依存せず固定され、解像度を跨いだ柔軟なファインチューニングを可能にする。
  • PatchMerger に続くレイヤー正規化は、入力/出力トークン数が異なる場合のスケールを安定化する。
  • ViT および V-MoE バックボーンを JFT でトレーニングし、ImageNet への下流転移を評価する(Few-shot およびフルファインチューニング)。
  • 設計選択の評価: 配置場所(どのエンコーダーブロックに置くか)と出力トークン数の目標値(8 対他の値)。

実験結果

リサーチクエスチョン

  • RQ1Vision Transformers で、計算コストを削減しつつ精度を損なわずにトークンを統合できる軽量モジュールは存在するか?
  • RQ2コストと性能のトレードオフの観点から、ネットワーク内のどこでトークン統合を行うべきか?
  • RQ3PatchMerger はどの程度の出力トークン数を生成すべきか、効率と精度のバランスはどうか?
  • RQ4大規模データセットで前学習した後、下流タスク(例: ImageNet)への転移性能は保たれるか?
  • RQ5標準の ViT と mixture-of-experts(V-MoE)バックボーンに対して、PatchMerger のバリエーションはどのような性能になるか?

主な発見

TPU-DaysExoFLOPsJFT Prec@1INet/1shotINet/5shotINet/10shotINet/finetuned
ViT-H/142387.714275.9256.5661.3576.7679.1287.97
Merger ViT-H/111920.823464.1758.1562.7777.5379.8488.24
Merger ViT-H/141518.492207.3357.2762.0777.2579.2687.90
ViT-L/16651.181572.7453.3759.0473.9276.5186.84
Merger ViT-L/16388.44819.2953.7159.9974.9977.0187.01
ViT-L/3297.29196.1146.5250.3466.5969.5884.45
Merger ViT-L/3266.49114.3846.6151.2967.6170.3284.08
ViT-B/1695.04224.4544.5848.2163.5066.94
Merger ViT-B/1654.22117.2243.7549.4964.3567.15
ViT-B/3227.6256.0739.4840.6655.4758.9381.39
Merger ViT-B/3217.7632.9938.6240.5357.2360.0279.96
ViT-S/327.7212.2729.0529.3743.2146.3876.34
Merger ViT-S/324.837.3427.8226.4240.2743.7573.77
V-MoE-H/142735.704750.7360.1262.9578.0880.1088.41
Merger V-MoE-H/141520.592220.9659.8463.2177.5679.9788.10
V-MoE-L/16761.271666.1056.7661.4676.5378.6487.47
Merger V-MoE-L/16388.19823.5456.1461.7275.8678.0387.04
V-MoE-L/32110.65207.9449.6854.5269.9072.8085.05
Merger V-MoE-L/3267.11116.7048.7552.0368.9871.6384.46
V-MoE-B/16130.86250.7048.3154.9268.8471.81
Merger V-MoE-B/1654.78118.5946.6553.3367.5370.05
V-MoE-B/3236.8062.7543.1748.0462.4565.7283.27
Merger V-MoE-B/3218.5134.6141.7744.8860.2463.6280.57
V-MoE-S/3212.4014.4033.2635.4950.9054.1678.63
Merger V-MoE-S/325.337.9532.8533.5949.2352.7475.07
  • PatchMerger は、 backbone ViT および V-MoE モデルと比較して、upstream および downstream の性能をほぼ維持しつつ、計算量を大幅に削減する(大規模モデルで 40-60%)。
  • Merger ViT バリアントは FLOPs 対精度のパレートフロンティアで ViT の他の手法を上回り、特に大規模スケールで顕著な利得を示す(例: ViT-H/14 vs Merger ViT-H/14)。
  • ImageNet の完全ファインチューニング時において、Large Merger モデル(L/32, L/16, H/14)はバックボーンの性能と同等で、FLOPs/実行時間の大幅な節約を実現する(例: ViT-H/14: 51.6% FLOPs, 63.5% runtime)。
  • ViT-H/11 など初期トークン数が多い場合でも、Merger バリアントは標準バックボーンと比較して upstream、few-shot、ファインチューニング精度で優れており、コストは抑えられる。
  • 大型 V-MoE Merger モデルは、ImageNet での下流結果が同等または改善されつつ、計算量を substantial に削減する(約 53% FLOPs、44% runtime)。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。