ヨロビジョン深圳
深セン
今すぐ参加
用語集

Adamオプティマイザ

適応学習率、モメンタム、AIにおける現実世界の応用により、Adamオプティマイザが効率的なニューラルネットワークのトレーニングをどのように実現するかを解説します。

Adam(Adaptive Moment Estimation)は、機械学習(ML)深層学習(DL)で広く使用されている、高性能な最適化アルゴリズムです。トレーニングデータに基づいてモデルのパラメータ(重みとバイアス)を反復的に更新することで、最適な値を効率的に見つけ出すように設計されています。Adamは、その高速な収束速度と幅広い問題に対する有効性から高く評価されており、多くの実務家がカスタムモデルのトレーニングを行う際の一般的なデフォルトの選択肢となっています。その開発は、大規模で複雑なモデルのトレーニングをより実用的にする上で重要なステップとなりました。

Adamの仕組み

Adamの重要なイノベーションは、個々のパラメータの学習率を適応させる能力です。ネットワーク内のすべての重みに対して単一の固定学習率を使用する代わりに、Adamはトレーニングの進行に合わせて調整される個別の学習率を計算します。これは、RMSPropとMomentumという2つの他の最適化手法の利点を組み合わせることで実現されます。Adamは、2つの主要なコンポーネント、つまり最初のモーメント(勾配の平均、モメンタムと同様)と2番目のモーメント(勾配の非中心化分散)を追跡します。この組み合わせにより、より多くの情報に基づいた更新が可能になり、一貫した勾配を持つパラメータに対してはより大きなステップを実行し、ノイズの多いまたはスパースな勾配を持つパラメータに対してはより小さなステップを実行します。この方法は、KingmaとBaによるオリジナルのAdam研究論文で詳しく説明されています。

Adamと他の最適化アルゴリズムの比較

Adamの強みを理解するには、他の一般的なオプティマイザと比較すると役立ちます。

  • Adam vs. 確率的勾配降下法(SGD): SGDは基本的な最適化アルゴリズムですが、すべてのパラメータ更新に適用される一定の学習率を使用します。これにより、収束が遅くなったり、損失関数の最適でない「谷」にはまってしまうことがあります。Adamは、適応的な学習率により、損失の状況をより効率的にナビゲートし、はるかに高速に収束することがよくあります。ただし、一部の研究では、SGDでトレーニングされたモデルは、特定のシナリオでわずかに汎化性能が高く、過学習をより効果的に回避できることが示唆されています。選択には経験的なテストが必要になることが多く、モデルトレーニングのヒントに関するガイドで説明されています。
  • AdamW: 一般的で効果的なバリアントはAdamW(Decoupled Weight Decayを伴うAdam)です。これは、正則化手法であるWeight Decayの適用方法を変更し、勾配の更新ステップから分離します。これにより、モデルのパフォーマンスが向上し、汎化性能が向上することがよくあります。実装は、PyTorchTensorFlowなどの主要なフレームワークで利用できます。

実際のアプリケーション

Adamはその効率性と堅牢性から、幅広いアプリケーションに適しています。

  1. 大規模言語モデル(LLM)のトレーニング: Adamとそのバリアントは、自然言語処理(NLP)で大規模なモデルをトレーニングするために不可欠です。GPT-4Hugging Faceのモデルのようなモデルでは、Adamの効率性により、Wikipediaのようなソースからの膨大なテキストデータセットを処理し、複雑な言語パターンを学習することが可能になります。複雑な損失ランドスケープをナビゲートする能力が成功に不可欠です。
  2. 画像分類と物体検出: コンピュータビジョン(CV)では、Adamは、ImageNetCOCOのような大規模な画像データセットで、深層畳み込みニューラルネットワーク(CNN)をトレーニングするために広く使用されています。 これは、画像分類および物体検出用のモデルが迅速に収束するのに役立ち、開発とハイパーパラメータチューニングサイクルを加速します。

Ultralytics YOLOでの使用

Ultralyticsのエコシステム内では、AdamとそのバリアントであるAdamWが、Ultralytics YOLOモデルのトレーニングに利用可能なオプティマイザです。Adamの適応学習率を活用することで、物体検出、インスタンスセグメンテーション、または姿勢推定モデル(YOLO11YOLOv10など)のトレーニング中の収束を加速できます。SGDは、最終的な汎化性能が優れている可能性があるため、一部のYOLOモデルではデフォルトおよび推奨されるオプティマイザであることが多いですが、Adamは堅牢な代替手段を提供し、特に初期の実験中に役立ちます。オプティマイザやその他のトレーニング設定は簡単に構成できます。Ultralytics HUBのようなツールはプロセスを効率化し、ユーザーはローカルまたはクラウドトレーニングを介して、Adamを含むさまざまなオプティマイザを使用してモデルをトレーニングできます。PyTorchTensorFlowのようなフレームワークは、Ultralyticsフレームワーク内で利用されるAdamの標準的な実装を提供します。

Ultralyticsコミュニティに参加しませんか?

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加
クリップボードにコピーしました