4.6 独自のビジョンモデルを訓練・デプロイする
はじめに
YOLO26 は、リアルタイムかつエッジ対応のビジョン AI 向けに設計された YOLO ファミリーの最新世代です。物体検出、セグメンテーション、分類、姿勢推定などのタスクで高い精度を維持しつつ、より高速で軽量、かつデプロイしやすいように設計されています。これまでの YOLO モデルと比較して、YOLO26 は 効率的なデプロイとエンドツーエンド推論 に重点を置いており、エッジデバイスや実用的なアプリケーションに特に適しています。

本章では、reComputer 上で独自の高度な検出モデルを素早く訓練・デプロイし、効率的でモダンなワークフローを通じて、データから実世界の AI アプリケーションへとつなげる方法を紹介します。
クイック体験
ステップ 1:タスクを明確に定義する
優れたプロジェクトは、明確な問いから始まります。
例:
- ヘルメットと人を検出する
- 占有されている駐車スペースを検出する
- パレットとフォークリフトを検出する
デモのために、データ収集からモデルデプロイまでのプロセスを支援するスクリプトを用意しています。
前提条件: 必要な依存関係をインストールします:
bashpip install ultralytics opencv-python pillow pyyaml
🚀 ぜひ自分で試してみましょう!
cd 4-Computer-Vision/4.6-Train-and-Deploy-Your-Own-Vision-Model/code
python yolo_end_to_end.pyステップ 2:データを収集する
デバイスにカメラを接続し、検出したい対象を選び、適切なデータセット画像を収集します。

ステップ 3:データをアノテーションする
検出タスクでは、アノテーションは通常、バウンディングボックスを描画してクラスラベルを割り当てることを意味します。
私たちのツールを使い、マウスをドラッグして検出したい対象をマークします。

ステップ 4:モデルを訓練する
データセットを分割し、訓練に使用する事前学習済みモデルを選択します。
訓練セット はパラメータを調整してモデルに学習させるために使用されます。検証セット は開発中に、モデルの汎化具合の確認、異なる設定の比較、訓練を停止するタイミングの判断に使われます。要するに、データセットの分割は、信頼できる方法でモデルを訓練し、改善し、評価するのに役立ちます。

訓練は、モデルがデータセットから学習し、予測を徐々に改善していく段階です。通常、ゼロから始めるのではなく、事前学習済みモデルである 開始チェックポイント から始めます。これにより、モデルは速く学習でき、多くの場合、より良い結果が得られます。
ステップ 5:推論
これまでに訓練したモデルの重みを選択し、その性能を観察します。

注意:モデルの性能を上げたい場合は、データセットを増やすか、データ拡張を行う必要があります。
よくある誤解
- 「指標が高ければ、モデルは常に準備完了だ。」
- 実環境でのテストは依然として必要です。
- 「データが多ければ自動的に良いモデルになる。」
- データは関連性が高く、適切にラベル付けされている場合にのみ役立ちます。
- 「訓練が終われば、デプロイは簡単だ。」
- デプロイには速度、メモリ、システムの制約が伴います。
演習 / 振り返り
- 初心者でも完了できる 2 クラスの物体検出プロジェクトを設計してください。
- データセットに含めたいシーンの 5 種類のバリエーションを挙げてください。
- 検証結果と実デプロイ時の性能の違いを説明してください。
- 訓練ジョブの実行後、3 つの失敗ケースを調べ、それを修正できそうなデータの種類を説明してください。
環境セットアップ
YOLO モデルの訓練の前に、uv パッケージマネージャを使って Python 環境をセットアップします:
uv をインストールする
curl -LsSf https://astral.sh/uv/install.sh | sh
source ~/.bashrc
uv --version
仮想環境を作成する
uv venv .yolo --python 3.10.12
source .yolo/bin/activate
python --version

PyTorch(GPU)をインストールする
uv pip install torch --index-url https://pypi.jetson-ai-lab.io/jp6/cu126
注意: Seeed の Jetson 開発キットには、あらかじめ設定済みの環境が付属しています。新しい環境を作成する前に、
.yolo環境がすでに存在するかどうかを確認してください。
YOLO26/Ultralytics をインストールする
uv pip install ultralytics opencv-python pillow pyyamlYOLO26 タスク例
YOLO26 は複数のコンピュータビジョンタスクに対応しています。以下にそれぞれの例を示します。
物体検出
画像や動画内の物体を検出・位置特定します:
cd 4-Computer-Vision/4.6-Train-and-Deploy-Your-Own-Vision-Model/code
python yolo_object_detection.py
インスタンスセグメンテーション
ピクセルレベルで物体を識別します:
cd 4-Computer-Vision/4.6-Train-and-Deploy-Your-Own-Vision-Model/code
python yolo_instance_segmentation.py
姿勢推定
人体のキーポイントを検出します:
cd 4-Computer-Vision/4.6-Train-and-Deploy-Your-Own-Vision-Model/code
python yolo_pose_estimation.py
画像分類
画像内の被写体を分類します:
cd 4-Computer-Vision/4.6-Train-and-Deploy-Your-Own-Vision-Model/code
python yolo_image_classification.py
回転物体検出(OBB)
回転したバウンディングボックスで物体を検出します:
cd 4-Computer-Vision/4.6-Train-and-Deploy-Your-Own-Vision-Model/code
python yolo_obb_detection.py
モデル訓練
カスタムデータセットで YOLO モデルを訓練します:
cd 4-Computer-Vision/4.6-Train-and-Deploy-Your-Own-Vision-Model/code
python yolo_train.py

Label Studio によるデータセットのアノテーション
Label Studio(Docker ベース)を使って訓練データをアノテーションします:

まとめ
カスタムビジョンモデルの訓練は、コマンドを実行するだけのことではありません。タスク定義、アノテーション、訓練、検証、エラー分析を含むデータ駆動のプロセスです。次のセクションでは、最初の成功モデルからエクスポートとエッジデプロイへと進みます。
推奨される次のステップ
4.7 モデルエクスポートとエッジデプロイ に進んでください。