YAMLがAIワークフローを効率化する方法を学びましょう。YAMLファイルを使用してデータセットを設定し、Ultralytics モデルをトレーニングする方法を発見し、より迅速で容易なMLOpsを実現しましょう。
YAML(YAML Ain't Markup Language)は、ソフトウェア業界で設定ファイル記述に広く用いられる、人間が読みやすいデータシリアライゼーション標準です。より複雑なマークアップ言語とは異なり、YAMLは整った書式と可読性を優先するため、パラメータを迅速に確認・修正する必要がある開発者やデータサイエンティストにとって最適な選択肢となります。 そのシンプルな構造は括弧やタグではなくインデントに依存しており、リストや辞書といった階層的なデータ構造を視覚的な煩雑さを最小限に定義できます。人工知能や機械学習の文脈では、YAMLは人間の意図と機械の実行の間の重要な架け橋として機能し、データセットのパスからハイパーパラメータ調整設定まで、バージョン管理や共有が容易な形式であらゆる情報を保存します。
現代の機械学習運用(MLOps)において、再現性のある体系的な実験の維持は不可欠である。YAMLファイルはこれらの実験の設計図として機能し、必要な設定詳細を単一文書にカプセル化する。Ultralytics のようなフレームワークは、モデルアーキテクチャとトレーニングプロトコルを定義するために、こうした設定ファイルに大きく依存している。
コンピュータビジョンモデルをトレーニングする際、トレーニングデータの保存場所、検出対象のクラス数、およびそれらのクラス名を指定する必要がよくあります。 これらの値をPython ハードコーディングするとコードベースが煩雑になるため、 このデータをYAMLファイルに分離します。この分離により、研究者はコアコードベースを修正せずに データセットの交換や学習率の調整が可能となり、 実験の追跡と共同作業が円滑になります。
YAMLはしばしばJSON(JavaScript Object Notation)やXML(eXtensible Markup Language)と比較されますが、AIエコシステムにおいてはそれぞれが若干異なる目的を果たしています。
YAMLはAI開発ライフサイクルのいくつかの重要な段階でその役割を果たします:
data.yaml通常、トレーニングセット、検証セット、テストセットのディレクトリパスを定義します。また、クラスインデックス(0、1、2)をクラス名(人、自転車、車)にマッピングし、モデルがデータ構造を理解できるようにします。
以下の例は、典型的なYAMLファイルがYOLO26モデルのトレーニング用データセットインターフェースとして機能する方法を示しています。下記のPython 、Ultralytics 消費してトレーニングプロセスを開始する方法を示しています。
1. ザ coco8.yaml ファイル(概念):このファイルには、画像へのパスとクラス名のリストが含まれます。
path: ../datasets/coco8 # dataset root dir
train: images/train # train images (relative to 'path')
val: images/val # val images (relative to 'path')
# Classes
names:
0: person
1: bicycle
2: car
...
2.Python :コードは設定を読み込み、指定されたパラメータを使用してトレーニングを開始します。
from ultralytics import YOLO
# Load the YOLO26 model (recommended for new projects)
model = YOLO("yolo26n.pt")
# Train the model using the dataset configuration defined in the YAML file
# The 'data' argument points directly to the YAML file
results = model.train(data="coco8.yaml", epochs=5, imgsz=640)
いくつかの重要な構文規則を理解することで、次のようなよくあるエラーを回避できます: ScannerError など)は、
ParserErrorこれは、インデントが正しくないために頻繁に発生します。
key: value例えば、
epochs: 100 トレーニングサイクルの数を設定します。
-これは、リストを定義するのに便利です。
データ拡張 ステップまたは複数の入力
ソース。
# パーサーによって無視されるため、特定の項目に関するメモを残すことができます
ハイパーパラメータ ファイルに直接。
YAMLを習得することで、実践者はモデルトレーニングのワークフローを効率化し、設定ミスを減らし、AIプロジェクトのスケーラビリティと保守性を確保できます。