テクニカルガイド
Adam とアダプティブ オプティマイザー
Adam は、最新のニューラル ネットワークの背後にある主力オプティマイザーであり、パラメータごとに個別の学習率を自動的に調整します。
このガイドを聴くAIによるナレーション · ~2 min
概要
これが重要なのは、単純な勾配降下法よりも深いモデルのトレーニングが高速になり、はるかに手間がかからなくなるためです。
ディープダイブ
2014 年に Kingma と Ba によって導入された Adam (Adaptive Moment Estimation) は、2 つのアイデアを組み合わせたものです。まず、勢いです。過去の勾配 (最初の瞬間) の指数関数的に減衰する平均を維持するため、更新により一貫した方向の速度が構築されます。 2 番目に、パラメーターごとのスケーリング: 勾配の 2 乗の平均 (2 番目のモーメント) を追跡し、各ステップをその値の平方根で除算します。そのため、大きくノイズの多い勾配を持つパラメーターのステップは小さくなり、めったに更新されないパラメーターのステップは大きくなります。この適応性は、多くの場合、ネットワーク全体で 1 つの学習率を使用できることを意味します。バリアントである AdamW は、重みの減衰を勾配の更新から切り離し、大規模なトランスフォーマーや言語モデルをトレーニングするためのデフォルトになっています。
現実世界の実装
標準オプティマイザーとして AdamW を使用する GPT や Llama などの大規模な言語モデルをトレーニングします。
デフォルトの Adam 学習率のみを使用して、カスタム データセット上で事前トレーニングされた画像分類器 (ResNet など) を微調整します。
Stable Diffusion などの画像ジェネレーターの背後で拡散モデルをトレーニングします。
bitsandbytes などのライブラリで 8 ビット Adam を実行し、限られた GPU メモリにオプティマイザーの状態を適合させます。
Adam と適応オプティマイザーの未来
Adam と AdamW が依然として優勢ですが、研究では、重みごとに 2 つの追加値を保存するのにコストがかかる、数兆個のパラメータ モデルの効率化が推進されています。 Adafactor、8 ビット Adam などのメモリ軽量の亜種、および Lion (符号ベースのモメンタムのみを使用する) や Sophia などの新しいオプティマイザは、より少ないメモリまたはより高速な収束で Adam の品質に匹敵することを目指しています。分散型の低精度トレーニング向けに特別に調整された適応型オプティマイザーが進化し続けることが期待されます。
実践する
なぜそれが重要なのか
- 費用と予算. アーキテクチャの決定により、パフォーマンスと運用コストが何年にもわたって推進されます。
- より明確な判決. 技術教育は、チームが最新のスタックだけでなく、適切なスタックを選択するのに役立ちます。
- 品質管理. より良いエンジニアリングの選択により、本番環境での信頼性に関するインシデントが減少します。
気をつけてください
- 1 つのベンチマークを最適化すると、より広範なシステムの弱点が隠れる可能性があります。
- インフラストラクチャとメンテナンスのコストは過小評価されがちです。
- システムが複雑になるにつれて、セキュリティと可観測性のギャップが拡大する可能性があります。
次のステップ
- 実装前にレイテンシ、品質、コストの目標を定義します。
- 現実的な負荷とデータ条件でのベンチマーク。
- エラー、ドリフト、ユーザーへの影響を計測器で監視します。
- スケーリングの前に、ロールバックとインシデント対応のパスを準備します。
探検を続けましょう
よくある質問
What is Adam and Adaptive Optimizers?
Adam は、最新のニューラル ネットワークの背後にある主力オプティマイザーであり、パラメータごとに個別の学習率を自動的に調整します。これが重要なのは、単純な勾配降下法よりも深いモデルのトレーニングが高速で、はるかに手間がかからないためです。
Adam が各パラメータについて追跡する 2 つの量はどれですか?
Adam は、すべてのパラメーターの勾配 (最初のモーメント) と 2 乗勾配 (2 番目のモーメント) の指数関数的に減衰する平均を保持します。
Adam がモーメント推定値にバイアス補正を適用するのはなぜですか?
m と v は両方とも 0 に初期化されるため、初期の推定値は低くバイアスされます。 (1 - beta^t) で除算すると、これが修正されます。
Adam と AdamW の主な違いは何ですか?
AdamW は、適応勾配項に重み減衰を混合するのではなく、重み減衰を重みに直接適用します。これにより、トランスフォーマーでの汎化が向上します。
アダムの更新ルールでは、小さなイプシロン項はどのような役割を果たしますか?
イプシロン (約 1e-8) が分母に追加されるため、ゼロに近い二乗勾配平均を持つパラメーターによって爆発が引き起こされません。
アダムがよく「適応力がある」と言われるのはなぜですか?
Adam は、各パラメーターの二乗勾配平均の平方根で割ることにより、1 つのグローバル値を使用するのではなく、パラメーターごとのステップ サイズをスケーリングします。