4.6 独自のビジョンモデルを訓練・デプロイする

はじめに

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

YOLO26 パフォーマンス図

本章では、reComputer 上で独自の高度な検出モデルを素早く訓練・デプロイし、効率的でモダンなワークフローを通じて、データから実世界の AI アプリケーションへとつなげる方法を紹介します。

クイック体験

ステップ 1:タスクを明確に定義する

優れたプロジェクトは、明確な問いから始まります。

例:

  • ヘルメットと人を検出する
  • 占有されている駐車スペースを検出する
  • パレットとフォークリフトを検出する

デモのために、データ収集からモデルデプロイまでのプロセスを支援するスクリプトを用意しています。

🚀 ぜひ自分で試してみましょう!

python
cd 4.6-Train-and-Deploy-Your-Own-Vision-Model/code
python yolo_end_to_end.py

ステップ 2:データを収集する

デバイスにカメラを接続し、検出したい対象を選び、適切なデータセット画像を収集します。

capture_picture

ステップ 3:データをアノテーションする

検出タスクでは、アノテーションは通常、バウンディングボックスを描画してクラスラベルを割り当てることを意味します。

私たちのツールを使い、マウスをドラッグして検出したい対象をマークします。

mark_img

ステップ 4:モデルを訓練する

データセットを分割し、訓練に使用する事前学習済みモデルを選択します。

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

tarin

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

ステップ 5:推論

これまでに訓練したモデルの重みを選択し、その性能を観察します。

infer

注意:モデルの性能を上げたい場合は、データセットを増やすか、データ拡張を行う必要があります。

よくある誤解

  • 「指標が高ければ、モデルは常に準備完了だ。」
    • 実環境でのテストは依然として必要です。
  • 「データが多ければ自動的に良いモデルになる。」
    • データは関連性が高く、適切にラベル付けされている場合にのみ役立ちます。
  • 「訓練が終われば、デプロイは簡単だ。」
    • デプロイには速度、メモリ、システムの制約が伴います。

演習 / 振り返り

  1. 初心者でも完了できる 2 クラスの物体検出プロジェクトを設計してください。
  2. データセットに含めたいシーンの 5 種類のバリエーションを挙げてください。
  3. 検証結果と実デプロイ時の性能の違いを説明してください。
  4. 訓練ジョブの実行後、3 つの失敗ケースを調べ、それを修正できそうなデータの種類を説明してください。

まとめ

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

推奨される次のステップ

4.7 モデルエクスポートとエッジデプロイ に進んでください。

参考資料