Ultralytics YOLO よくある質問(FAQ)#
このFAQセクションでは、Ultralytics YOLOリポジトリの作業中にユーザーが遭遇する可能性のある一般的な質問や問題を扱います。
FAQ#
Ultralyticsは、最先端の物体検出および画像セグメンテーションモデルを専門とするコンピュータービジョン AI企業で、YOLO(You Only Look Once)ファミリーに注力しています。提供内容には次のものがあります。
- 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 # Load a model model = YOLO("yolo26n.yaml") # build a new model from scratch model = YOLO("yolo26n.pt") # load a pretrained model (recommended for training) # Train the model 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 # Load a model model = YOLO("path/to/your/model.pt") # Perform inference results = model("path/to/image.jpg") # Process results for r in results: print(r.boxes) # print bbox predictions print(r.masks) # print mask predictions print(r.probs) # print class probabilitiesバッチ処理や動画推論などの高度な推論オプションについては、詳しい予測ガイドをご覧ください。
もちろんです。Ultralyticsモデルは、さまざまなプラットフォームへの柔軟なデプロイに対応するよう設計されています。
- エッジデバイス: TensorRT、ONNX、またはOpenVINOを使用して、NVIDIA JetsonやRaspberry Piなどのデバイスでの推論を最適化します。
- モバイル:モデルをLiteRTまたはCore MLに変換して、AndroidまたはiOSデバイスにデプロイします。
- クラウド: スケーラブルなクラウドデプロイのためにTensorFlow ServingやTorchServeなどのフレームワークを活用します。
- ウェブ: ONNX Runtime Webを使用してブラウザ内推論を実装します。
Ultralyticsは、モデルをデプロイ用のさまざまな形式に変換するエクスポート機能を提供しています。ユースケースに最適なソリューションを見つけるには、幅広いデプロイオプションをご覧ください。
主な違いは次のとおりです。
- エンドツーエンドのNMSフリー推論:YOLO26は、
nms=Falseを使用したNMSフリーの推論を提供します。デフォルトの1対多パスでは、精度のために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を搭載しないデバイスに最適です。
- タスク固有の最適化:セマンティックロスとマルチスケールprotoによるセグメンテーションの強化、精密な姿勢推定のためのRLE、angle lossによるOBBデコードの改善を実現しています。
- タスク:両モデルは物体検出とインスタンスセグメンテーションに対応し、YOLO26はさらに、密なピクセルレベルの予測を行うセマンティックセグメンテーションと、ピクセルごとの深度を推定する単眼深度推定にも対応しています。両モデルは、統合フレームワークで分類、姿勢推定、指向付き物体検出(OBB)にも対応しています。
機能と性能指標の詳しい比較については、YOLO26ドキュメントページをご覧ください。
- エンドツーエンドのNMSフリー推論:YOLO26は、
Ultralyticsへの貢献は、プロジェクトの改善とスキルの向上につながる素晴らしい方法です。参加するには、次の手順を実行します。
- GitHubでUltralyticsリポジトリをフォークします。
- 機能追加またはバグ修正用の新しいブランチを作成します。
- 変更を加え、すべてのテストに合格することを確認します。
- 変更内容を明確に説明したプルリクエストを送信します。
- コードレビューのプロセスに参加します。
バグの報告、機能の提案、ドキュメントの改善によっても貢献できます。詳しいガイドラインとベストプラクティスについては、貢献ガイドを参照してください。
Ultralytics YOLOは、高度なコンピュータービジョンタスク向けに豊富な機能を備えています。
- リアルタイム検出:リアルタイムのシナリオで物体を効率的に検出および分類します。
- マルチタスク機能:統合フレームワークで、物体検出、インスタンスセグメンテーション、セマンティックセグメンテーション、単眼深度推定、分類、姿勢推定、指向付き物体検出(OBB)を実行します。
- 事前学習済みモデル:さまざまなユースケースで速度と精度のバランスを実現する、多様な事前学習済みモデルを利用できます。
- カスタムトレーニング:柔軟なトレーニングパイプラインを使用して、カスタムデータセットでモデルを簡単にファインチューニングできます。
- 幅広いデプロイオプション:TensorRT、ONNX、CoreMLなどのさまざまな形式にモデルをエクスポートし、多様なプラットフォームにデプロイできます。
- 充実したドキュメント:包括的なドキュメントと活発なコミュニティを活用して、コンピュータービジョンのワークフローを構築できます。
YOLOモデルの性能は、いくつかの手法によって向上させることができます。
- ハイパーパラメータチューニング:ハイパーパラメータチューニングガイドを使用してさまざまなハイパーパラメータを試し、モデル性能を最適化します。
- データ拡張:反転、スケーリング、回転、色調整などの手法を実装してトレーニングデータセットを拡張し、モデルの汎化性能を向上させます。
- 転移学習:事前学習済みモデルを活用し、Trainガイドを使用して特定のデータセットでファインチューニングします。
- 効率的な形式へのエクスポート:モデルをTensorRTやONNXなどの最適化された形式に変換し、エクスポートガイドを使用して推論を高速化します。
- ベンチマーク: ベンチマークモードを使用して推論速度と精度を測定し、体系的に改善します。
Ultralyticsでは、ツールの利用を始め、習得するための豊富なリソースを提供しています。
- 📚 公式ドキュメント:包括的なガイド、APIリファレンス、ベストプラクティスを掲載しています。
- 💻 GitHubリポジトリ:ソースコード、サンプルスクリプト、コミュニティからの貢献を確認できます。
- ✍️ Ultralytics ブログ:詳細な記事、ユースケース、技術的な知見をご覧いただけます。
- 💬 コミュニティフォーラム:他のユーザーと交流し、質問したり、経験を共有したりできます。
- 🎥 YouTube チャンネル:Ultralytics に関するさまざまなトピックの動画チュートリアル、デモ、ウェビナーをご覧いただけます。
これらのリソースでは、Ultralytics モデルを使用してさまざまなタスクに取り組むためのコード例、実際のユースケース、ステップバイステップのガイドを提供しています。
さらにサポートが必要な場合は、Ultralytics のドキュメントを参照するか、GitHub Issues または公式のディスカッションフォーラムからコミュニティにお問い合わせください。