オプティマイザーは最適化アルゴリズムであり、ニューラル ネットワークのトレーニングにおいて重要な役割を果たします。近年、研究者は多数の手動オプティマイザーを導入しましたが、そのほとんどは適応型オプティマイザーです。 Adam および Adafactor オプティマイザーは、特に言語、視覚、マルチモダリティの分野で、依然としてニューラル ネットワークのトレーニングの主流を占めています。
オプティマイザを手動で導入することに加えて、プログラムが最適化アルゴリズムを自動的に検出するというもう 1 つの方向性があります。以前に、ニューラル ネットワークをトレーニングすることによって最適化プログラムを発見する L2O (最適化の学習) を提案した人がいます。ただし、これらのブラックボックス オプティマイザーは通常、限られた数の小さなタスクでトレーニングされるため、大規模なモデルに一般化するのが困難です。
強化学習やモンテカルロ サンプリングを適用して、新しいオプティマイザーを発見するなど、他のアプローチを試みた人もいます。ただし、検索を簡素化するために、これらの方法では通常、検索スペースが制限されるため、他のオプティマイザーを発見できる可能性が制限されます。したがって、現在の手法はまだ SOTA レベルに達していません。
近年では、タスクを評価する際に機械学習パイプラインのすべてのコンポーネントを検索しようとする AutoML-Zero について言及する価値があります。これは、オプティマイザーの発見に非常に役立ちます。
##この記事では、Google と UCLA の研究者が、プログラム検索を通じてディープ ニューラル ネットワーク トレーニングの最適化アルゴリズムを発見し、その後 Lion(Evo#) を発見する方法を提案しています。 Lved Sign Momentum) オプティマイザー。この目標を達成するには、2 つの課題に直面します。1 つは、無限にまばらなプログラム空間で高品質のアルゴリズムを見つけること、2 つ目は、小さなタスクから大規模な SOTA タスクまで一般化できるアルゴリズムを選択することです。これらの課題に対処するために、この研究では、ホット スタートとリスタートによる進化的検索、抽象実行、ファネル選択、プログラムの簡素化など、さまざまな手法が採用されています。
この論文の筆頭著者である Xiangning Chen 氏は次のように述べています: 私たちのシンボリック プログラム検索により、勢いだけを追跡する効果的なオプティマイザー、Lion が見つかりました。 Adam と比較して、88.3% のゼロサンプル精度と 91.1% の微調整された ImageNet 精度を達成し、さらに最大 5 倍 (ViT と比較)、2.3 倍 (拡散モデルと比較)、2 倍 (LM と比較) の精度を達成しました。)効率。
Lion は、さまざまなモデル (Transformer、MLP、ResNet、U-Net、および Hybrid) およびタスク (画像分類、ビジュアル言語対照学習、普及、言語モデリング、微調整)。注目に値するのは、この研究では、BASIC で Adafactor を Lion に置き換えることにより、ImageNet 上で 88.3% のゼロショット精度と 91.1% の微調整精度を達成し (Pham et al., 2021)、以前の SOTA 結果をそれぞれ 2% と 0.1 上回りました。 .%。
さらに、Lion は JFT の事前トレーニング計算を最大 5 倍削減し、拡散モデルのトレーニング効率を 2.3 倍向上させ、より良い FID スコアを達成します。言語モデリングで同等以上のパフォーマンスを実現し、計算量を最大 2 倍節約します。
Twitter ユーザー crumb 氏は次のように述べています。彼は Google の Lion オプティマイザーを使用して 1 億 2,400 万パラメータの GPT2 モデルをトレーニングしたところ、Adam と同じ損失を達成するのに必要なステップ数が 37.5% 削減されたことがわかりました。
出典: https://twitter.com/aicrumb/status/1626053855329898496#アルゴリズムの記号的発見
この論文では、プログラムの形式で記号表現を使用することで、次の利点があります。 (1) に準拠しています。アルゴリズムはプログラムとして実行する必要があるという事実、(2) ニューラル ネットワークなどのパラメトリック モデルと比較して、プログラムなどの記号表現は分析、理解、新しいタスクへの移行が容易である、(3) プログラムの長さを使用できるさまざまなプログラムの複雑さを推定し、よりシンプルで、多くの場合、より汎用性の高いプログラムを選択しやすくします。この作業はディープ ニューラル ネットワーク トレーニングのオプティマイザーに焦点を当てていますが、このアプローチは一般に他のタスクにも適用できます。
下の図では、プログラム 2。この簡略化されたコード スニペットは、AdamW と同じシグネチャを使用して、検出されたアルゴリズムのメモリ フットプリントが小さいか等しいことを確認します。プログラム 3 にはサンプル表現が示されています。アダムのW.この研究では、無限かつ疎な検索空間によってもたらされる課題に対処するために、次の手法を採用しています。第一に、正則化はシンプルでスケーラブルであり、多くの AutoML 検索タスクで成功するという理由で適用されます。第二に、プログラム空間の冗長性を簡素化するためです。最後に、検索コストを削減するために、この研究ではモデルのサイズと数を削減します。コストを削減するためにターゲットタスクから離れたトレーニング例を示します。
左: 5 つの進化的探索実験の平均値と標準誤差を示します。右: 検索が進むにつれて、冗長ステートメントの割合とキャッシュ ヒット率の両方が増加します。 Lion の導出と分析
研究者らは、オプティマイザー Lion はシンプルでメモリ効率が高く、検索とメタ検証において強力なパフォーマンスを備えていると述べています。
派生
検索とファネルの選択プロセスにより、元のプログラムから派生したプログラム 4 が生まれました。 8 (付録 ) は、冗長なステートメントを自動的に削除したものです。研究者はさらに単純化して、プログラム 1 の最終アルゴリズム (Lion) を取得しました。簡素化プロセス中に、プログラム 4 からいくつかの不必要な要素が削除されました。ここで、m は次の反復で再割り当てされるため、cosh 関数は削除されます (行 3)。 arcsin と Clip を使用したステートメントも、研究者がそれらを使用しなくても品質の低下が見られなかったため、削除されました。 3 つの赤色のステートメントはシンボリック関数に変換されます。プログラム 4 では m と v が一緒に使用されていますが、v は運動量の更新方法を変更するだけです (定数 〜0.9 および 〜1.1 を持つ 2 つの補間関数は、〜 0.99 を持つ 1 つの補間関数と同等です)機能)、個別に追跡する必要はありません。方向を変更しないため、バイアス補正は不要であることに注意してください。
以下のアルゴリズム 2 は疑似コードを示しています。
# 分析
シンボルの更新と正規化。 Lion アルゴリズムは、シンボリック操作を通じてすべての次元で均一な大きさの更新を生成します。これは、さまざまな適応オプティマイザーとは原理的に異なります。 直観的には、シンボリック操作は更新にノイズを追加し、正則化の形式として機能し、一般化を支援します。下の図 11 (右) は証拠の 1 つを示しています。
勢いの追跡。 Lion でモメンタムを追跡するためのデフォルトの EMA 係数は、AdamW およびモメンタム SGD で一般的に使用される 0.9 と比較して、0.99 (β_2) です。 EMA 係数と補間をこのように選択することで、Lion は 10 倍の運動量勾配の履歴を記憶することと、更新時に現在の勾配をより重視することとの間でバランスを取ることができます。
ハイパーパラメータとバッチ サイズの選択。 AdamW や Adafactor と比較すると、Lion はよりシンプルであり、ϵ や因数分解関連のパラメーターを必要としないため、ハイパーパラメーターが少なくなります。 Lion では、同様の有効な重み減衰強度 (lr * λ) を達成するために、より小さい学習率が必要となり、したがってより大きな分離された重み減衰が必要になります。
メモリとランタイムの利点。 Lion は勢いを節約するだけで、AdamW などの一般的な適応オプティマイザーよりもメモリ使用量が小さいため、大規模なモデルをトレーニングしたり、大きなバッチ サイズで作業したりする場合に役立ちます。たとえば、AdamW では、画像解像度 224、バッチ サイズ 4,096 の ViT-B/16 をトレーニングするには少なくとも 16 個の TPU V4 チップが必要ですが、Lion では 8 個しか必要ありません (どちらも bfloat16 の勢いで)。
実験部分では、研究者らは主に人気のある AdamW (またはメモリがボトルネックで Adafactor になった場合) と比較しながら、さまざまなベンチマークで Lion を評価しました。 )比較用。
画像分類
研究者は、画像分類タスクに関するさまざまなデータセットとアーキテクチャをカバーする実験を実行します。 ImageNet で最初からトレーニングすることに加えて、ImageNet-21K と JFT という 2 つのより大きな成熟したデータセットでも事前トレーニングしました。画像サイズのデフォルトは 224 です。
まず、ImageNet で最初からトレーニングします。研究者らは、ResNet-50 をバッチ サイズ 1,024 で 90 エポック、他のモデルをバッチ サイズ 4,096 で 300 エポックでトレーニングしました。以下の表 2 に示すように、Lion はさまざまなアーキテクチャで AdamW を大幅に上回っています。
2 番目に、ImageNet-21K で事前トレーニングします。研究者らは、ViT-B/16 と ViT-L/16 を ImageNet-21K 上で 90 エポック、バッチサイズ 4,096 で事前トレーニングしました。以下の表 2 は、トレーニング セットが 10 倍に拡張されても、Lion が依然として AdamW を上回るパフォーマンスを示していることを示しています。
#最後に、JFT で事前トレーニングを行います。限界を押し上げるために、研究者は JFT で多数の実験を行っています。以下の図 4 は、JFT-300M での異なる事前トレーニング予算の下での 3 つの ViT モデル (ViT-B/16、ViT-L/16、および ViT-H/14) の精度を示しています。 Lion を使用すると、ViT-L/16 が ImageNet および ImageNet V2 でトレーニングされた AdamW の ViT-H/14 のパフォーマンスに匹敵するようになりますが、事前トレーニング コストは 3 分の 1 に抑えられます。
下の表 3 は、より高い解像度と Polyak 平均化を使用した微調整の結果を示しています。研究者らが使用した ViT-L/16 は、AdamW が以前にトレーニングした ViT-H/14 の結果と一致しますが、パラメーターは 2 分の 1 です。事前トレーニング データセットを JFT-3B に拡張した後、Lion でトレーニングされた ViT-g/14 は、パラメーターが 1.8 倍少ないにもかかわらず、以前の ViT-G/14 の結果を上回りました。
視覚言語の対比学習
このセクションでは、CLIP スタイルの視覚言語の対比トレーニングに焦点を当てます。研究者らは、すべてのパラメーターを最初から学習するのではなく、強力な事前トレーニング済みモデルを使用して画像エンコーダーを初期化しました。
ロックされた画像テキスト チューニング (LiT) について、研究者らは、同じ凍結済みの事前トレーニング済み ViT を使用して比較方法でテキスト エンコーダーをトレーニングすることにより、LiT 上の Lion と AdamW を比較しました。以下の表 4 は、3 つのモデル スケールでのゼロショット画像分類の結果を示しており、Lion は AdamW に対する継続的な改善を示しています。
# 下の図 5 (左) は、LiT-B/16-B のゼロショット学習曲線の例を示しています。他の 2 つのデータセットでも同様の結果が得られました。
拡散モデル #最近、拡散モデルは画像生成において大きな成功を収めています。その大きな可能性を考慮して、私たちは無条件の画像合成とマルチモーダルなテキストから画像への生成に関して Lion をテストしました。
ImageNet での画像合成の場合、研究者らは、2021 年の論文「拡散モデルが画像合成でガンに勝つ」で紹介された改良された U-Net アーキテクチャを使用して、ImageNet で 64×64 を実行しました , 128 ×128 および 256×256 の画像生成。上の図 5 (中央と右) に示すように、Lion はより優れた品質と FID スコアのより高速な収束を実現できます。
テキストから画像への生成の学習曲線を以下の図 6 に示します。 64 × 64 の基本モデルには大きな改善はありませんが、テキスト条件付き超解像度モデルでは Lion が AdamW を上回っています。 Lion は、AdamW と比較して、より高い CLIP スコアを達成し、ノイズの多い FID メトリクスが小さくなります。
#言語モデリングと微調整
このセクションでは、言語モデリングと微調整に焦点を当てます。純粋な言語タスクに関して、研究者らは β_1 と β_2 を調整することで AdamW と Lion の品質を向上できることを発見しました。
自己回帰言語モデリングの場合、以下の図 7 は、Wiki-40B のトークンレベルの複雑性と PG-19 の単語レベルの複雑性を示しています。 Lion は一貫して AdamW よりも低い検証の複雑さを実現します。 Wiki-40B と PG-19 で中型モデルをトレーニングする場合、それぞれ 1.6 倍と 1.5 倍の高速化を達成します。 PG-19は、モデルサイズが大きくなるとさらに2倍の高速化を実現します。
マスクされた言語モデリングの場合、研究者は C4 データセットに対して BERT トレーニングも実行しました。その中で、Lion は検証の複雑さの点で AdamW よりわずかに優れたパフォーマンスを示します。関連する学習曲線を以下の図 11 (左) に示します。
#微調整のために、研究者はベース (220M)、大 ( 770M)と最大の11B T5モデル。以下の表 6 は、GLUE 開発セットの結果を示しています。平均して、Lion は 3 つのモデル サイズすべてで AdamW を上回っています。
他の人気のあるオプティマイザーとの比較
#この研究では、4 つの一般的なオプティマイザー RAdam、NAdam、AdaBelief、AMSGrad も使用して、ImageNet 上で ViT-S/16 と ViT-B/16 をトレーニングします (RandAug と Mixup を使用)。以下の表 7 に示すように、Lion が依然としてトップパフォーマーです。
#技術的な詳細については、元の論文を参照してください。
以上がアダムWを完全に潰せ! Googleの新しいオプティマイザーはメモリが少なく効率が高いネチズン:GPT 2のトレーニングは本当に速いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。