[論文レビュー] TerViT: An Efficient Ternary Vision Transformer
TerViT は、8ビットから2ビットの重みへの段階的訓練とチャネルごとの3値化を導入することで、最小限の精度低下で高いモデル圧縮を達成する新しい3値ビジョントランスフォーマー(ViT)を提案する。Swin-S モデルのサイズを13.1MBに削減しながら、ImageNet で79.5%のTop-1精度を維持し、先行する2ビット手法を最大4%上回り、フル精度モデルとの差を埋めることに成功した。
Vision transformers (ViTs) have demonstrated great potential in various visual tasks, but suffer from expensive computational and memory cost problems when deployed on resource-constrained devices. In this paper, we introduce a ternary vision transformer (TerViT) to ternarize the weights in ViTs, which are challenged by the large loss surface gap between real-valued and ternary parameters. To address the issue, we introduce a progressive training scheme by first training 8-bit transformers and then TerViT, and achieve a better optimization than conventional methods. Furthermore, we introduce channel-wise ternarization, by partitioning each matrix to different channels, each of which is with an unique distribution and ternarization interval. We apply our methods to popular DeiT and Swin backbones, and extensive results show that we can achieve competitive performance. For example, TerViT can quantize Swin-S to 13.1MB model size while achieving above 79% Top-1 accuracy on ImageNet dataset.
研究の動機と目的
- リソース制約のあるデバイスにおけるビジョントランスフォーマーの高い計算コストとメモリ使用量に対処すること。
- 実数値パラメータと3値パラメータの間の大きな損失関数のギャップにより、ViT の3値量子化に伴う最適化の難しさを克服すること。
- チャネル間の重み分布のばらつきを考慮したチャネルごとの3値化を導入することで、量子化の安定性と性能を向上させること。
- 8ビットモデルから段階的に訓練を開始することで、実数値と3値ViT間の最適化ギャップを埋めること。
- 高い圧縮比と最小限の精度低下を実現する低ビットViT量子化における最先端のパフォーマンスを達成すること。
提案手法
- 段階的訓練スキームを導入:まず8ビットViTを訓練し、それをプロキシとして使用して最終的な3値ViTを初期化・訓練することで、最適化の不安定性を低減する。
- チャネルごとの3値化を適用し、各チャネルの重み分布を個別に3値(±1, 0)にマッピングする独自の量子化区間を用いる。
- パッチエンベッディング層や分類ヘッド層のメモリとFLOPsを削減するために、8ビット活性化量子化を採用し、活性化の精度を維持する。
- ヘシアン固有値解析により、高感度であると判明した最初の(パッチエンベッディング)および最後の(分類ヘッド)層を8ビット形式で保存する。
- 2段階の訓練プロセスを採用:まず8ビットモデルを事前学習し、次に量子化感知学習(QAT)を用いて3値モデルを微調整することで収束を安定化させる。
- 損失関数のランドスケープを可視化し、3値モデルが8ビットまたは実数値モデルよりも急で複雑な損失関数の形状を持つことを示し、段階的訓練の必要性を裏付ける。
実験結果
リサーチクエスチョン
- RQ1実数値と3値パラメータの間の大きな最適化ギャップがあるにもかかわらず、3値量子化をビジョントランスフォーマーに効果的に適用できるか?
- RQ28ビットモデルから段階的に訓練することで、直接的な3値学習に比べ、3値ViTの収束性とパフォーマンスが向上するか?
- RQ3チャネルごとの3値化により、チャネルごとの重み分布のばらつきに適応することで、量子化の安定性とパフォーマンスが向上するか?
- RQ4本手法は、ImageNet における圧縮比と精度の点で、既存の2ビットおよび8ビット量子化ベースラインと比較してどのように差をつけるか?
- RQ5最初および最後の層を量子化した場合のモデルパフォーマンスへの影響は何か? また、精度と効率のバランスを考慮して、これらの層に8ビット精度を適用できるか?
主な発見
- TerViT は、Swin-S モデルのサイズを13.1MBに圧縮し、15.25倍の圧縮比を達成し、ImageNet で79.5%のTop-1精度を実現。フル精度モデルとの精度差は4%以内に収束した。
- DeiT-S では、14.70倍の圧縮比で74.2%のTop-1精度を達成し、ベースライン手法であるTWNに比べ4.0%高い性能を示した。
- DeiT-B では、15.25倍の圧縮比で76.1%のTop-1精度を達成し、TWNベースラインの72.9%を3.2%上回った。
- 3値ViTと実数値モデルの間の性能ギャップを縮小し、同じモデルサイズで実数値のDeiT-Tを上回る3.9%の精度向上を達成した。
- 8ビットに量子化された最初および最後の層は、32ビットと比較してわずか0.3%の精度低下しか引き起こさないため、性能を維持しながらビット幅を削減できることが検証された。
- チャネルごとの3値化により、量子化の安定性が向上し、トレーニング後の重み分布におけるチャネルごとの絶対平均(CAM)が低く、標準偏差(SDAM)が高いことが、実証された。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。