YOLOv6.0とYOLOv5:物体検出の技術比較
コンピュータビジョンプロジェクトに適切なアーキテクチャを選択することは、パフォーマンス、展開の容易さ、長期的なメンテナンスに影響する極めて重要な決定である。リアルタイムの物体検出の分野では、MeituanのYOLOv6.0と UltralyticsYOLOv5.このガイドでは、開発者や研究者が、生のGPU スループットを優先するか、多用途で使いやすいエコシステムを優先するかなど、特定の要件に最も合致するモデルを選択するのに役立つ詳細な技術比較を提供します。
パフォーマンス指標分析
下の表は、COCO データセットのパフォーマンスメトリクスの直接比較です。YOLOv6.0がGPU デバイスのピーク精度の限界に挑戦しているのに対し、YOLOv6.0は、GPU デバイスのピーク精度の限界に挑戦しています、 Ultralytics YOLOv5は、特にCPU上で卓越した効率性を維持し、軽量バリアントではモデルの複雑さ(パラメータとFLOP)を大幅に低減しています。
| モデル | サイズ (ピクセル) | 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 |
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
分析 このデータから、YOLOv5n(Nano)モデルはリソースに制約のある環境において傑出しており、最小のパラメータ数(2.6M)とFLOP数(7.7B)を誇り、CPU 推論速度に優れていることが明らかになった。このため、メモリと電力が不足するエッジAIアプリケーションに非常に適している。逆に、YOLOv6.0は、モデルサイズが大きくなる代償として、より高いmAPvalを目標としており、専用GPU ハードウェアを備えた産業用セットアップの有力な候補となっている。
美团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
Meituanによって開発されたYOLOv6.0は、産業用アプリケーション向けに調整されたオブジェクト検出フレームワークである。推論速度と精度の良好なトレードオフを実現することに重点を置いており、特にGPU上のハードウェアを考慮した性能に最適化されている。
アーキテクチャと主な機能
YOLOv6 6は、効率的なバックボーン設計とリパラメータ化可能な構造(RepVGGスタイル)を取り入れており、学習時の複雑な特徴抽出機能を維持しつつ、推論時のモデルを簡素化している。バージョン3.0では、自己蒸留やアンカー支援学習戦略などの技術を導入し、パフォーマンスをさらに向上させた。
長所と短所
- 高いGPU 精度: COCO データセットで競争力のあるmAP スコアを提供し、製造業の品質管理タスクに適しています。
- 量子化のサポート: モデルの量子化に対する特別なサポートを提供し、展開を加速します。
- 限られた汎用性:主に物体検出用に設計されているため、他のフレームワークで見られるインスタンスのセグメンテーションやポーズ推定のような広範なタスクをネイティブにサポートしていない。
- 高いリソースオーバーヘッド: YOLOv5 同等の軽量モデルに比べ、より大きなバリアントはより多くのメモリと計算能力を必要とする。
Ultralytics YOLOv5:エコシステムのスタンダード
著者Glenn Jocher
組織: Ultralytics
Date: 2020-06-26
GitHub: yolov5
Docs: https:yolov5
Ultralytics YOLOv5は、ユーザー中心の設計、信頼性、そしてそれを取り巻く包括的なエコシステムで称賛されている、コンピュータビジョン分野における伝説的なモデルです。スピード、精度、使いやすさのバランスの良さから、世界的に最も導入されているモデルの1つです。
アーキテクチャと主な機能
YOLOv5 、CSPDarknetバックボーンとPANetネックを組み合わせ、ロバストな特徴フュージョンを実現している。アンカーベースの検出メカニズムを採用しており、様々なデータセットにおいて非常に安定していることが証明されている。このアーキテクチャは非常にモジュール化されており、5つのスケール(n、s、m、l、x)を提供することで、組み込みデバイスからクラウドサーバーまであらゆるものに適合する。
YOLOv5選ぶ理由
- 使いやすさ: Ultralytics 、シンプルなPython API、自動環境セットアップ、豊富なドキュメントにより、開発者の使いやすさを優先しています。
- 汎用性:多くの競合他社とは異なり、YOLOv5 5は画像分類と インスタンスセグメンテーションをすぐにサポートします。
- トレーニング効率:トレーニング中の収束が速く、メモリ使用量が少ないことで知られ、計算リソースのコストを削減します。
- 展開の柔軟性:以下のようなフォーマットへシームレスにエクスポート ONNX, TensorRTCoreML、TFLite ような形式にエクスポートし、多様なハードウェアの統合を実現します。
統合エコシステム
YOLOv5 使用する最大の利点の一つは、Ultralytics エコシステムです。Ultralytics HUBのようなツールとの統合は、ノーコードでのモデルトレーニングとプレビューを可能にします。 CometやMLflowによる実験トラッキングのビルトインサポートがMLOpsワークフローを効率化します。
詳細比較
建築とデザイン哲学
YOLOv6.0は、特定のGPU アーキテクチャ(Tesla T4など)でのスループットを最大化するために、ハードウェアを考慮したニューラル・アーキテクチャの探索と再パラメータ化に大きく依存している。これに対して YOLOv5は、CPU、GPU、およびNPU間で確実に動作するユニバーサルデザインに重点を置いている。YOLOv55のアンカーベースの検出器は、アンカーなしのアプローチと比較して、小さなオブジェクトを含むカスタムデータセットのチューニングが容易です。
ユーザビリティとトレーニング方法
Ultralytics モデルは「すぐにトレーニングできる」ように設計されています。YOLOv5、AutoAnchorのような機能が、アンカーボックスをデータセットのラベルに自動的に調整し、スマートなハイパーパラメーターの進化が、最適なトレーニング設定を見つけるのに役立ちます。YOLOv6 、従来のリサーチ・リポジトリーに特徴的な、より手動的なセットアップが必要であり、新規ユーザーにとっては、学習曲線がより険しくなる可能性があります。
実際のユースケース
- Ultralytics YOLOv5: 迅速なプロトタイピングと多様な展開に最適です。軽量な「ナノ」モデルは、ドローンベースのモニタリングや、CPU リアルタイム推論を必要とするモバイルアプリに最適です。また、セグメンテーションをサポートしているため、細胞のセグメンテーションのような医療用画像処理タスクにも有効です。
- YOLOv6.0:ハイエンドGPUが利用可能で、主要な測定基準がmAPである固定産業環境に最適。例えば、電子機器製造における自動光学検査(AOI)など。
コード例:YOLOv5実行
YOLOv55のシンプルさは、PyTorch Hubを使い、わずか数行のコードで推論を実行できることが最もよく示している。これにより複雑なインストール手順を省き、開発者はすぐにモデルをテストすることができる。
import torch
# Load the YOLOv5s model from the official Ultralytics Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)
# Define an image URL (or local path)
img = "https://ultralytics.com/images/zidane.jpg"
# Perform inference
results = model(img)
# Display results
results.show()
# Print detailed results regarding detected objects
results.print()
このアクセスのしやすさはUltralytics 哲学の特徴であり、コンピュータビジョンの専門家が環境の問題をデバッグするのではなく、問題を解決することに集中できるようにする。
結論
両アーキテクチャは、現代のビジョン状況において重要な役割を果たしている。MeituanYOLOv6.0は、GPU ハードウェアで検出精度を最大化することに重点を置くユーザーにとって、魅力的な選択肢を提供します。
しかし Ultralytics YOLOv5は、その比類ない汎用性、トレーニング効率、堅牢なエコシステムにより、ほとんどの開発者にとって優れた選択肢であり続けています。エッジデバイスに簡単にデプロイできる機能と、セグメンテーションと分類のサポートが相まって、YOLOv5 5は現実世界のAI課題に対する包括的なソリューションとなっている。
最新のパフォーマンスをお求めの方には、以下をお勧めします。 Ultralytics YOLO11.YOLO11 、YOLOv5 5の遺産を基に、さらに優れた精度、スピード、豊富な機能を備えており、ビジョンAIの未来を象徴しています。その他 RT-DETRのような特殊モデルも、トランスベースのアプリケーションで利用可能です。
Ultralytics Models Documentationでツールやモデルの全容をご覧ください。