YOLO Vision Shenzhen
深セン
今すぐ参加
用語集

クロスバリデーション

交差検証がモデルの汎化性能を向上させ、過学習を防ぐ方法を学びましょう。堅牢なMLのためにUltralytics YOLO26でK分割評価を実装する方法を発見してください。

交差検定は、限られたデータサンプルで機械学習(ML)モデルの性能を評価するために使用される堅牢な統計的再サンプリング手順です。データを単一のトレーニングセットとテストセットに分割する標準的なホールドアウト法とは異なり、交差検定ではデータセットを複数のサブセットに分割し、すべてのデータポイントがトレーニングと検証の両方に使用されるようにします。この手法は、統計分析の結果が独立したデータセットにどの程度一般化するかを評価するために不可欠であり、モデルが一般化可能なパターンを学習するのではなくトレーニング例を記憶してしまう過学習を検出するのに役立ちます。

K-fold交差検証の仕組み

この手法で最も広く使用されているバリエーションは、K分割交差検証です。このプロセスでは、データセット全体がランダムにk個の等しいサイズのグループ、つまり「フォールド」に分割されます。その後、トレーニングプロセスがk回繰り返されます。各イテレーションでは、1つのフォールドがモデルをテストするための検証データとして機能し、残りのk-1個のフォールドがトレーニングデータとして機能します。

最終的な性能指標は通常、各ループから得られた精度適合率、または平均平均精度 (mAP)などのスコアを平均することで計算されます。このアプローチは、単一の訓練・テスト分割試行に伴う分散を大幅に削減し、汎化誤差のより信頼性の高い推定値を提供します。これにより、評価がテストデータの任意の選択によって偏ることがなくなります。

Ultralytics実装

交差検証は、小規模なデータセットを扱う場合や、厳密なハイパーパラメータチューニングを行う場合に特に有用です。 PyTorchのような最新の深層学習フレームワークはトレーニングループを容易にしますが、フォールドの管理には慎重なデータ準備が必要です。

以下の例は、YOLO26モデルを使用した5分割交差検定実験のために、事前に生成されたyaml構成ファイルを反復処理する方法を示しています。これは、データセットをすでに5つの個別の構成ファイルに分割していることを前提としています。

from ultralytics import YOLO

# List of dataset configuration files representing 5 folds
fold_yamls = [f"dataset_fold_{i}.yaml" for i in range(5)]

for i, yaml_file in enumerate(fold_yamls):
    # Load a fresh YOLO26 Nano model for each fold
    model = YOLO("yolo26n.pt")

    # Train the model, saving results to a unique project directory
    results = model.train(data=yaml_file, epochs=20, project="cv_experiment", name=f"fold_{i}")

分割生成の自動化についてさらに詳しく知るには、K分割交差検証に関するガイドを参照してください。

実際のアプリケーション

データが不足している、収集に費用がかかる、または安全性が極めて重要な信頼性が要求される業界では、交差検定は不可欠です。

  • 医療診断: 医療画像解析において、希少疾患のデータセットは規模が小さい場合が多い。 単一の検証分割では、困難な症例や稀な病理が意図せず除外される可能性がある。 医療分野のAI開発者は交差検証を用いることで、 診断モデルが利用可能な全患者スキャンに対してテストされ、 多様な患者層や装置タイプにわたってシステムが機能することを検証する。
  • 精密農業: 屋外環境では環境条件が大きく変動します。作物病害検出のためにトレーニングされたモデルは、晴れた日にはうまく機能するかもしれませんが、トレーニングセットにそのような画像しか含まれていなかった場合、曇りの日には失敗する可能性があります。交差検定により、モデルがそのような変動に対して堅牢であることが保証され、農家が天候条件に関わらず一貫した監視のために自動機械学習 (AutoML)ツールに依存するのに役立ちます。

モデル開発における戦略的優位性

クロスバリデーションをAI開発ライフサイクルに統合することで、バイアス-バリアンスのトレードオフに関する重要な洞察が得られます。

  1. 安定性評価: フォールド間で性能指標が著しく異なる場合、モデルがトレーニングに使用された特定のデータポイントに非常に敏感であることを示しており、高い分散を示唆しています。
  2. データ効率: すべての観測が最終的にトレーニングと検証の両方に使用されるため、限られたデータの有用性を最大化します。
  3. ハイパーパラメータ最適化: 最終テストセットを「覗き見」することなく、最適な学習率バッチサイズ、またはデータ拡張戦略を選択するための信頼できるベンチマークを提供します。

関連概念の区別

交差検証と他の評価用語を区別することが重要です。

  • vs. ホールドアウト検証: ホールドアウトは単一の分割 (例: 80/20) を伴います。ImageNetのような大規模データセットには高速で適していますが、小規模データセットの場合、交差検証よりも統計的に堅牢ではありません。
  • vs. ブートストラップ: ブートストラップは復元抽出によるランダムサンプリングを伴うのに対し、K分割交差検定はデータを非復元で分割します(各サンプルは正確に1つのフォールドに含まれます)。

複数のフォールドからのアーティファクト、メトリクス、およびモデルの管理は複雑になる可能性があります。Ultralytics Platformは、一元化された実験追跡を提供することでこれを簡素化し、チームが異なるフォールド間でのパフォーマンスを比較し、モデル評価のインサイトを容易に視覚化できるようにします。

共にAIの未来を築きましょう!

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