学習率がモデルトレーニングにどのように影響するかを学びましょう。物体detectなどでSOTA性能を達成するために、Ultralytics YOLO26のステップサイズを最適化する方法を発見してください。
学習率は、最適化プロセス中にモデルが取るステップサイズを決定する重要なハイパーパラメータチューニング設定です。ニューラルネットワークのトレーニングの文脈では、モデルがデータのバッチを処理するたびに、推定された誤差に応じてモデルの内部重みがどれだけ更新されるかを制御します。これを、谷(誤差の最低点)に向かって山を下る人が歩く様子に例えると、学習率はその歩幅を決定します。歩幅が大きすぎると、谷を完全に飛び越えてしまい、底を見逃す可能性があります。歩幅が小さすぎると、目的地に到達するまでに非現実的に長い時間がかかる可能性があります。
最適な学習率を見つけることは、機械学習ワークフローにおけるバランスの取れた行為としてしばしば説明されます。目標は、モデルの予測と実際のグラウンドトゥルースとの差を測定する損失関数を最小化することです。このプロセスは、損失のランドスケープをナビゲートするために、最適化アルゴリズム、例えばstochastic gradient descent (SGD)やAdam optimizerに大きく依存します。
学習率の調整がもたらす影響は、コンピュータービジョンタスクが展開されている様々な重要な業界で明らかです。
学習率と他のトレーニングパラメータを区別することが重要です。これらは同じ設定ファイルで構成されることが多いですが、それぞれ異なる目的を果たします。
最新のフレームワークを使用すると、初期学習率(lr0) と最終学習率の割合 (lrf)。以下に、これを使用する設定例を示します。
Ultralyticsプラットフォーム カスタムトレーニング実行用の互換性のあるクライアント。
from ultralytics import YOLO
# Load the YOLO26 model (latest state-of-the-art architecture)
model = YOLO("yolo26n.pt")
# Train the model with a custom initial learning rate
# lr0=0.01 sets the initial rate
# lrf=0.01 sets the final learning rate to (lr0 * lrf)
results = model.train(data="coco8.yaml", epochs=10, lr0=0.01, lrf=0.01)
上級ユーザー向けには、LR Finder(fast.aiによって普及)のような手法は、損失が発散するまでレートが指数関数的に増加する短い試行エポックを実行することで、最適な開始値の発見を本質的に自動化できます。このハイパーパラメータを習得することが、AIプロジェクトでSOTA (State-of-the-Art)のパフォーマンスを引き出す鍵となることがよくあります。

未来の機械学習で、新たな一歩を踏み出しましょう。