YOLOv6.0とYOLOv10詳細な技術比較
最適なコンピュータ・ビジョン・モデルを選択することは、推論レイテンシ、精度、計算効率などの要素のバランスをとりながら、AIイニシアチブを成功させるために極めて重要である。この包括的な技術比較では、2つの著名な物体検出アーキテクチャを検証する:YOLOv6.0は産業用スピードに特化して設計されており、YOLOv610は産業用スピードに特化して設計されています。 YOLOv10この包括的な技術比較では、2つの著名な物体検出アーキテクチャを検証する。それぞれのアーキテクチャの革新性、ベンチマーク指標、理想的なユースケースを分析し、選択プロセスの指針とします。
YOLOv6.0:産業グレードのスピードと精度
Meituanのビジョンインテリジェンス部門が開発したYOLOv6.0は、産業用アプリケーション向けに特別に最適化されたシングルステージのオブジェクト検出フレームワークである。2023年初頭にリリースされたこのフレームワークは、GPUやエッジデバイスのスループットを最大化するためにハードウェアに優しい設計を優先しており、製造や物流におけるリアルタイム推論の厳しい要求に対応している。
- 著者: Chuyi Li、Lulu Li、Yifei Geng、Hongliang Jiang、Meng Cheng、Bo Zhang、Zaidan Ke、Xiaoming Xu、Xiangxiang Chu
- 組織美団
- Date: 2023-01-13
- Arxiv:https://arxiv.org/abs/2301.05586
- GitHub:https://github.com/meituan/YOLOv6
- ドキュメントhttps://docs.ultralytics.com/models/yolov6/
アーキテクチャと主な機能
YOLOv6.0は、特徴抽出と収束速度を向上させるためのいくつかの高度な技術を組み込んだ、アーキテクチャの「フルスケール・リローディング」を導入している:
- 効率的な再パラメータ化バックボーン:ハードウェアを意識したバックボーンを採用し、複雑な学習構造をより高速な推論レイヤーに簡略化することで、精度を犠牲にすることなくFLOPSを最適化します。
- 双方向コンカチネーション(BiC):ネックデザインは、BiCを利用して定位信号を改善し、異なるスケールにまたがるより優れた特徴融合を保証する。
- アンカー補助トレーニング(AAT): YOLOv6.0は、主にアンカーを使用しないが、収束を安定させ、パフォーマンスを向上させるために、トレーニング中にアンカーベースの補助分岐を再び導入する。
長所と短所
長所 YOLOv6.0は、高いスループットを必要とするシナリオに優れている。モデルの量子化をサポートしているため、モバイル・プラットフォームや組み込みシステムに効果的に導入できる。Lite」バージョンは、CPU環境で特に有用である。
弱点: オブジェクト検出に特化したモデルであるため、インスタンスのセグメンテーションやポーズ推定など、以下のような統一的なフレームワークに見られるような、より広範なタスクをネイティブにサポートしていない。 YOLO11.さらに、新しいモデルに比べてパラメータ効率が低く、同程度の精度を得るために多くのメモリを必要とします。
理想的な使用例:産業オートメーション
YOLOv6.0は、製造オートメーションの有力な候補である。組立ラインのカメラは、欠陥のdetect 品目の選別のために、高解像度のフィードを迅速に処理しなければならない。
YOLOv10:エンド・ツー・エンドの効率のフロンティア
2024年5月に清華大学の研究者らによって発表されたYOLOv10 、後処理におけるNon-Maximum Suppression(NMS)の必要性を排除することで、YOLO ファミリーの限界を押し広げる。この技術革新により、レイテンシが重要なアプリケーション向けの次世代モデルとして位置づけられる。
- 著者: Ao Wang, Hui Chen, Lihao Liu, et al.
- 組織清華大学
- Date: 2024-05-23
- Arxiv:https://arxiv.org/abs/2405.14458
- GitHub:https://github.com/THU-MIG/yolov10
- ドキュメントhttps://docs.ultralytics.com/models/yolov10/
アーキテクチャと主な機能
YOLOv10 、全体的な効率と精度を重視した設計戦略を採用している:
- NMSトレーニング: YOLOv10 、一貫した二重割り当て(トレーニングでは一対多、推論では一対一)を利用することで、各オブジェクトに対して単一のベストボックスを予測する。これにより、NMS 後処理に伴う計算オーバーヘッドやレイテンシのばらつきがなくなります。
- 全体的なモデル設計:このアーキテクチャは、軽量な分類ヘッドと空間チャンネル分離ダウンサンプリングを特徴としており、モデルのパラメータと計算コストを大幅に削減する。
- ランク誘導型ブロック設計:効率を向上させるため、このモデルではランクガイド付きブロック設計を採用し、特徴処理の重要度が低いステージの冗長性を減らしている。
長所と短所
長所 YOLOv10 、優れたスピードと精度のトレードオフを提供し、多くの場合、より高い mAPを達成することが多い。Ultralytics Python エコシステムに統合されているため、他のモデルとの並行トレーニングやデプロイが非常に簡単です。
弱点: 比較的新しい製品であるため、コミュニティーのリソースやサードパーティーのツールはまだ発展途上である。YOLOv6同様、検知に特化している。 YOLO11.
戒め効率性のブレークスルー
NMS 除去により、YOLOv10 安定した推論レイテンシーを達成することができる。これは、処理時間が決定論的でなければならない自律走行車のようなセーフティ・クリティカルなシステムにとって極めて重要な要素である。
パフォーマンス分析指標とベンチマーク
以下の表は、COCO データセットにおけるYOLOv6.0とYOLOv10 10の性能を比較したものである。主な指標は、CPU GPUモデルサイズ、平均平均精度mAP)、推論速度です。
| モデル | サイズ (ピクセル) | 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 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
重要な洞察
- パラメータ効率: YOLOv10 驚くべき効率性を示している。例えば、YOLOv10sは YOLOv6.0s(45.0%)よりも高いmAP (46.7%)を達成しながら、パラメータの使用量は半分以下(7.2M vs 18.5M)です。このメモリフットプリントの削減は、エッジAIデバイスにとって不可欠である。
- レイテンシ: YOLOv6.0nは、生のTensorRT レイテンシをわずかに高速化(1.17ms対1.56ms)していますが、YOLOv10 、NMS ステップを排除しています。
- 精度:ほぼすべてのスケールにおいて、YOLOv10 より高い精度を提供し、複雑な環境で困難な物体を検出するための、より堅牢な選択肢となっています。
使い方と実施方法
Ultralytics 、これらのモデルを使用するための合理化されたエクスペリエンスを提供します。YOLOv10 ultralytics パッケージで、シームレスな トレーニング そして予測。
Ultralytics YOLOv10 動かす
わずか数行のコードでPython APIを使用してYOLOv10 実行することができます。これはUltralytics エコシステム特有の使いやすさを強調している。
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Run inference on an image
results = model.predict("path/to/image.jpg", save=True)
# Train the model on a custom dataset
# model.train(data="coco8.yaml", epochs=100, imgsz=640)
YOLOv6.0の使用
YOLOv6.0はコードベース構造が異なるため、学習と推論には通常、Meituanの公式リポジトリをクローンする必要がある。
# Clone the YOLOv6 repository
git clone https://github.com/meituan/YOLOv6
cd YOLOv6
pip install -r requirements.txt
# Inference using the official script
python tools/infer.py --weights yolov6s.pt --source path/to/image.jpg
結論正しいモデルの選択
この2つのモデルは、コンピュータ・ビジョンにおける重要な成果である。YOLOv6.0は、特にそのアーキテクチャに最適化されたレガシーな産業用システムにとっては、堅実な選択肢であり続けている。しかし YOLOv10は、NMSアーキテクチャ、優れたパラメーター効率、高精度のため、一般に、新規プロジェクトではより高い投資対効果を提供する。
最高の汎用性とエコシステムのサポートを求める開発者のために、 Ultralytics YOLO11を強くお勧めします。YOLO11 、最先端の検出性能を提供するだけでなく、単一のよくメンテナンスされたパッケージ内で、ポーズ推定、OBB、分類をネイティブにサポートします。Ultralytics エコシステムは、効率的なトレーニングプロセス、低メモリ使用量、次のようなフォーマットへの簡単なエクスポートを保証します。 ONNXや TensorRTのようなフォーマットへの容易なエクスポートを保証し、堅牢なAIソリューションを自信を持って展開できるようにします。
参考資料
- 多目的に使える YOLO11マルチタスク・ビジョンAI用
- トランスベースの検出について、YOLOv10 RT-DETR比較する。
- 展開速度を最大化するためのモデルのエクスポートについて説明します。