Ultralytics YOLO よくある質問(FAQ)#
この FAQ セクションでは、ユーザーがUltralytics YOLO リポジトリを利用する際によく遭遇する質問や問題を取り上げます。
よくある質問#
Ultralytics は、YOLO(1回だけ見る)ファミリーを中心に、最先端の物体検出モデルと画像セグメンテーションモデルを専門とするコンピュータービジョンAI 企業です。主な提供内容は次のとおりです。
- YOLO26(最新版)およびYOLO11(前世代)のオープンソース実装
- さまざまなコンピュータービジョンタスクに対応する幅広い事前学習済みモデル
- YOLO モデルをプロジェクトにシームレスに統合するための包括的なPython パッケージ
- モデルのトレーニング、テスト、デプロイに使える多用途のツール
- 充実したドキュメントと活発なコミュニティ
Ultralytics パッケージは pip を使って簡単にインストールできます。
pip install ultralytics最新の開発バージョンをインストールするには、GitHub リポジトリから直接インストールしてください。
pip install git+https://github.com/ultralytics/ultralytics.git詳しいインストール手順については、クイックスタートガイドをご覧ください。
最小要件:
- Python 3.8 以降
- PyTorch 1.8 以降
- CUDA 対応 GPU(GPU アクセラレーション用)
推奨環境:
- Python 3.8 以降
- PyTorch 1.10 以降
- CUDA 11.2 以降に対応した NVIDIA GPU
- RAM 8GB 以上
- 空きディスク容量 50GB 以上(データセットの保存とモデルのトレーニング用)
よくある問題のトラブルシューティングについては、YOLO のよくある問題のページをご覧ください。
カスタム YOLO モデルをトレーニングする手順:
-
データセットをYOLO 形式で準備します(画像と対応するラベルの txt ファイル)。
-
データセットの構成とクラスを記述した YAML ファイルを作成します(データセット YAML の例をご覧ください)。
-
次の Python コードを使ってトレーニングを開始します。
from ultralytics import YOLO # モデルを読み込む model = YOLO("yolo26n.yaml") # ゼロから新しいモデルを作成 model = YOLO("yolo26n.pt") # 事前トレーニング済みモデルを読み込みます(トレーニングにはこちらを推奨します) # モデルをトレーニングする results = model.train(data="path/to/your/data.yaml", epochs=100, imgsz=640)
データの準備や高度なトレーニングオプションを含む詳しいガイドについては、包括的なトレーニングガイドをご覧ください。
-
Ultralytics では、さまざまなタスクに対応する多様な事前学習済みモデルを提供しています。
- 物体検出:YOLO26n、YOLO26s、YOLO26m、YOLO26l、YOLO26x
- インスタンスセグメンテーション:YOLO26n-seg、YOLO26s-seg、YOLO26m-seg、YOLO26l-seg、YOLO26x-seg
- セマンティックセグメンテーション:YOLO26n-sem、YOLO26s-sem、YOLO26m-sem、YOLO26l-sem、YOLO26x-sem
- 深度推定:YOLO26n-depth、YOLO26s-depth、YOLO26m-depth、YOLO26l-depth、YOLO26x-depth
- 分類:YOLO26n-cls、YOLO26s-cls、YOLO26m-cls、YOLO26l-cls、YOLO26x-cls
- ポーズ推定:YOLO26n-pose、YOLO26s-pose、YOLO26m-pose、YOLO26l-pose、YOLO26x-pose
- 方向付き物体検出(OBB):YOLO26n-obb、YOLO26s-obb、YOLO26m-obb、YOLO26l-obb、YOLO26x-obb
これらのモデルはサイズや複雑さが異なり、速度と精度のバランスもさまざまです。プロジェクトに最適なモデルを見つけるには、事前学習済みモデルの全ラインナップをご確認ください。
トレーニング済みモデルで推論を実行する手順:
from ultralytics import YOLO # モデルを読み込む model = YOLO("path/to/your/model.pt") # 推論を実行 results = model("path/to/image.jpg") # 結果を処理する for r in results: print(r.boxes) # bbox の予測結果を出力 print(r.masks) # マスクの予測結果を出力 print(r.probs) # クラス確率を出力バッチ処理や動画推論などの高度な推論オプションについては、詳しい予測ガイドをご覧ください。
もちろんです。Ultralytics モデルは、さまざまなプラットフォームに柔軟にデプロイできるよう設計されています。
- エッジデバイス:TensorRT、ONNX、OpenVINO を使用して、NVIDIA Jetson や Raspberry Pi などのデバイスで推論を最適化できます。
- モバイル:モデルを LiteRT または CoreML に変換して、Android または iOS デバイスにデプロイできます。
- クラウド:TensorFlow Serving や TorchServe などのフレームワークを活用し、スケーラブルなクラウドデプロイを実現できます。
- Web:ONNX Runtime Webを使用して、ブラウザー内推論を実装します。
Ultralyticsは、デプロイ用にモデルをさまざまな形式に変換するエクスポート機能を提供しています。幅広いデプロイオプションを確認して、ユースケースに最適な方法を見つけてください。
主な違いは次のとおりです。
- エンドツーエンドのNMSフリー推論:YOLO26は
nms=Falseを使用したNMSフリー推論に対応しています。デフォルトのone-to-manyパスでは、精度を高めるためにNMSを使用します。 - DFLの削除:YOLO26ではDistribution Focal Lossモジュールを削除し、エクスポートを簡素化するとともに、エッジデバイスや低消費電力デバイスとの互換性を向上させています。
- MuSGDオプティマイザー:SGDとMuonを組み合わせたハイブリッドで、Moonshot AIのKimi K2に着想を得ています。より安定したトレーニングと高速な収束を実現します。
- CPUパフォーマンス:YOLO26nは、CPUでのONNX推論(Intel Xeon CPU @ 2.00 GHz)においてYOLO11nより最大43%高速に動作するため、GPUを搭載していないデバイスに最適です。
- タスク固有の最適化:セマンティックロスとマルチスケールプロトによるセグメンテーションの強化、精密なポーズ推定のためのRLE、角度ロスによるOBBデコードの改善を実現しています。
- タスク:両モデルは物体検出とインスタンスセグメンテーションに対応しており、YOLO26ではさらに、密なピクセル単位の予測を行うセマンティックセグメンテーションと、ピクセルごとの深度を推定する単眼深度推定にも対応しています。両モデルは、統合フレームワークで分類、ポーズ推定、方向付き物体検出(OBB)にも対応しています。
機能とパフォーマンス指標の詳細な比較については、YOLO26のドキュメントページをご覧ください。
- エンドツーエンドのNMSフリー推論:YOLO26は
Ultralyticsへの貢献は、プロジェクトの改善とスキルの向上につながる有意義な方法です。参加するには、次の手順に従ってください。
- GitHubでUltralyticsリポジトリをフォークします。
- 機能追加またはバグ修正用の新しいブランチを作成します。
- 変更を加え、すべてのテストに合格することを確認します。
- 変更内容を明確に説明して、プルリクエストを送信します。
- コードレビューに参加します。
バグの報告、機能の提案、ドキュメントの改善によっても貢献できます。詳細なガイドラインとベストプラクティスについては、貢献ガイドをご覧ください。
Ultralytics YOLOは、高度なコンピュータービジョンタスクに対応する豊富な機能を備えています。
- リアルタイム検出:リアルタイムのシナリオで、物体を効率的に検出して分類します。
- マルチタスク機能:統合フレームワークを使用して、物体検出、インスタンスセグメンテーション、セマンティックセグメンテーション、単眼深度推定、分類、ポーズ推定、方向付き物体検出(OBB)を実行できます。
- 事前学習済みモデル:さまざまなユースケースで速度と精度のバランスが取れた、各種の事前学習済みモデルを利用できます。
- カスタムトレーニング:柔軟なトレーニングパイプラインを使用して、カスタムデータセットでモデルを簡単にファインチューニングできます。
- 幅広いデプロイオプション:モデルをTensorRT、ONNX、CoreMLなどのさまざまな形式にエクスポートし、複数のプラットフォームにデプロイできます。
- 充実したドキュメント:包括的なドキュメントと活発なコミュニティを活用して、コンピュータービジョンのワークフローを進められます。
いくつかの手法によって、YOLOモデルのパフォーマンスを向上させることができます。
- ハイパーパラメータの調整:ハイパーパラメータ調整ガイドを参考に、さまざまなハイパーパラメータを試してモデルのパフォーマンスを最適化します。
- データ拡張:反転、スケーリング、回転、色調整などの手法を適用して、トレーニングデータセットを拡張し、モデルの汎化性能を向上させます。
- 転移学習:事前学習済みモデルを活用し、トレーニングガイドに従って特定のデータセットでファインチューニングします。
- 効率的な形式へのエクスポート:モデルをTensorRTやONNXなどの最適化された形式に変換して、エクスポートガイドを参考に推論を高速化します。
- ベンチマーク: ベンチマークモードを活用して、推論速度と精度を体系的に測定し、改善します。
Ultralyticsは、ツールの利用開始や習得に役立つ豊富なリソースを提供しています。
- 📚 公式ドキュメント:包括的なガイド、APIリファレンス、ベストプラクティスを掲載しています。
- 💻 GitHubリポジトリ:ソースコード、サンプルスクリプト、コミュニティからの貢献を確認できます。
- ✍️ Ultralyticsブログ:詳細な記事、ユースケース、技術的な知見を紹介しています。
- 💬 コミュニティフォーラム:ほかのユーザーと交流し、質問したり、経験を共有したりできます。
- 🎥 YouTubeチャンネル:Ultralyticsのさまざまなトピックに関する動画チュートリアル、デモ、ウェビナーを公開しています。
これらのリソースでは、Ultralyticsモデルを使用するさまざまなタスクについて、コード例、実際のユースケース、手順ごとのガイドを紹介しています。
さらにサポートが必要な場合は、Ultralyticsのドキュメントを参照するか、GitHub Issuesまたは公式のディスカッションフォーラムでコミュニティにお問い合わせください。