コンテンツへスキップ

構成

YOLO settings and hyperparameters play a critical role in the model's performance, speed, and accuracy. These settings and hyperparameters can affect the model's behavior at various stages of the model development process, including training, validation, and prediction.



見るんだ: Mastering Ultralytics YOLO: Configuration

Ultralytics コマンドは以下の構文を使う:

yolo TASK MODE ARGS
from ultralytics import YOLO

# Load a YOLO11 model from a pre-trained weights file
model = YOLO("yolo11n.pt")

# Run MODE mode using the custom arguments ARGS (guess TASK)
model.MODE(ARGS)

どこでだ:

デフォルト ARG このページでは cfg/defaults.yaml ファイル.

タスク

YOLO モデルは、検出、セグメンテーション、分類、ポーズなど、さまざまなタスクに使用できる。これらのタスクは、生成される出力のタイプや、解決するために設計された特定の問題が異なります。

  • 検出する:画像やビデオ内の対象物や関心領域を特定し、位置を特定する。
  • セグメント:画像やビデオを、異なるオブジェクトやクラスに対応する領域やピクセルに分割すること。
  • 分類する:入力画像のクラスラベルを予測する。
  • ポーズ:画像やビデオ内のオブジェクトを識別し、そのキーポイントを推定する。
  • OBB: 衛星画像や医療用画像に適した、オリエンテッド(回転した)バウンディングボックス。
議論デフォルト説明
task'detect'実行するYOLO タスクを指定する。オプションには以下が含まれる。 detect for object detection, segment セグメンテーションのために、 classify を分類する、 pose ポーズ推定と obb オリエンテッドなバウンディングボックス各タスクは、画像やビデオ解析における特定のタイプの出力や問題に合わせて調整されています。

タスクガイド

モード

YOLO モデルは、あなたが解決しようとしている特定の問題に応じて異なるモードで使用することができます。これらのモードには以下が含まれる:

  • Train: For training a YOLO11 model on a custom dataset.
  • Val: For validating a YOLO11 model after it has been trained.
  • Predict: For making predictions using a trained YOLO11 model on new images or videos.
  • Export: For exporting a YOLO11 model to a format that can be used for deployment.
  • Track: For tracking objects in real-time using a YOLO11 model.
  • Benchmark: For benchmarking YOLO11 exports (ONNX, TensorRT, etc.) speed and accuracy.
議論デフォルト説明
mode'train'YOLO モデルが動作するモードを指定します。オプションは以下の通り。 train をモデルトレーニングに使用する、 val を検証する、 predict 新しいデータに対する推論のために、 export モデルの展開形式への変換 track 物体追跡用 benchmark 性能評価用各モードは、開発から配備まで、モデルライフサイクルのさまざまな段階に対応するように設計されている。

モードガイド

列車設定

The training settings for YOLO models encompass various hyperparameters and configurations used during the training process. These settings influence the model's performance, speed, and accuracy. Key training settings include batch size, learning rate, momentum, and weight decay. Additionally, the choice of optimizer, loss function, and training dataset composition can impact the training process. Careful tuning and experimentation with these settings are crucial for optimizing performance.

議論デフォルト説明
modelNoneトレーニング用のモデルファイルを指定します。ファイルへのパスを指定します。 .pt 訓練済みモデルまたは .yaml 設定ファイル。モデル構造の定義や重みの初期化に不可欠。
dataNoneデータセット設定ファイルへのパス(例. coco8.yaml). This file contains dataset-specific parameters, including paths to training and validation data, class names, and number of classes.
epochs100Total number of training epochs. Each epoch represents a full pass over the entire dataset. Adjusting this value can affect training duration and model performance.
timeNone最大トレーニング時間(時間単位)。設定すると epochs 引数を指定することで、指定した期間後にトレーニングを自動的に停止することができます。時間に制約のあるトレーニングシナリオに便利です。
patience100Number of epochs to wait without improvement in validation metrics before early stopping the training. Helps prevent overfitting by stopping training when performance plateaus.
batch16Batch size, with three modes: set as an integer (e.g., batch=16)、GPU メモリ使用率60%の自動モード(batch=-1)、または指定された使用率の割合を持つ自動モード(batch=0.70).
imgsz640Target image size for training. All images are resized to this dimension before being fed into the model. Affects model accuracy and computational complexity.
saveTrueEnables saving of training checkpoints and final model weights. Useful for resuming training or model deployment.
save_period-1モデルのチェックポイントを保存する頻度をエポックで指定します。値を-1にすると、この機能は無効になります。長いトレーニングセッション中に中間モデルを保存するのに便利です。
cacheFalseデータセット画像をメモリ上にキャッシュできるようにする (True/ram)、ディスク上(disk)、または無効にする(False).メモリ使用量の増加と引き換えに、ディスクI/Oを削減することでトレーニング速度を向上させる。
deviceNoneトレーニングのための計算装置を指定する:シングルGPU (device=0)、マルチGPU(device=0,1)、CPU (device=cpu)、またはアップル・シリコン用のMPS (device=mps).
workers8データロードのためのワーカースレッド数(1スレッドあたり RANK マルチGPU トレーニングの場合)。データの前処理とモデルへの投入速度に影響し、特にマルチGPU セットアップで有用。
projectNoneトレーニング出力が保存されるプロジェクトディレクトリの名前。異なる実験を整理して保存できるようにする。
nameNoneトレーニング実行の名前。プロジェクトフォルダ内にサブディレクトリを作成し、そこにトレーニングログと出力を保存します。
exist_okFalseTrueの場合、既存のproject/nameディレクトリを上書きできる。以前の出力を手動で消去する必要がなく、繰り返し実験するのに便利です。
pretrainedTrue事前に訓練されたモデルから学習を開始するかどうかを決定します。ブール値または特定のモデルへの文字列パスを指定し、そこから重みを読み込みます。トレーニングの効率とモデルのパフォーマンスを向上させます。
optimizer'auto'トレーニング用オプティマイザーの選択。オプション SGD, Adam, AdamW, NAdam, RAdam, RMSProp など、あるいは auto モデル構成に基づく自動選択。収束速度と安定性に影響。
verboseFalseトレーニング中の冗長出力を有効にし、詳細なログと進捗状況を提供します。デバッグやトレーニングプロセスの監視に便利です。
seed0トレーニング用のランダムシードを設定し、同じコンフィギュレーションで実行した場合の結果の再現性を確保します。
deterministicTrue決定論的アルゴリズムの使用を強制し、再現性を確保するが、非決定論的アルゴリズムの制限により、パフォーマンスとスピードに影響を与える可能性がある。
single_clsFalseマルチクラスデータセットのすべてのクラスを1つのクラスとして扱う。バイナリ分類タスクや、分類よりもオブジェクトの存在に注目する場合に便利。
rectFalse最小限のパディングのためにバッチ構成を最適化し、矩形学習を可能にする。効率とスピードが向上しますが、モデルの精度に影響を与える可能性があります。
cos_lrFalseUtilizes a cosine learning rate scheduler, adjusting the learning rate following a cosine curve over epochs. Helps in managing learning rate for better convergence.
close_mosaic10Disables mosaic data augmentation in the last N epochs to stabilize training before completion. Setting to 0 disables this feature.
resumeFalse最後に保存したチェックポイントからトレーニングを再開。モデルの重み、オプティマイザの状態、エポックカウントを自動的にロードし、シームレスにトレーニングを継続。
ampTrueEnables Automatic Mixed Precision (AMP) training, reducing memory usage and possibly speeding up training with minimal impact on accuracy.
fraction1.0学習に使用するデータセットの割合を指定します。実験やリソースが限られている場合に便利です。
profileFalseトレーニング中のONNX とTensorRT 速度のプロファイリングを可能にし、モデル展開の最適化に役立つ。
freezeNoneFreezes the first N layers of the model or specified layers by index, reducing the number of trainable parameters. Useful for fine-tuning or transfer learning.
lr00.01初期学習率 SGD=1E-2, Adam=1E-3) .この値を調整することは、最適化プロセスにとって非常に重要であり、モデルの重みの更新速度に影響する。
lrf0.01初期学習率に対する最終学習率の割合 = (lr0 * lrf)をスケジューラと組み合わせて使用し、時間経過とともに学習率を調整する。
momentum0.937Momentum factor for SGD or beta1 for Adam optimizers, influencing the incorporation of past gradients in the current update.
weight_decay0.0005L2 regularization term, penalizing large weights to prevent overfitting.
warmup_epochs3.0学習率のウォームアップのためのエポック数。低い値から初期学習率まで徐々に学習率を上げていき、早い段階で学習を安定させる。
warmup_momentum0.8ウォームアップ期の初期モメンタムは、ウォームアップ期間中に設定されたモメンタムに徐々に調整される。
warmup_bias_lr0.1ウォームアップフェーズにおけるバイアスパラメータの学習率は、初期エポックにおけるモデル学習を安定させるのに役立つ。
box7.5Weight of the box loss component in the loss function, influencing how much emphasis is placed on accurately predicting bounding box coordinates.
cls0.5全損失関数における分類損失の重みで、他のコンポーネントに対する正しいクラス予測の重要性に影響する。
dfl1.5分布フォーカルロスの重み。YOLO の特定のバージョンで、細かい分類に使用される。
pose12.0ポーズ推定用に学習されたモデルにおけるポーズロスの重み。ポーズキーポイントを正確に予測することに重点が置かれていることが影響している。
kobj2.0ポーズ推定モデルにおけるキーポイントのオブジェクトネス損失の重み、検出信頼度とポーズ精度のバランス。
label_smoothing0.0ラベルスムージングを適用し、ハードラベルをターゲットラベルとラベル上の一様分布の混合に柔らかくすることで、汎化を改善することができる。
nbs64ロスを正規化するための公称バッチサイズ。
overlap_maskTrueDetermines whether segmentation masks should overlap during training, applicable in instance segmentation tasks.
mask_ratio4セグメンテーションマスクのダウンサンプル比。トレーニング時に使用するマスクの解像度に影響する。
dropout0.0分類タスクにおける正則化のためのドロップアウト率。トレーニング中にユニットをランダムに省略することでオーバーフィッティングを防ぐ。
valTrueトレーニング中に検証を有効にし、別のデータセットでモデルの性能を定期的に評価できるようにする。
plotsFalse予測例だけでなく、訓練と検証のメトリクスのプロットを生成して保存し、モデルのパフォーマンスと学習の進行に関する視覚的な洞察を提供します。

バッチサイズ設定に関する注意

について batch 引数は、次の 3 つの方法で構成できます。

  • Fixed Batch Size: 整数値を設定します (例: batch=16) では、バッチあたりの画像数を直接指定します。
  • オートモード (60%GPU メモリー):使う batch=-1 を使用して、CUDA メモリ使用率が約 60% になるようにバッチサイズを自動的に調整します。
  • 使用率率による自動モード:分数の値を設定します(例: batch=0.70) を使って、GPU メモリ使用量の指定された割合に基づいてバッチサイズを調整する。

鉄道ガイド

設定の予測

YOLO モデルの予測設定は、ハイパーパラメータと設定の範囲を包含し、新しいデータに対する推論中のモデルのパフォーマンス、スピード、精度に影響する。特定のタスクに対して最適なパフォーマンスを達成するためには、これらの設定を注意深くチューニングし、実験することが不可欠です。主要な設定には、信頼度閾値、非最大抑制(NMS)閾値、および考慮するクラス数が含まれます。予測プロセスに影響を与えるその他の要因としては、入力データのサイズと形式、マスクやボックスごとの複数のラベルのような補助的な特徴の存在、モデルが採用される特定のタスクなどがある。

推論引数:

議論タイプデフォルト説明
sourcestr'ultralytics/assets'Specifies the data source for inference. Can be an image path, video file, directory, URL, or device ID for live feeds. Supports a wide range of formats and sources, enabling flexible application across different types of input.
conffloat0.25検出の最小信頼度しきい値を設定します。この閾値以下の信頼度で検出されたオブジェクトは無視されます。この値を調整することで、誤検出を減らすことができます。
ioufloat0.7Intersection Over Union (IoU) threshold for Non-Maximum Suppression (NMS). Lower values result in fewer detections by eliminating overlapping boxes, useful for reducing duplicates.
imgszint or tuple640推論のための画像サイズを定義する。単一の整数値 640 for square resizing or a (height, width) tuple. Proper sizing can improve detection accuracy and processing speed.
halfboolFalseEnables half-precision (FP16) inference, which can speed up model inference on supported GPUs with minimal impact on accuracy.
devicestrNone推論を行うデバイスを指定する(例. cpu, cuda:0 または 0).CPU 、特定のGPU 、またはモデル実行のための他のコンピュート・デバイスを選択することができます。
max_detint300画像あたりの最大検出数。1回の推論でモデルが検出できるオブジェクトの総数を制限し、密集したシーンでの過剰な出力を防ぎます。
vid_strideint1ビデオ入力のフレームストライド。時間的な解像度を犠牲にして処理を高速化するために、ビデオのフレームをスキップできるようにする。1の値はすべてのフレームを処理し、それ以上の値はフレームをスキップする。
stream_bufferboolFalseDetermines whether to queue incoming frames for video streams. If False, old frames get dropped to accomodate new frames (optimized for real-time applications). If `True', queues new frames in a buffer, ensuring no frames get skipped, but will cause latency if inference FPS is lower than stream FPS.
visualizeboolFalse推論中にモデルの特徴を可視化し、モデルが何を「見て」いるのかを知ることができます。デバッグやモデルの解釈に役立ちます。
augmentboolFalse予測に対するテスト時間拡張(TTA)を可能にし、推論速度を犠牲にすることで検出のロバスト性を向上させる可能性がある。
agnostic_nmsboolFalse異なるクラスのオーバーラップしたボックスをマージする、クラスにとらわれない非最大抑制(NMS)を有効にします。クラスの重複が一般的なマルチクラス検出シナリオで有用。
classeslist[int]Noneクラス ID のセットに予測をフィルタリングします。指定されたクラスに属する検出のみが返されます。複数クラスの検出タスクで、関連するオブジェクトに焦点を当てるのに便利です。
retina_masksboolFalseモデルに高解像度のセグメンテーションマスクがあれば、それを使用する。これにより、セグメンテーションタスクのマスク品質が向上し、より細かいディテールが得られます。
embedlist[int]NoneSpecifies the layers from which to extract feature vectors or embeddings. Useful for downstream tasks like clustering or similarity search.

可視化の引数:

議論タイプデフォルト説明
showboolFalseもし True注釈付きの画像やビデオをウィンドウに表示します。開発中やテスト中の即時の視覚的フィードバックに便利です。
saveboolFalse または TrueEnables saving of the annotated images or videos to file. Useful for documentation, further analysis, or sharing results. Defaults to True when using CLI & False when used in Python.
save_framesboolFalse動画を処理する際、個々のフレームを画像として保存します。特定のフレームを抽出したり、フレームごとの詳細な分析に便利です。
save_txtboolFalse検出結果をテキストファイルに保存します。 [class] [x_center] [y_center] [width] [height] [confidence].他の分析ツールとの統合に便利。
save_confboolFalse保存されたテキストファイルに信頼度スコアが含まれます。後処理や分析に利用できる詳細な情報が強化されます。
save_cropboolFalse検出画像をトリミングして保存します。データセットの補強や分析、特定の対象物に特化したデータセットの作成に便利です。
show_labelsboolTrue視覚出力に各検出のラベルを表示。検出されたオブジェクトを即座に理解できます。
show_confboolTrue各検出の信頼スコアがラベルと一緒に表示されます。各検出に対するモデルの確信度を示します。
show_boxesboolTrue検出されたオブジェクトの周囲にバウンディングボックスを描画します。画像やビデオフレーム内のオブジェクトを視覚的に識別し、位置を特定するために不可欠です。
line_widthNone または intNoneバウンディングボックスの線幅を指定します。もし None画像サイズに応じて、線幅が自動的に調整されます。視覚的にわかりやすくカスタマイズできます。

予測ガイド

バリデーション設定

YOLO モデルのval(検証)設定には、検証データセット上でモデルのパフォーマンスを評価するために使用される様々なハイパーパラメータと設定が含まれる。これらの設定は、モデルの性能、スピード、精度に影響します。一般的なYOLO の検証設定には、バッチサイズ、トレーニング中の検証頻度、性能評価メトリクスが含まれる。検証プロセスに影響を与える他の要因には、検証データセットのサイズと構成、およびモデルが採用される特定のタスクが含まれます。

議論タイプデフォルト説明
datastrNoneデータセット設定ファイルへのパスを指定する(例. coco8.yaml). This file includes paths to validation data, class names, and number of classes.
imgszint640入力画像のサイズを定義します。すべての画像は、処理前にこの寸法にリサイズされます。
batchint16バッチあたりの画像数を設定します。使用方法 -1 オートバッチは、GPU メモリの可用性に基づいて自動的に調整されます。
save_jsonboolFalseもし Trueそして、さらなる分析や他のツールとの統合のために、結果をJSONファイルに保存します。
save_hybridboolFalseもし Trueラベルのハイブリッドバージョンは、元のアノテーションと追加モデルの予測を組み合わせて保存します。
conffloat0.001検出の最小信頼度閾値を設定する。この閾値以下の信頼度の検出は破棄される。
ioufloat0.6Sets the Intersection Over Union (IoU) threshold for Non-Maximum Suppression (NMS). Helps in reducing duplicate detections.
max_detint300画像あたりの最大検出数を制限します。密なシーンで過剰な検出を防ぐのに便利です。
halfboolTrueEnables half-precision (FP16) computation, reducing memory usage and potentially increasing speed with minimal impact on accuracy.
devicestrNone検証用デバイスを指定する (cpu, cuda:0など)。CPU またはGPU のリソースを柔軟に利用できる。
dnnboolFalseもし True, uses the オープンCV DNN module for ONNX model inference, offering an alternative to PyTorch inference methods.
plotsboolFalseに設定した場合 Trueまた、モデルの性能を視覚的に評価するために、予測値とグランドトゥルースのプロットを生成し、保存します。
rectboolFalseもし True矩形推論をバッチングに使用することで、パディングを減らし、スピードと効率を向上させる可能性がある。
splitstrval検証に使うデータセットの分割を決定する (val, testあるいは train).性能評価用のデータセグメントを柔軟に選択できる。

Careful tuning and experimentation with these settings are crucial to ensure optimal performance on the validation dataset and detect and prevent overfitting.

バルガイド

エクスポート設定

YOLO モデルのエクスポート設定には、異なる環境やプラットフォームで使用するためのモデルの保存やエクスポートに関する設定やオプションが含まれます。これらの設定は、モデルのパフォーマンス、サイズ、さまざまなシステムとの互換性に影響を与える可能性があります。主なエクスポート設定には、エクスポートされるモデルのファイル形式(例:ONNX 、TensorFlow SavedModel )、ターゲット・デバイス(例:CPU 、GPU )、およびマスクやボックスごとの複数のラベルなどの追加機能が含まれる。エクスポートプロセスは、モデル固有のタスクや、エクスポート先の環境やプラットフォームの要件や制約にも影響される場合があります。

議論タイプデフォルト説明
formatstr'torchscript'エクスポートされるモデルのターゲットフォーマット。 'onnx', 'torchscript', 'tensorflow'など、さまざまな展開環境との互換性を定義している。
imgszint または tuple640モデル入力に必要な画像サイズ。正方形画像の場合は整数,正方形画像の場合はタプルになります. (height, width) 具体的な寸法については
kerasboolFalseEnables export to Keras format for TensorFlow SavedModel, providing compatibility with TensorFlow serving and APIs.
optimizeboolFalseTorchScript へのエクスポート時にモバイルデバイス向けの最適化を適用し、モデルサイズを縮小してパフォーマンスを向上させる可能性があります。
halfboolFalseFP16(半精度)量子化を有効にし、モデルサイズを縮小し、サポートされているハードウェアでの推論を高速化する可能性があります。
int8boolFalseActivates INT8 quantization, further compressing the model and speeding up inference with minimal accuracy loss, primarily for edge devices.
dynamicboolFalseONNX 、TensorRT 、OpenVINO エクスポートのための動的な入力サイズを可能にし、さまざまな画像寸法を扱う柔軟性を高めます。
simplifyboolTrueのモデルグラフを簡略化します。 ONNX エクスポート onnxslimこれにより、パフォーマンスと互換性が向上する可能性があります。
opsetintNone異なるONNX パーサーやランタイムとの互換性のために、ONNX のオペセットのバージョンを指定します。設定されていない場合は、サポートされている最新のバージョンを使用します。
workspacefloat4.0TensorRT 、メモリ使用量とパフォーマンスのバランスをとりながら最適化するために、ワークスペースの最大サイズをGiB単位で設定します。
nmsboolFalse正確で効率的な検出の後処理に不可欠な非最大抑制(NMS)をCoreML エクスポートに追加します。
batchint1エクスポート モデルのバッチ推論サイズ、またはエクスポートされたモデルが同時に処理する画像の最大数を指定します predict モードだ。

エクスポートされたモデルが意図されたユースケースに最適化され、ターゲット環境で効果的に機能するように、これらの設定を慎重に構成することが極めて重要です。

輸出ガイド

オーグメンテーションの設定

Augmentation techniques are essential for improving the robustness and performance of YOLO models by introducing variability into the training data, helping the model generalize better to unseen data. The following table outlines the purpose and effect of each augmentation argument:

議論タイプデフォルトレンジ説明
hsv_hfloat0.0150.0 - 1.0画像の色相をカラーホイールの数分の一だけ調整し、色のばらつきを導入します。異なる照明条件でのモデルの一般化を助けます。
hsv_sfloat0.70.0 - 1.0画像の彩度をほんの少し変化させ、色の濃さに影響を与えます。異なる環境条件をシミュレートするのに便利です。
hsv_vfloat0.40.0 - 1.0画像の値(明るさ)を小数で変更し、さまざまな照明条件下でモデルがうまく機能するようにします。
degreesfloat0.0-180 - +180指定した度数の範囲内で画像をランダムに回転させ、さまざまな向きのオブジェクトを認識するモデルの能力を向上させます。
translatefloat0.10.0 - 1.0画像を水平方向と垂直方向に画像サイズの数分の一だけ平行移動させ、部分的に見える物体を検出する学習に役立てる。
scalefloat0.5>=0.0ゲイン係数で画像をスケーリングし、カメラから異なる距離にある物体をシミュレートする。
shearfloat0.0-180 - +180画像を指定した角度で切断し、物体を異なる角度から見たときの効果を模倣する。
perspectivefloat0.00.0 - 0.001画像にランダムな透視変換を適用し、3D空間のオブジェクトを理解するモデルの能力を高める。
flipudfloat0.00.0 - 1.0指定された確率で画像を上下反転させ、オブジェクトの特性に影響を与えることなくデータのばらつきを大きくする。
fliplrfloat0.50.0 - 1.0左右対称のオブジェクトを学習したり、データセットの多様性を高めたりするのに役立つ。
bgrfloat0.00.0 - 1.0画像チャンネルを、指定した確率でRGBからBGRに反転させます。これは、誤ったチャンネル順序に対するロバスト性を高めるのに役立ちます。
mosaicfloat1.00.0 - 1.04枚のトレーニング画像を1枚に合成し、異なるシーンの構成やオブジェクトの相互作用をシミュレート。複雑なシーンの理解に高い効果を発揮。
mixupfloat0.00.0 - 1.02つの画像とそのラベルをブレンドし、合成画像を作成します。ラベルノイズや視覚的なばらつきを導入することで、モデルの汎化能力を高める。
copy_pastefloat0.00.0 - 1.0オブジェクトのインスタンスを増やしたり、オブジェクトのオクルージョンを学習したりするのに便利です。
copy_paste_modestrflip-Copy-Paste augmentation method selection among the options of ("flip", "mixup").
auto_augmentstrrandaugment-事前に定義された補強ポリシー(randaugment, autoaugment, augmix)、視覚的特徴を多様化することで分類タスクを最適化する。
erasingfloat0.40.0 - 0.9分類トレーニング中に画像の一部をランダムに消去し、モデルが認識のためにあまり目立たない特徴に集中するよう促す。
crop_fractionfloat1.00.1 - 1.0中心の特徴を強調し、オブジェクトのスケールに適応し、背景の乱れを軽減するために、分類画像をそのサイズのほんの一部に切り取ります。

これらの設定は、データセットと手元のタスクの特定の要件を満たすように調整することができます。異なる値で実験することで、最良のモデル性能につながる最適なオーグメンテーション戦略を見つけることができます。

ロギング、チェックポイント、プロット設定

ロギング、チェックポイント、プロット、ファイル管理は、YOLO モデルをトレーニングする際に重要な考慮事項である。

  • ロギング:モデルの進捗を追跡し、問題が発生した場合に診断するために、トレーニング中にさまざまなメトリクスや統計情報をログに記録しておくと役に立つことが多い。これは、TensorBoardのようなロギングライブラリを使用するか、ファイルにログメッセージを書き込むことで行うことができます。
  • チェックポイントトレーニング中、一定間隔でモデルのチェックポイントを保存することは良い習慣です。これにより、トレーニングプロセスが中断された場合や、異なるトレーニング設定を試したい場合に、以前のポイントからトレーニングを再開することができます。
  • プロットする:モデルのパフォーマンスとトレーニングの進捗を視覚化することは、モデルの振る舞いを理解し、潜在的な問題を特定するのに役立ちます。これは、matplotlibのようなプロットライブラリを使用するか、TensorBoardのようなロギングライブラリを使用してプロットを生成することで行うことができます。
  • ファイル管理:モデルのチェックポイント、ログファイル、プロットなど、トレーニングプロセス中に生成される様々なファイルを管理することは困難です。これらのファイルを追跡し、必要に応じて簡単にアクセスして分析できるように、明確で整理されたファイル構造を持つことが重要です。

効果的なロギング、チェックポイント、プロット、ファイル管理により、モデルの進行状況を把握し、デバッグやトレーニングプロセスの最適化を容易にすることができます。

議論デフォルト説明
project'runs'トレーニング実行を保存するルートディレクトリを指定します。各ランはこのディレクトリ内の個別のサブディレクトリに保存されます。
name'exp'実験名を定義する。指定しない場合、YOLO は実行ごとにこの名前を自動的にインクリメントする、 exp, exp2など、以前の実験を上書きしないようにする。
exist_okFalse同じ名前の実験ディレクトリが既に存在する場合、上書きするかどうかを決定します。これを True は上書きを許可するが False それを防ぐ。
plotsFalseトレーニングプロットと検証プロットの生成と保存を制御します。設定項目 True to create plots such as loss curves, precision-recall curves, and sample predictions. Useful for visually tracking model performance over time.
saveFalseトレーニングのチェックポイントと最終的なモデルの重みの保存を有効にします。設定値 True を使用してモデルの状態を定期的に保存し、これらのチェックポイントからトレーニングを再開したり、モデルをデプロイしたりすることができます。

よくあるご質問

トレーニング中にYOLO モデルのパフォーマンスを向上させるには?

Improving YOLO model performance involves tuning hyperparameters like batch size, learning rate, momentum, and weight decay. Adjusting augmentation settings, selecting the right optimizer, and employing techniques like early stopping or mixed precision can also help. For detailed guidance on training settings, refer to the Train Guide.

YOLO モデルの精度を高めるために考慮すべき重要なハイパーパラメータは何か?

YOLO モデルの精度に影響する主なハイパーパラメータには以下のものがある:

  • バッチサイズbatch):バッチサイズを大きくすればトレーニングは安定するが、より多くのメモリを必要とする可能性がある。
  • 学習率lr0):ウェイトの更新のステップサイズを制御する。レートを小さくすると微調整が可能になるが、収束が遅くなる。
  • モメンタム (momentum):勾配ベクトルを正しい方向に加速させ、振動を和らげる。
  • 画像サイズimgsz):画像サイズを大きくすれば精度は向上するが、計算負荷は増大する。

あなたのデータセットとハードウェアの能力に基づいてこれらの値を調整してください。詳しくはTrain Settingsセクションをご覧ください。

YOLO モデルをトレーニングする際の学習率はどのように設定するのですか?

学習率(lr0)は最適化にとって極めて重要である。一般的な出発点は 0.01 SGDまたは 0.001 アダムのためにトレーニングの指標をモニターし、必要に応じて調整することが不可欠です。コサイン学習率スケジューラ(cos_lr)やウォームアップ・テクニック(warmup_epochs, warmup_momentum)を使用して、トレーニング中に動的にレートを変更することができます。詳細は 鉄道ガイド.

YOLO モデルのデフォルトの推論設定は?

デフォルトの推論設定は以下の通り:

  • 信頼しきい値conf=0.25):検出の最小信頼度。
  • IoUしきい値(iou=0.7):ノンマキシマムサプレッション(NMS)用。
  • 画像サイズimgsz=640):推論前に入力画像のリサイズを行う。
  • デバイスdevice=None): Selects CPU or GPU for inference. For a comprehensive overview, visit the 設定の予測 セクションと 予測ガイド.

YOLO 、なぜミックスド・プレシジョン・トレーニングを使うべきなのか?

ミックスド・プレシジョン・トレーニング amp=Trueまた、FP16とFP32の両方の利点を活用することで、メモリ使用量を削減し、トレーニングを高速化することができます。これは、混合精度をネイティブにサポートする最新のGPUにとって有益であり、より多くのモデルをメモリに収めることができ、精度を大きく損なうことなく、より高速な計算が可能になります。これについては 鉄道ガイド.

📅 Created 11 months ago ✏️ Updated 17 days ago

コメント