Yolo 深圳
深セン
今すぐ参加
用語集

Adam オプティマイザー

Adam オプティマイザーが、適応学習率、モメンタム、AIにおける実際のアプリケーションを備えた効率的なニューラルネットワークのトレーニングをどのようにパワーアップさせるかを学びます。

Adam (Adaptive Moment Estimation) は、洗練され、広く使われている最適化アルゴリズムです。 最適化アルゴリズムである。 は、学習プロセス中にニューラルネットワークのパラメータを更新するために設計された洗練された最適化アルゴリズムである。他の2つの一般的な の拡張 適応的勾配アルゴリズム(AdaGrad)と二乗平均平方根伝搬法(RMSProp)の最良の特性を組み合わせることで、Adam 各パラメータに対して適応的な学習率を計算します。 学習率を計算する。この この機能により、ノイズの多い問題でも疎な勾配を効率的に扱うことができ、複雑なディープラーニング(DL)アーキテクチャの学習に最適です。 複雑なディープラーニング(DL)アーキテクチャのトレーニングに最適です、 最新のYOLO11 モデルを含む

Adam 働き

Adam 中核となるメカニズムは、勾配の1次モーメントと2次モーメントを計算することである。 学習率を適応させる。 計算する。第一モーメント」は、最適化を正しい方向に進めるための勢いであり、重いボールのようなものだと考えることができる。 最初のモーメント」は、最適化が正しい方向に進むよう維持する勢いであり、重いボールが坂を転がり落ちるのと同じようなものだ。 坂を転がり落ちる重いボールのようなものです。第二のモーメント」は非中心分散を追跡し、効果的にステップサイズをスケーリングします。 勾配の過去の大きさに基づいて、ステップサイズを効果的にスケーリングします。

バックプロパゲーションの間、アルゴリズムは以下を計算する に対する損失関数の勾配を計算する。 を計算する。そしてAdam 勾配(運動量)と勾配の2乗(分散)の指数移動平均を更新します。 これらの移動平均は、現在の勾配をスケーリングするために使用され、モデルが一貫した勾配を持つ方向に大きなステップを取り、勾配を持つ方向に小さなステップを取ることを保証します。 勾配が一貫している方向ではモデルが大きなステップを踏み、分散が大きい方向では小さなステップを踏むようにします。このプロセスは Adam Ba.

Adam 他のオプティマイザーとの違い

Adam いつ使うべきかを理解するには、機械学習(ML)フレームワークで見られる他の一般的なアルゴリズムと比較する必要がある。 機械学習(ML)フレームワークと比較する必要がある。

  • 確率的勾配降下法(SGD) SGD 、固定学習率(または単純な減衰スケジュール)を使用してパラメータを更新します。SGD 計算効率が高く SGDは計算効率が高く、よく汎化されるが、損失分布の「鞍点」に悩まされることがあり Adam収束が遅い。多くの 多くのコンピュータビジョンタスクでは SGD 最終的な を使用します。
  • RMSProp:このオプティマイザは、主にAdaGradで見られる学習率の低下に対処する。Adam はRMSPropを改良し AdamはRMSPropに運動量項を追加することで、振動を緩和し、最小値への収束を加速する。
  • AdamW:AdamW減衰を非連結化した 非結合ウェイト減衰付きAdam AdamW)は、最新の トランスフォーマーや大規模なコンピュータビジョンモデルの学習によく使われます。これは は、重み減衰の正則化を勾配更新から分離し、多くの場合、標準的なAdamよりも優れた汎化をもたらす 標準的なAdam

実際のアプリケーション

そのロバスト性と、ハイパーパラメータのチューニングの必要性が最小限であることから ハイパーパラメータのチューニングが最小限であるため、Adam 様々なインパクトの大きい領域で利用されている。

  1. ヘルスケアにおけるAIいつ 医療画像解析 医療画像解析のモデルをトレーニングする場合 MRIスキャンにおける異常の検出など、医療画像解析のモデルをトレーニングする場合、データは疎であったり不均衡であったりすることがあります。Adam適応型学習率は、モデルが迅速に収束するのに役立ちます。 アダムの適応学習率は、特定の特徴が学習データ中にまれにしか現れな 診断ツールの迅速な展開が可能になります。 診断ツールの迅速な展開が可能になる。
  2. 自然言語処理(NLP) GPT-4のような大規模言語モデル(LLM)は、事前学習時にAdam (またはAdamW)に大きく依存している。このアルゴリズムは は、数十億という膨大な数のパラメータと、単語埋め込み の疎な性質を効率的に処理します、 のような膨大なテキストデータセットから複雑な言語パターンを学習することができる。 ウィキペディア

Ultralytics 使用YOLO

Ultralytics Python APIを使用すると、物体検出やポーズ推定モデルのトレーニングで Adam 簡単に選択できます。多くのYOLO構成ではSGD デフォルトですが SGDは多くのYOLO 構成でデフォルトですが、Adam 小規模なデータセットや高速な収束が優先される場合に優れた代替手段となります。 優先されます。

以下の例では YOLO11モデルの学習方法を示します:

from ultralytics import YOLO

# Load a generic YOLO11 model
model = YOLO("yolo11n.pt")

# Train the model on the COCO8 dataset using the 'Adam' optimizer
# The 'optimizer' argument creates the specific PyTorch optimizer instance internally
results = model.train(data="coco8.yaml", epochs=5, optimizer="Adam")

この柔軟性により、研究者やエンジニアは 研究者やエンジニアは、オプティマイザの設定を試して、特定のカスタムデータセットに最適な設定を見つけることができます。 見つけることができます。

Ultralytics コミュニティに参加する

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

今すぐ参加