[論文まとめ]Model soups: averaging weights of multiple fine-tuned models improves accuracy without increasing inference time

アンサンブル

元論文

Model soups: averaging weights of multiple fine-tuned models improves accuracy without increasing inference time
The conventional recipe for maximizing model accuracy is to (1) train multiple models with various hyperparameters and (2) pick the individual model which perfo...

概要

・従来、モデルの精度を最大化するためには、(1)様々なハイパーパラメータで複数のモデルをし、(2)最も良い性能を示す個々のモデルを選び、残りを破棄する、という方法があります
・本論文では、大規模な事前学習済みモデルのファインチューニングとして、第2段階目の方法を再検討します
・我々は、異なるハイパーパラメータの構成でファインチューニングされた複数のモデルの重みを平均化することで、精度と頑健性が向上することを示します
・従来のアンサンブルとは異なり、推論コストやメモリコストをかけることなく、多くのモデルを平均化することができます
・CLIP、ALIGN、JFTで事前学習したViT-Gを利用することで、我々のModel SoupはImageNetで最良のモデルよりも大幅に改善し、90.94%のトップ1精度を達成しました
・さらに、このModel Soupのアプローチは、複数の画像分類や自然言語処理タスクに拡張され、分布外性能を向上させ、新しい下流タスクのゼロショット性能を向上させることを示します

方法

このセクションでは、Model Soupの3つのレシピ、uniform、greedy、learnedを取り上げますが、greedy soupが主な方法です。本節で説明する方法を表 2 にまとめる。入力データ x とパラメータ θ∈Rdを持つニューラルネットf(x, θ)を考えます。ファインチューニングは標準的なニューラルネットワークの学習と似ていますが、重要な違いがあります。それは、パラメータは事前学習で見つけたものに初期化されます。
ハイパーパラメータ構成には、オプティマイザの選択、データ拡張、学習反復、およびデータ順序を決定するランダムシードが含まれます。ハイパーパラメータ構成 h1、…、hk に対して、θi = FineTune(θ0, hi)とします。従来は、検証データに対して、最も高い精度を達成するパラメータθjを選択し、残りのパラメータは破棄されていました。その代わりに、Model Soups f(x, θS)は、θiの平均を使用します。uniform soupは、すべてのファインチューニングされたモデルθiを平均化することによって構築されるので、S = {1, …, n}です。ハイパーパラメータによっては、低精度のモデルを生成してしまうことがあります。これは、greed soupを用いることで、回避できます。
greed soupは、検証データでの性能が向上した場合にのみ、モデルをスープに残すことによって構築されます。この手順を実行する前に、検証データの精度の高い順にモデルを並べ替えます。したがって、greed soupは、保留された検証セットで最も良い個々のモデルより悪くなることはありません。

結果

ここでは、JFT-3Bで事前学習されたモデルを用いて、ImageNet上でファインチューニングを行って、検証します。学習率、減衰スケジュール、損失関数、最小クロップサイズを変化させ、オプションでRandAugment [20]、mixup [103]、CutMix [101]を適用しています。また、シャープネスを考慮した最小化(SAM)[31]を用いて4つのモデルを学習させます。ハイパーパラメータの詳細については付録 B.3.3 を参照されたい。各モデルの学習実行において,0.999 (low EMA) と 0.9999999 (high EMA) の減衰係数で計算された重みの指数移動平均 (EMA) [85] を保存します。一般的に、高EMAが個々の学習実行の過程で最高の精度を提供するのに対し、greed soupとgreed ensembleの両方は、低EMAのパラメータに適用した場合に高い検証精度を得ることができます。我々は、EMA減衰値0.999で学習したモデルでgreed soupとgreed ensembleを実行します。

Related work

モデルの重みの平均化は、凸最適化および深層学習においてよく使われるアプローチです。ほとんどのアプリケーションは、同じ最適化軌道に沿ってモデルを研究しています。対照的に、Frankleら[32]、Neyhaburら[67]、MatenaとRaffel[62]は、初期化を共有するが独立して最適化されるモデルの重み付け平均を行います。Frankleら[32]は、同じハイパーパラメータ構成でデータ順序が異なるモデルのペアをゼロから学習する場合、重みを補間するとランダムな精度より良くならないことを発見しました。しかし、2つのモデルが最適化の軌跡の一部を共有している場合、それらを平均化しても精度は落ちません。同様に、Neyshaburら[67]は、2つのモデルが同じ事前学習された初期化でファインチューニングされるとき、補間されたモデルは少なくとも終点の精度を達成することを実証している。我々は今までとは違い、様々なハイパーパラメータ構成を持つ多くのモデルの平均化を考慮します。

タイトルとURLをコピーしました