コンテンツへスキップ

構成

YOLO 設定とハイパーパラメータは、モデルのパフォーマンス、スピード、精度に重要な役割を果たします。これらの設定とハイパーパラメータは、トレーニング、検証、予測など、モデル開発プロセスのさまざまな段階でモデルの動作に影響を与えます。



見るんだ: MasteringUltralytics YOLOv8 : コンフィギュレーション

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

例

yolo TASK MODE ARGS
from ultralytics import YOLO

# Load a YOLOv8 model from a pre-trained weights file
model = YOLO('yolov8n.pt')

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

どこでだ:

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

タスク

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

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

タスクガイド

モード

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

  • 訓練する:カスタムデータセットでYOLOv8 モデルをトレーニングする。
  • Val:YOLOv8 モデルがトレーニングされた後の検証用。
  • 予測する:新しい画像や動画に対して、学習済みのYOLOv8 モデルを使って予測を行う。
  • エクスポート:YOLOv8 モデルを配置に使用できる形式にエクスポートします。
  • 追跡:YOLOv8 モデルを使ってリアルタイムで物体を追跡する。
  • ベンチマーク:YOLOv8 (ONNX 、TensorRT など)のエクスポート速度と精度のベンチマーク用。
議論 デフォルト 説明
mode 'train' YOLO モデルが動作するモードを指定します。オプションは以下の通り。 train をモデルトレーニングに使用する、 val を検証する、 predict 新しいデータに対する推論のために、 export モデルの展開形式への変換 track 物体追跡用 benchmark 性能評価用各モードは、開発から配備まで、モデルライフサイクルのさまざまな段階に対応するように設計されている。

モードガイド

列車設定

YOLO モデルの学習設定は、学習プロセスで使用される様々なハイパーパラメータと設定を包含する。これらの設定はモデルのパフォーマンス、スピード、精度に影響を与える。主な学習設定には、バッチサイズ、学習率、モメンタム、ウェイト減衰が含まれる。さらに、オプティマイザ、損失関数、学習データセットの構成などの選択も学習プロセスに影響を与えます。パフォーマンスを最適化するためには、これらの設定を慎重にチューニングし、実験することが重要です。

議論 デフォルト 説明
model None トレーニング用のモデルファイルを指定します。ファイルへのパスを指定します。 .pt 訓練済みモデルまたは .yaml 設定ファイル。モデル構造の定義や重みの初期化に不可欠。
data None データセット設定ファイルへのパス(例. coco128.yaml).このファイルには、学習データと検証データへのパス、クラス名、クラス数など、データセット固有のパラメータが含まれる。
epochs 100 学習エポックの総数。各エポックはデータセット全体のフルパスを意味する。この値を調整することで、トレーニング期間とモデルのパフォーマンスに影響を与えることができる。
time None 最大トレーニング時間(時間単位)。設定すると epochs 引数を指定することで、指定した期間後にトレーニングを自動的に停止することができます。時間に制約のあるトレーニングシナリオに便利です。
patience 100 学習を早期に停止する前に、検証メトリクスに改善が見られない場合のエポック数。性能が頭打ちになったときに学習を停止することで、オーバーフィッティングを防ぐことができます。
batch 16 モデルの内部パラメータが更新される前に処理される画像の数を示す。オートバッチ (batch=-1)は、GPUメモリの利用可能性に基づいてバッチサイズを動的に調整します。
imgsz 640 トレーニングのターゲット画像サイズ。すべての画像は、モデルに入力される前にこの次元にリサイズされます。モデルの精度と計算の複雑さに影響します。
save True トレーニングのチェックポイントと最終的なモデルの重みを保存できるようにします。トレーニングの再開やモデルのデプロイに便利です。
save_period -1 モデルのチェックポイントを保存する頻度をエポックで指定します。値を-1にすると、この機能は無効になります。長いトレーニングセッション中に中間モデルを保存するのに便利です。
cache False データセット画像をメモリ上にキャッシュできるようにする (True/ram)、ディスク(disk)、または無効にする(False).メモリ使用量の増加と引き換えに、ディスクI/Oを削減することでトレーニング速度を向上させる。
device None トレーニング用の計算デバイスを指定します。device=0)、マルチGPU(device=0,1)、CPU(device=cpu)、またはアップル・シリコン用のMPS(device=mps).
workers 8 データロードのためのワーカースレッド数(1スレッドあたり RANK マルチGPUトレーニングの場合)。データの前処理とモデルへの投入速度に影響し、特にマルチGPUセットアップで有用。
project None トレーニング出力が保存されるプロジェクトディレクトリの名前。異なる実験を整理して保存できるようにする。
name None トレーニング実行の名前。プロジェクトフォルダ内にサブディレクトリを作成し、そこにトレーニングログと出力を保存します。
exist_ok False Trueの場合、既存のproject/nameディレクトリを上書きできる。以前の出力を手動で消去する必要がなく、繰り返し実験するのに便利です。
pretrained True 事前に訓練されたモデルから学習を開始するかどうかを決定します。ブール値または特定のモデルへの文字列パスを指定し、そこから重みを読み込みます。トレーニングの効率とモデルのパフォーマンスを向上させます。
optimizer 'auto' トレーニング用オプティマイザーの選択。オプション SGD, Adam, AdamW, NAdam, RAdam, RMSProp など、あるいは auto モデル構成に基づく自動選択。収束速度と安定性に影響します。
verbose False トレーニング中の冗長出力を有効にし、詳細なログと進捗状況を提供します。デバッグやトレーニングプロセスの監視に便利です。
seed 0 トレーニング用のランダムシードを設定し、同じコンフィギュレーションで実行した場合の結果の再現性を確保します。
deterministic True 決定論的アルゴリズムの使用を強制し、再現性を確保するが、非決定論的アルゴリズムの制限により、パフォーマンスとスピードに影響を与える可能性がある。
single_cls False マルチクラスデータセットのすべてのクラスを1つのクラスとして扱う。バイナリ分類タスクや、分類よりもオブジェクトの存在に注目する場合に便利。
rect False 最小限のパディングのためにバッチ構成を最適化し、矩形学習を可能にする。効率とスピードが向上しますが、モデルの精度に影響を与える可能性があります。
cos_lr False コサイン学習率スケジューラを利用し、エポックにわたってコサイン曲線に従って学習率を調整する。より良い収束のための学習率管理に役立つ。
close_mosaic 10 トレーニング完了前に安定させるため、最後のNエポックでのモザイクデータ増大を無効にする。0に設定するとこの機能は無効になる。
resume False 最後に保存したチェックポイントからトレーニングを再開。モデルの重み、オプティマイザの状態、エポックカウントを自動的にロードし、シームレスにトレーニングを継続。
amp True 自動混合精度(AMP)トレーニングが可能になり、メモリ使用量を削減し、精度への影響を最小限に抑えながらトレーニングを高速化できる可能性があります。
fraction 1.0 学習に使用するデータセットの割合を指定します。実験やリソースが限られている場合に便利です。
profile False トレーニング中のONNX とTensorRT 速度のプロファイリングを可能にし、モデル展開の最適化に役立つ。
freeze None モデルの最初のN層、またはインデックスで指定した層をフリーズし、学習可能なパラメータの数を減らす。微調整や転移学習に便利。
lr0 0.01 初期学習率 SGD=1E-2, Adam=1E-3) .この値を調整することは、最適化プロセスにとって非常に重要であり、モデルの重みの更新速度に影響する。
lrf 0.01 初期学習率に対する最終学習率の割合 = (lr0 * lrf)をスケジューラと併用し、時間経過とともに学習率を調整する。
momentum 0.937 SGDの場合はモメンタム係数、Adamオプティマイザの場合はβ1で、過去の勾配を現在の更新に反映させる。
weight_decay 0.0005 L2正則化項は、オーバーフィッティングを防ぐために大きな重みにペナルティを与える。
warmup_epochs 3.0 学習率のウォームアップのためのエポック数。低い値から初期学習率まで徐々に学習率を上げていき、早い段階で学習を安定させる。
warmup_momentum 0.8 ウォームアップ期の初期モメンタムは、ウォームアップ期間中に設定されたモメンタムに徐々に調整される。
warmup_bias_lr 0.1 ウォームアップフェーズにおけるバイアスパラメータの学習率は、初期エポックにおけるモデル学習を安定させるのに役立つ。
box 7.5 バウンディングボックスの座標を正確に予測することにどの程度重点を置くかに影響する。
cls 0.5 全損失関数における分類損失の重みで、他のコンポーネントに対する正しいクラス予測の重要性に影響する。
dfl 1.5 分布フォーカルロスの重み。YOLO の特定のバージョンで、細かい分類に使用される。
pose 12.0 ポーズ推定用に学習されたモデルにおけるポーズロスの重み。ポーズキーポイントを正確に予測することに重点が置かれていることが影響している。
kobj 2.0 ポーズ推定モデルにおけるキーポイントのオブジェクトネス損失の重み、検出信頼度とポーズ精度のバランス。
label_smoothing 0.0 ラベルスムージングを適用し、ハードラベルをターゲットラベルとラベル上の一様分布の混合に柔らかくすることで、汎化を改善することができる。
nbs 64 ロスを正規化するための公称バッチサイズ。
overlap_mask True インスタンスのセグメンテーションタスクに適用されます。
mask_ratio 4 セグメンテーションマスクのダウンサンプル比。トレーニング時に使用するマスクの解像度に影響する。
dropout 0.0 分類タスクにおける正則化のためのドロップアウト率。トレーニング中にユニットをランダムに省略することでオーバーフィッティングを防ぐ。
val True トレーニング中に検証を有効にし、別のデータセットでモデルの性能を定期的に評価できるようにする。
plots False 予測例だけでなく、訓練と検証のメトリクスのプロットを生成して保存し、モデルのパフォーマンスと学習の進行に関する視覚的な洞察を提供します。

鉄道ガイド

設定の予測

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

推論引数:

議論 タイプ デフォルト 説明
source str 'ultralytics/assets' 推論のデータソースを指定します。画像パス、ビデオファイル、ディレクトリ、URL、またはライブフィードのデバイスIDを指定できます。幅広いフォーマットとソースをサポートしているため、さまざまな入力タイプに柔軟に対応できます。
conf float 0.25 検出の最小信頼度しきい値を設定します。この閾値以下の信頼度で検出されたオブジェクトは無視されます。この値を調整することで、誤検出を減らすことができます。
iou float 0.7 Non-Maximum Suppression (NMS)のIntersection Over Union (IoU)しきい値。値が高いほど、重複するボックスが排除されるため検出数が少なくなり、重複を減らすのに役立ちます。
imgsz int or tuple 640 推論のための画像サイズを定義する。単一の整数値 640 で正方形にリサイズするか、(高さ、幅)のタプルを使用する。適切なサイジングは、検出精度と処理速度を向上させます。
half bool False 半精度(FP16)推論が可能になり、サポートされているGPUでのモデル推論を、精度への影響を最小限に抑えながら高速化することができます。
device str None 推論を行うデバイスを指定する(例. cpu, cuda:0 または 0).CPU、特定のGPU、またはその他の計算デバイスからモデル実行を選択することができます。
max_det int 300 画像あたりの最大検出数。1回の推論でモデルが検出できるオブジェクトの総数を制限し、密集したシーンでの過剰な出力を防ぎます。
vid_stride int 1 ビデオ入力のフレームストライド。時間的な解像度を犠牲にして処理を高速化するために、ビデオのフレームをスキップできるようにする。1の値はすべてのフレームを処理し、それ以上の値はフレームをスキップする。
stream_buffer bool False ビデオストリームを処理する際に、すべてのフレームをバッファリングするかどうかを決定する (True) を返すか、あるいはモデルが最新のフレーム (False).リアルタイムアプリケーションに便利。
visualize bool False 推論中にモデルの特徴を可視化し、モデルが何を「見て」いるのかを知ることができます。デバッグやモデルの解釈に役立ちます。
augment bool False 予測に対するテスト時間拡張(TTA)を可能にし、推論速度を犠牲にすることで検出のロバスト性を向上させる可能性がある。
agnostic_nms bool False 異なるクラスのオーバーラップしたボックスをマージする、クラスにとらわれない非最大抑制(NMS)を有効にします。クラスの重複が一般的なマルチクラス検出シナリオで有用。
classes list[int] None クラス ID のセットに予測をフィルタリングします。指定されたクラスに属する検出のみが返されます。複数クラスの検出タスクで、関連するオブジェクトに焦点を当てるのに便利です。
retina_masks bool False モデルに高解像度のセグメンテーションマスクがあれば、それを使用する。これにより、セグメンテーションタスクのマスク品質が向上し、より細かいディテールが得られます。
embed list[int] None 特徴ベクトルまたは埋め込みを抽出するレイヤを指定します。クラスタリングや類似検索のような下流のタスクに便利です。

可視化の引数:

議論 タイプ デフォルト 説明
show bool False もし True注釈付きの画像やビデオをウィンドウに表示します。開発中やテスト中の即時の視覚的フィードバックに便利です。
save bool False 注釈付きの画像や動画をファイルに保存できます。文書化、さらなる分析、結果の共有に便利です。
save_frames bool False 動画を処理する際、個々のフレームを画像として保存します。特定のフレームを抽出したり、フレームごとの詳細な分析に便利です。
save_txt bool False 検出結果をテキストファイルに保存します。 [class] [x_center] [y_center] [width] [height] [confidence].他の分析ツールとの統合に便利。
save_conf bool False 保存されたテキストファイルに信頼度スコアが含まれます。後処理や分析に利用できる詳細な情報が強化されます。
save_crop bool False 検出画像をトリミングして保存します。データセットの補強や分析、特定の対象物に特化したデータセットの作成に便利です。
show_labels bool True 視覚出力に各検出のラベルを表示。検出されたオブジェクトを即座に理解できます。
show_conf bool True 各検出の信頼スコアをラベルと一緒に表示します。各検出に対するモデルの確信度を示します。
show_boxes bool True 検出されたオブジェクトの周囲にバウンディングボックスを描画します。画像やビデオフレーム内のオブジェクトを視覚的に識別し、位置を特定するために不可欠です。
line_width None or int None バウンディングボックスの線幅を指定します。もし None画像サイズに応じて、線幅が自動的に調整されます。視覚的にわかりやすくカスタマイズできます。

予測ガイド

バリデーション設定

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

議論 タイプ デフォルト 説明
data str None データセット設定ファイルへのパスを指定する(例. coco128.yaml).このファイルには、検証データへのパス、クラス名、クラス数が含まれています。
imgsz int 640 度(度(度) 入力画像の度(度(度(度(度偶数度(度偶数度すべての画像は、処理前にこの寸法にリサイズされます。
batch int 16 バッチあたりの画像数を設定します。使用方法 -1 GPUメモリの利用可能性に基づいて自動的に調整されるAutoBatch用。
save_json bool False もし Trueそして、さらなる分析や他のツールとの統合のために、結果をJSONファイルに保存します。
save_hybrid bool False もし Trueラベルのハイブリッドバージョンは、元のアノテーションと追加モデルの予測を組み合わせて保存します。
conf float 0.001 検出の最小信頼度閾値を設定する。この閾値以下の信頼度の検出は破棄される。
iou float 0.6 Non-Maximum Suppression(NMS)のIntersection Over Union(IoU)しきい値を設定します。重複検出の低減に役立ちます。
max_det int 300 画像あたりの最大検出数を制限します。密なシーンで過剰な検出を防ぐのに便利です。
half bool True 半精度(FP16)計算が可能になり、メモリ使用量を削減し、精度への影響を最小限に抑えながら速度を向上できる可能性があります。
device str None 検証用デバイスを指定する (cpu, cuda:0など)。CPUやGPUリソースを柔軟に利用できる。
dnn bool False もし TrueOpenCVのDNNモジュールは、ONNX モデル推論に使用され、PyTorch 推論手法の代替となる。
plots bool False に設定した場合 Trueまた、モデルの性能を視覚的に評価するために、予測値とグランドトゥルースのプロットを生成し、保存します。
rect bool False もし True矩形推論をバッチングに使用することで、パディングを減らし、スピードと効率を向上させる可能性がある。
split str val 検証に使うデータセットの分割を決定する (val, testあるいは train).性能評価用のデータセグメントを柔軟に選択できる。

検証データセットで最適なパフォーマンスを確保し、オーバーフィッティングを検出・防止するためには、これらの設定を慎重にチューニングし、実験することが極めて重要である。

バルガイド

エクスポート設定

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

議論 タイプ デフォルト 説明
format str 'torchscript' エクスポートされるモデルのターゲットフォーマット。 'onnx', 'torchscript', 'tensorflow'など、さまざまな展開環境との互換性を定義している。
imgsz int または tuple 640 モデル入力に必要な画像サイズ。正方形画像の場合は整数,正方形画像の場合はタプルになります. (height, width) 具体的な寸法については
keras bool False TensorFlow SavedModel 用の Keras フォーマットへのエクスポートを可能にし、TensorFlow サービングや API との互換性を提供します。
optimize bool False TorchScript へのエクスポート時にモバイルデバイス向けの最適化を適用し、モデルサイズを縮小してパフォーマンスを向上させる可能性があります。
half bool False FP16(半精度)量子化を有効にし、モデルサイズを縮小し、サポートされているハードウェアでの推論を高速化する可能性があります。
int8 bool False INT8量子化を有効にすることで、モデルをさらに圧縮し、主にエッジデバイスに対して、最小限の精度損失で推論を高速化する。
dynamic bool False ONNX 、TensorRT エクスポートのための動的な入力サイズを可能にし、さまざまな画像寸法を扱う柔軟性を高めます。
simplify bool False ONNX エクスポートのモデルグラフが簡素化され、パフォーマンスと互換性が向上する可能性があります。
opset int None 異なるONNX パーサーやランタイムとの互換性のために、ONNX のオペセットのバージョンを指定します。設定されていない場合は、サポートされている最新のバージョンを使用します。
workspace float 4.0 TensorRT 最適化のための最大ワークスペース・サイズを GB 単位で設定し、メモリ使用量とパフォーマンスのバランスをとる。
nms bool False 正確で効率的な検出の後処理に不可欠な非最大抑制(NMS)をCoreML エクスポートに追加します。

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

輸出ガイド

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

オーグメンテーション技術は、学習データに可変性を導入することで、YOLO モデルのロバスト性とパフォーマンスを向上させ、モデルが未知のデータに対してより良く汎化できるようにするために不可欠です。次の表は、各補強の目的と効果の概要です:

議論 タイプ デフォルト レンジ 説明
hsv_h float 0.015 0.0 - 1.0 画像の色相をカラーホイールの数分の一だけ調整し、色のばらつきを導入します。異なる照明条件でのモデルの一般化を助けます。
hsv_s float 0.7 0.0 - 1.0 画像の彩度をほんの少し変化させ、色の濃さに影響を与えます。異なる環境条件をシミュレートするのに便利です。
hsv_v float 0.4 0.0 - 1.0 画像の値(明るさ)を小数で変更し、さまざまな照明条件下でモデルがうまく機能するようにします。
degrees float 0.0 -180 - +180 指定した度数の範囲内で画像をランダムに回転させ、さまざまな向きのオブジェクトを認識するモデルの能力を向上させます。
translate float 0.1 0.0 - 1.0 画像を水平方向と垂直方向に画像サイズの数分の一だけ平行移動させ、部分的に見える物体を検出する学習に役立てる。
scale float 0.5 >=0.0 画像をゲイン係数でスケーリングし、カメラから異なる距離にある物体をシミュレートする。
shear float 0.0 -180 - +180 画像を指定した角度で切断し、物体を異なる角度から見たときの効果を模倣する。
perspective float 0.0 0.0 - 0.001 画像にランダムな透視変換を適用し、3D空間のオブジェクトを理解するモデルの能力を高める。
flipud float 0.0 0.0 - 1.0 指定された確率で画像を上下反転させ、オブジェクトの特性に影響を与えることなくデータのばらつきを大きくする。
fliplr float 0.5 0.0 - 1.0 左右対称のオブジェクトを学習したり、データセットの多様性を高めたりするのに役立つ。
mosaic float 1.0 0.0 - 1.0 4枚のトレーニング画像を1枚に合成し、異なるシーンの構成やオブジェクトの相互作用をシミュレート。複雑なシーンの理解に高い効果を発揮。
mixup float 0.0 0.0 - 1.0 2つの画像とそのラベルをブレンドし、合成画像を作成します。ラベルノイズと視覚的なばらつきを導入することで、モデルの汎化能力を高める。
copy_paste float 0.0 0.0 - 1.0 オブジェクトのインスタンスを増やしたり、オブジェクトのオクルージョンを学習したりするのに便利です。
auto_augment str randaugment - 事前に定義された補強ポリシー(randaugment, autoaugment, augmix)、視覚的特徴を多様化することで分類タスクを最適化する。
erasing float 0.4 0.0 - 1.0 分類トレーニング中に画像の一部をランダムに消去し、モデルが認識のためにあまり目立たない特徴に集中するよう促す。

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

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

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

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

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

議論 デフォルト 説明
project 'runs' トレーニング実行を保存するルートディレクトリを指定します。各ランはこのディレクトリ内の個別のサブディレクトリに保存されます。
name 'exp' 実験名を定義する。指定しない場合、YOLO は実行ごとにこの名前を自動的にインクリメントする、 exp, exp2など、以前の実験を上書きしないようにする。
exist_ok False 同じ名前の実験ディレクトリが既に存在する場合、上書きするかどうかを決定します。これを True は上書きを許可するが False それを防ぐ。
plots False トレーニングプロットと検証プロットの生成と保存を制御します。設定項目 True を使用して、損失曲線、精度-再現曲線、サンプル予測などのプロットを作成できます。時間の経過とともにモデルのパフォーマンスを視覚的に追跡するのに便利です。
save False トレーニングのチェックポイントと最終的なモデルの重みの保存を有効にします。設定値 True を使用してモデルの状態を定期的に保存し、これらのチェックポイントからトレーニングを再開したり、モデルをデプロイしたりすることができます。


作成日:2023-11-12 更新日:2024-03-03
作成者:glenn-jocher(12),Burhan-Q(1),Laughing-q(1),AyushExel(1),fcakyon(1),chr043416@gmail.com(1),tensorturtle(1)

コメント