YOLOv6.0とYOLOv8:包括的な技術比較
最適な物体検出アーキテクチャを選択することは、コンピュータビジョン開発において極めて重要な決定であり、推論レイテンシから展開の柔軟性まで、あらゆることに影響を与える。本ガイドでは、Meituanが開発したYOLOv6.0と、以下のアーキテクチャを比較した詳細な技術分析を提供する。 Ultralytics YOLOv8の最先端モデルである Ultralytics.We examine their architectural distinctives, performance metrics, and suitability for real-world applications to help you make an informed choice.
どちらのフレームワークも素晴らしい結果を出すが、YOLOv8 比類のない多用途性、開発者中心のエコシステム、多様なハードウェアプラットフォームにおける速度と精度の優れたバランスによって差別化を図っている。
YOLOv6.0
著者Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, and Xiangxiang Chu
組織:Meituan
Date: 2023-01-13
Arxiv: https://arxiv.org/abs/2301.05586
GitHub: YOLOv6
Docs: https:ultralytics
YOLOv6.0は、産業用アプリケーションに主眼を置いて設計されたシングルステージのオブジェクト検出フレームワークです。ハードウェアに優しいネットワーク設計を優先することで、専用GPUでの推論スループットを最大化することを目指しており、生産ラインの速度によってレイテンシが厳しく制限される環境での強力な候補となる。
アーキテクチャと主な機能
YOLOv6.0のアーキテクチャは、再パラメータ化のコンセプトに基づいて構築されている。EfficientRepバックボーンとRep-PANネックを利用し、学習時には複雑な構造を持つが、推論時には簡素化された畳み込み層になる。この「構造的再パラメータ化」は、特徴抽出能力を犠牲にすることなく、待ち時間を短縮するのに役立ちます。
さらに、YOLOv6.0は、分類タスクと回帰タスクを分離した分離ヘッド設計を採用し、SimOTAラベル割り当て戦略を統合している。また、このフレームワークは、低精度演算を必要とするエッジデバイスへの展開を容易にするため、量子化を考慮したトレーニング(QAT)を重視している。
長所と短所
このモデルは、ハイエンドGPUが利用可能な産業製造のシナリオで輝きを放ち、競争力のある推論速度を実現する。また、量子化に重点を置いているため、特定のハードウェア・アクセラレータへの展開も容易です。しかし、YOLOv6 主に物体検出のために設計されており、より包括的なフレームワークに見られる、ポーズ推定やオリエンテッドバウンディングボックスのような、より広範なコンピュータビジョンタスクに対するネイティブでシームレスなサポートはありません。さらに、エコシステムがあまり広くないため、サードパーティのMLOpsツールと統合したり、コミュニティのサポートを見つけたりする際に、より多くの摩擦が生じる可能性がある。
Ultralytics YOLOv8
著者Glenn Jocher、Ayush Chaurasia、Jing Qiu
組織: Ultralytics
Date: 2023-01-10
Arxiv: なし
GitHub: ultralytics
Docs: https:yolov8
Ultralytics YOLOv8は、単なるモデルとしてではなく、実用的なAIのための統一されたフレームワークとして設計され、YOLO シリーズの大きな飛躍を象徴しています。アーキテクチャの効率性と直感的なユーザーエクスペリエンスを組み合わせることで、最先端の(SOTA)パフォーマンスを再定義し、研究者や開発者が同様に高度なコンピュータビジョンにアクセスできるようにします。
アーキテクチャと主な機能
YOLOv8 、非常に効率的なアンカーフリー検出メカニズムを導入し、手作業によるアンカーボックス計算の必要性をなくし、多様なデータセットにおける汎化性を向上させます。そのアーキテクチャは、C2fモジュール(Cross-Stage Partial connections with fusion)を利用した新しいバックボーンを特徴としており、軽量なフットプリントを維持しながら、勾配フローと特徴量の豊富さを向上させている。
YOLOv8 8の分離されたヘッドは、物体性、分類、回帰を独立して処理し、より高い収束精度をもたらします。このモデルは、オブジェクト検出、インスタンス分割、画像分類、ポーズ推定、方向バウンディングボックス(OBB)などのタスクを、インストール可能な単一のPython パッケージでサポートします。
YOLOv8選ぶ理由
- 使いやすさ: シンプルな
pip install ultralytics開発者は強力なCLI Python APIを利用できる。この合理化された ユーザーエクスペリエンス 設置から最初のトレーニングまでの時間を数時間から数分に短縮。 - 整備されたエコシステム: Ultralytics 、モデル管理のためのUltralytics HUB、活発なGitHubディスカッション、TensorBoardや MLflowのようなツールとのシームレスな統合など、堅牢なエコシステムを提供しています。
- パフォーマンス・バランス:以下のメトリクスに示されているように、YOLOv8 より少ないパラメータとFLOP数で優れたmAP 達成し、エッジデバイスとクラウドサーバーの両方へのリアルタイム展開に最適なトレードオフを提供します。
- 汎用性:検出のみに特化した競合他社とは異なり、YOLOv8 セグメンテーション、トラッキング、分類をネイティブに処理するため、新しいフレームワークを学習することなく、タスク間を行き来することができます。
パフォーマンス比較
次の表は、COCO val2017 データセットのパフォーマンス・メトリクスの詳細な比較です。ハイライトは、各カテゴリで最高のパフォーマンスを示しています。
| モデル | サイズ (ピクセル) | mAP値 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv6.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
批判的分析
このデータは、Ultralytics 明確な利点を明らかにしている:
- 効率とリソース使用:YOLOv8 一貫して、同等またはそれ以上の精度を達成するために、大幅に少ないパラメータとFLOPを使用しています。例えば YOLOv8sは、YOLOv6.0s(約45mAP)の精度に匹敵しますが、必要なパラメータは約40%少なく、FLOPは約37%少なくなります。この削減は、メモリ消費量の削減とトレーニング時間の短縮に直結します。
- 精度のリーダーシップ:YOLOv8 YOLOv8x 53.9mAP達し、リストにある最大のYOLOv6 上回る。
- CPU 推論:YOLOv8 、CPU 推論のための透過的ベンチマークを提供する。 ONNXを介したCPU推論のための透過的なベンチマークを提供し、特別なアクセラレーターを必要としない標準的なハードウェア上での展開が可能であることを実証している。これは、GPUが常に利用できるとは限らない物流や小売業におけるスケーラブルなアプリケーションにとって極めて重要です。
メモリ効率
YOLOv88の効率的なアーキテクチャは、多くのトランスフォーマーベースのモデルや重い畳み込みネットワークと比較して、トレーニング中のGPU メモリ要件が低くなります。これにより、開発者は民生グレードのハードウェアで、より大きなバッチサイズのトレーニングや、より高い解像度を使用することができます。
ユースケースと応用
これらのモデルの選択は、多くの場合、特定の展開環境とタスク要件に依存する。
YOLOv8 いる点
YOLOv8 、その適応性の高さから、大半のコンピュータビジョンプロジェクトに推奨される選択肢である:
- エッジAIとIoT:パラメータ数が少なく効率が高いため、YOLOv8 Raspberry PiやNVIDIA Jetsonのようなデバイスに最適です。
- マルチタスクシステム:オブジェクトトラッキング(例:交通監視)やセグメンテーション(例:医療用画像処理)を必要とするプロジェクトでは、YOLOv8統一コードベースが役立ちます。
- 迅速なプロトタイピング:使いやすさと豊富な事前学習済みウェイトにより、新興企業や研究チームは迅速に反復作業を行うことができます。
- エンタープライズソリューション:以下のようなプラットフォームとの統合により Roboflowまた CoreMLや TFLiteYOLOv8 、プロトタイプからプロダクションまでシームレスに拡張します。
YOLOv6.0がフィットする場所
YOLOv6.0は、ニッチな産業シナリオのための強力な選択肢であることに変わりはない:
- 専用GPU ライン:TensorRT実行するNVIDIA T4/A10 GPUを使用する確立されたパイプラインを持つ工場では、YOLOv6特有のハードウェア最適化により、わずかなレイテンシ向上を得ることができます。
- レガシーとの統合:すでにRepVGGスタイルのバックボーンを中心に構築されているシステムでは、YOLOv6 統合してもアーキテクチャの調整はそれほど必要ないかもしれない。
トレーニングと開発者の経験
最も大きな差別化要因の1つは、開発者のエクスペリエンスです。Ultralytics 、ローコードで高機能なアプローチを優先しています。
YOLOv8シームレスなトレーニング
YOLOv8 モデルのトレーニングは簡単である。フレームワークは、データの増強、ハイパーパラメータの進化、プロッティングを自動的に処理する。
from ultralytics import YOLO
# Load a model
model = YOLO("yolov8n.pt") # load a pretrained model
# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference
results = model("path/to/image.jpg")
これとは対照的に、YOLOv6 6はトレーニング用のスクリプトを提供しているが、環境変数や依存関係の設定をより手作業で行うことが多い。YOLOv8 Ultralytics HUBの統合は、ウェブベースのデータセット管理とワンクリックでのモデル・トレーニングを提供することで、これをさらに簡素化します。
エコシステム・サポート
Ultralytics コミュニティはAI業界で最も活発なコミュニティの一つです。カスタムデータセットや高度なエクスポートオプションのヘルプが必要な場合でも、包括的なドキュメントやコミュニティフォーラムを通じてリソースをすぐに利用できます。
結論
YOLOv6.0は、特定の産業用GPU検出タスクのための堅牢なソリューションを提供します、 Ultralytics YOLOv8は、最新のコンピューター・ビジョン向けの優れた包括的ソリューションとして際立っています。そのアーキテクチャの効率性により、パラメーターあたりの精度が向上し、検出、セグメンテーション、分類の各タスクに汎用性があるため、将来性もあります。比類のないエコシステムと使いやすさが相まって、YOLOv8 開発者が自信を持ってAIソリューションを構築、展開、拡張できるようにします。
その他のモデルを見る
物体検出の広い範囲に興味がある人のために、Ultralytics 幅広いモデルをサポートしている。YOLOv8 レガシーの YOLOv5と比較したり、最先端の YOLO11を探求することもできる。さらに、トランスベースのアプローチには RT-DETRモデルは、リアルタイム検出において独自の利点を提供します。