機械学習における過学習の特定と解決方法を学びましょう。原因や兆候を探り、Ultralytics 精度向上に向けた最適化手法を解説します。
アンダーフィッティングは、機械学習モデルが単純すぎるか、 訓練データ内の根本的な傾向やパターンを捉える能力を欠いている場合に発生する。 概念的には、明確な曲線を形成するデータポイントに直線を当てはめようとする試みに類似しており、 モデルが入力と出力の関係の複雑性を把握できない。 モデルがデータを効果的に学習していないため、 学習データセットだけでなく未見の検証データにおいても 性能が低下し、予測精度が低くなる。この現象は往々にして AIにおける高いバイアス(過学習)の結果であり、アルゴリズムが 目的関数について過度に単純化した仮定を行うことで生じる。
アンダーフィットしたモデルが生じる要因はいくつかある。最も一般的な原因は、課題に対して複雑さが不十分なモデル構造を使用することである。例えば、非線形データに線形回帰を適用する場合などが該当する。 学習期間が不十分な場合、モデルが収束するのに十分なエポックが与えられず、十分な学習が妨げられます。 さらに、過剰な正則化(通常は逆の問題を防ぐために用いられる手法)はモデルを過度に制約し、重要な特徴を捉えられなくする可能性があります。
エンジニアは学習中の損失関数を監視することでアンダーフィッティングを特定できる。 学習誤差と検証誤差の両方が高く、かつ大幅に減少しない場合、モデルはアンダーフィッティングしている可能性が高い。 効果的な特徴量エンジニアリングがモデルにデータを理解させるのとは対照的に、 特徴量を少なすぎると提供すると、モデルに必要な情報を欠乏させることにもなりかねない。
アンダーフィッティングとその対極にあるオーバーフィッティングを区別することは極めて重要である。これら二つの概念は、バイアス・分散トレードオフの両極端を表している。
この二つの極端な状態の間にある「最適な点」を見つけることが、 モデル最適化の主な目的である。
アンダーフィッティングを理解することは、様々な産業分野において信頼性の高いAIシステムを開発するために不可欠である。
In コンピュータビジョンアンダフィットは、タスクの難易度に対してモデルバリエーションが小さすぎる場合(例:高解像度のドローン画像における微小物体の検出)に頻繁に発生する。以下の Python 例は、より小型のモデルからより大型で高性能なモデルへ切り替える方法を示しています。 ultralytics 潜在的な過小適合を解決するためのライブラリ。
from ultralytics import YOLO
# If 'yolo26n.pt' (Nano) is underfitting and yielding low accuracy,
# upgrade to a model with higher capacity like 'yolo26l.pt' (Large).
model = YOLO("yolo26l.pt")
# Train the larger model.
# Increasing epochs also helps the model converge if it was previously underfitting.
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
Ultralytics 移行し、十分な学習時間を確保することで、システムは複雑なパターンを学習するために必要なパラメータを獲得し、アンダーフィッティングを効果的に軽減します。モデルのアンダーフィッティング解消を確認するには、常に堅牢なテストデータセットで評価してください。アンダーフィッティングを早期に発見するためのデータセット管理や実験追跡には、Ultralytics 提供する包括的な可視化・分析ツールをご利用いただけます。