適応学習率、モメンタム、AIにおける現実世界の応用により、Adamオプティマイザが効率的なニューラルネットワークのトレーニングをどのように実現するかを解説します。
Adam(Adaptive Moment Estimation)は、機械学習(ML)や深層学習(DL)で広く使用されている、高性能な最適化アルゴリズムです。トレーニングデータに基づいてモデルのパラメータ(重みとバイアス)を反復的に更新することで、最適な値を効率的に見つけ出すように設計されています。Adamは、その高速な収束速度と幅広い問題に対する有効性から高く評価されており、多くの実務家がカスタムモデルのトレーニングを行う際の一般的なデフォルトの選択肢となっています。その開発は、大規模で複雑なモデルのトレーニングをより実用的にする上で重要なステップとなりました。
Adamの重要なイノベーションは、個々のパラメータの学習率を適応させる能力です。ネットワーク内のすべての重みに対して単一の固定学習率を使用する代わりに、Adamはトレーニングの進行に合わせて調整される個別の学習率を計算します。これは、RMSPropとMomentumという2つの他の最適化手法の利点を組み合わせることで実現されます。Adamは、2つの主要なコンポーネント、つまり最初のモーメント(勾配の平均、モメンタムと同様)と2番目のモーメント(勾配の非中心化分散)を追跡します。この組み合わせにより、より多くの情報に基づいた更新が可能になり、一貫した勾配を持つパラメータに対してはより大きなステップを実行し、ノイズの多いまたはスパースな勾配を持つパラメータに対してはより小さなステップを実行します。この方法は、KingmaとBaによるオリジナルのAdam研究論文で詳しく説明されています。
Adamの強みを理解するには、他の一般的なオプティマイザと比較すると役立ちます。
Adamはその効率性と堅牢性から、幅広いアプリケーションに適しています。
Ultralyticsのエコシステム内では、AdamとそのバリアントであるAdamWが、Ultralytics YOLOモデルのトレーニングに利用可能なオプティマイザです。Adamの適応学習率を活用することで、物体検出、インスタンスセグメンテーション、または姿勢推定モデル(YOLO11やYOLOv10など)のトレーニング中の収束を加速できます。SGDは、最終的な汎化性能が優れている可能性があるため、一部のYOLOモデルではデフォルトおよび推奨されるオプティマイザであることが多いですが、Adamは堅牢な代替手段を提供し、特に初期の実験中に役立ちます。オプティマイザやその他のトレーニング設定は簡単に構成できます。Ultralytics HUBのようなツールはプロセスを効率化し、ユーザーはローカルまたはクラウドトレーニングを介して、Adamを含むさまざまなオプティマイザを使用してモデルをトレーニングできます。PyTorchやTensorFlowのようなフレームワークは、Ultralyticsフレームワーク内で利用されるAdamの標準的な実装を提供します。