YOLOv6.0とYOLOv7比較:工業用スピードと精度を深く掘り下げる
最適な物体検出モデルを選択することは、推論速度、精度、計算効率のバランスに依存する重要な決定である。この技術比較では、産業界に特化したフレームワークであるYOLOv6.0と、YOLOv6-YOLOv6.0の違いを探ります。 YOLOv7YOLOv7は、訓練可能な "bag-of-freebies "を使用して精度の限界を押し広げるように設計されたモデルである。両者のアーキテクチャ、ベンチマーク、理想的なユースケースを分析することで、開発者はどちらのソリューションが特定の展開制約に最も適しているかを判断することができます。
YOLOv6.0:産業効率のために設計された
YOLOv6.0は、YOLO シリーズの大幅な進化を象徴するもので、特にリアルタイムのスピードとハードウェアの効率が譲れない産業用アプリケーション向けに調整されている。Meituanによって開発されたこのバージョンは、レイテンシーと精度のトレードオフを最適化することに重点を置いており、エッジコンピューティングや高スループット環境向けの強力な選択肢となっている。
著者Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, and Xiangxiang Chu
Organization:Meituan
Date:2023-01-13
Arxiv:https://arxiv.org/abs/2301.05586
GitHubYOLOv6
Docsultralytics
アーキテクチャと主な機能
YOLOv6.0のアーキテクチャは、ハードウェアを考慮した設計というコンセプトに基づいて構築されている。YOLOv6-3.0はリパラメータ可能なバックボーン(EfficientRep)を採用しており、学習時には複雑な構造を利用してより良い特徴学習を行う一方、推論時にはよりシンプルで高速な構造に縮退する。この手法により、メモリアクセスコストが大幅に削減され、推論レイテンシが改善される。
主な建築上の革新は以下の通り:
- 双方向連結(BiC):このモジュールは、特徴伝播を強化することにより、ローカライズの精度を向上させます。
- アンカー支援トレーニング(AAT): トレーニングを安定させ、パフォーマンスを向上させるために、アンカーベース検出器とアンカーフリー検出器の利点を組み合わせた戦略。
- 自己蒸留: YOLOv6.0は、生徒モデルが教師モデルの予測から学習する自己蒸留技術を利用し、外部の大規模モデルを必要とせずに精度を向上させます。
長所と短所
YOLOv6.0の最大の強みは、その推論速度にある。ベンチマークが示すように、(YOLOv6.0nのような)小型のバリエーションはGPU ハードウェア上で非常に高速であるため、高フレームレートを処理しなければならないビデオ解析パイプラインに最適である。さらに、モデルの量子化をサポートしているため、リソースに制約のあるハードウェアでの展開が容易です。
しかし、YOLOv6 6の初期バージョンは、主に物体検出に限定されており、セグメンテーションやポーズ推定をすぐにサポートする、より包括的なフレームワークに見られるネイティブな汎用性に欠けていた。さらに、非常に効率的ではあるが、エコシステムのサポートは他のコミュニティ主導のプロジェクトほど充実していない。
理想的なユースケース
YOLOv6.0は、以下のようなシナリオに優れている:
- 製造ライン:コンベアベルトの高速欠陥検出が必要な場合。
- 小売分析:計算リソースが限られている場合の待ち行列管理や在庫追跡。
- 組み込みシステム: NVIDIA Jetsonシリーズのようなデバイスへの展開。
YOLOv7:トレーニング可能なバッグ・オブ・フリービーズの最適化
YOLOv7は異なるアプローチを取り、推論コストを増加させることなく精度を最大化するためのアーキテクチャ改革に重点を置いている。著者らは、「訓練可能なフリーバイオバッグ(trainable bag-of-freebies)」と呼ばれる最適化手法を導入し、訓練中のモデルの性能を向上させるが、推論アーキテクチャや推論速度は変更しない。
著者Chien-Yao Wang, Alexey Bochkovskiy, and Hong-Yuan Mark Liao
Organization:Institute of Information Science, Academia Sinica, Taiwan
Date:2022-07-06
Arxiv:https://arxiv.org/abs/2207.02696
GitHub:https://github.com/WongKinYiu/yolov7
Docsultralytics
アーキテクチャと主な機能
YOLOv7 、E-ELAN(Extended Efficient Layer Aggregation Network)を導入している。このアーキテクチャにより、モデルは最短および最長の勾配パスを制御することで、より多様な特徴を学習し、ネットワークが効果的に収束することを保証する。
主な特徴は以下の通り:
- モデルのスケーリング:奥行きや幅だけをスケーリングする以前の方法とは異なり、YOLOv7 、レイヤーのサイズを変更するのではなく、レイヤーを連結し、モデルの最適化特性を維持する複合的なスケーリング方法を提案しています。
- 補助ヘッドトレーニング:このモデルは学習時に補助ヘッドを使用し、リードヘッドを補助する。このディープ・スーパービジョン・テクニックは中間層の学習を向上させるが、速度を維持するために推論時には取り除かれる。
- 計画的な再パラメータ化コンボリューション:リパラメータ化の特殊な応用で、性能低下を防ぐために特定のレイヤーでの同一性接続を避ける。
長所と短所
YOLOv7 、COCO データセットで驚異的な平均精度(mAP)スコアを達成するなど、その精度の高さで知られています。リアルタイムの制約と忠実度の高い検出の必要性のギャップを効果的に埋めています。
欠点としては、アーキテクチャが複雑で、補助ヘッドを使用するため、より単純なアーキテクチャと比較して、学習プロセスがよりメモリ集約的になる可能性があります。推論中は効率的ですが、トレーニング段階では、特に大型の「E6E」バリアントでは、かなりのGPU メモリを必要とします。
理想的なユースケース
YOLOv7 特に以下のような場合に適している:
- 詳細な監視:複雑なセキュリティ映像の中から、小さな物体や微妙な動作を識別。
- 自律走行:安全性とナビゲーションのために精度が重要な場所
- 科学研究:医療画像や生物学的調査など、高いAP メトリックスを必要とするアプリケーション。
パフォーマンス比較:指標と分析
次の表は、COCO 検証データセットにおけるYOLOv6.0とYOLOv7 性能を対比したものである。モデルサイズ、計算負荷(FLOPs)、スピードのトレードオフを強調しています。
| モデル | サイズ (ピクセル) | 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 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
ベンチマークの解釈
YOLOv7xは最高の精度(53.1%mAP)を達成していますが、必要なパラメータ(71.3M)とFLOP(189.9B)は大幅に多くなっています。対照的に、YOLOv6.0nは極めて高速に最適化されており、T4GPU 1.17 msの推論を達成し、精度は低いものの、最大のYOLOv7 バリエーションより約10倍高速です。
このデータから、明確な違いが明らかになった:低遅延環境ではYOLOv6.0が優勢であるのに対し、最大の検出品質が優先され、ハードウェア・リソースが豊富な場合はYOLOv7 いる。
Ultralytics 優位性生の指標を超える
YOLOv6 YOLOv7 強力な機能を提供していますが、コンピュータ・ビジョンの状況は急速に進化しています。将来性があり、汎用性が高く、ユーザーフレンドリーなソリューションを求める開発者や研究者のために、 Ultralytics YOLO11と YOLOv8は、未加工のベンチマークにとどまらない魅力的な利点を提供します。
使いやすさとエコシステム
高度なAIモデルを採用する際の最も大きな障壁の1つは、実装の複雑さです。Ultralytics モデルは、その合理的なユーザーエクスペリエンスで有名です。シンプルなPython APIと CLI、ユーザーはわずか数行のコードでモデルのトレーニング、検証、デプロイを行うことができる。これは、複雑な環境のセットアップや構成の微調整を必要とすることが多い研究指向のリポジトリとは対照的です。
from ultralytics import YOLO
# Load a model (YOLO11n recommended for speed/accuracy balance)
model = YOLO("yolo11n.pt")
# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
タスク横断的な多用途性
主に検知に特化していた以前のYOLO バージョンとは異なり、Ultralytics モデルはネイティブにマルチモーダルである。1つのフレームワークでサポートされています:
- Object Detection: オブジェクトとその位置を特定します。
- Instance Segmentation: ピクセルレベルのオブジェクトマスキング。
- Pose Estimation: 骨格のキーポイントを特定します。
- Classification: 画像全体を分類すること。
- Oriented Bounding Box (obb): ある角度でオブジェクトをdetectします(例えば、航空写真)。
パフォーマンス・バランスと効率
Ultralytics モデル YOLO11は、スピードと精度の最適なバランスを提供するように設計されている。YOLOv6ような効率的なアーキテクチャに関連する推論速度を維持しながら、YOLOv7 高いmAP 達成することがよくあります。さらに、Ultralytics モデルはトレーニングの効率性を考慮して設計されており、トランスフォーマーベースのモデル(RT-DETR)と比べてGPU メモリの使用量が少なくて済むため、実験サイクルが短縮され、クラウドの計算コストが削減されます。
整備されたエコシステム
Ultralytics モデルを選択することは、サポートされたエコシステムを購入することを意味します。これには以下が含まれます:
- 頻繁なアップデート:アーキテクチャとウェイトの定期的な改善。
- 幅広い輸出サポート:シームレスな輸出 ONNX, TensorRTCoreML、TFLite エクスポートして、あらゆるデバイスに展開できます。
- コミュニティ:開発者の大規模なコミュニティと広範なドキュメントにより、ヘルプはいつでも利用可能です。
結論
YOLOv6.0とYOLOv7 、コンピュータ・ビジョンの分野に大きく貢献している。YOLOv6.0は、超高速推論と量子化サポートを必要とする産業用アプリケーションに最適です。 YOLOv7は、検出精度が最重要視され、ハードウェアの制約が柔軟なシナリオにおいて、強力な候補であり続けています。
しかし、最先端のパフォーマンスと、比類のない使いやすさ、多用途性、展開の柔軟性を兼ね備えた総合的なソリューションが必要です、 Ultralytics YOLO11は、最新のAI開発のための優れた選択肢として際立っています。エッジへのデプロイであれ、クラウドでのスケーリングであれ、Ultralytics エコシステムは成功に必要なツールを提供します。
さらに詳しくお知りになりたい方は、YOLOXとの比較や、RT-DETRの機能についてもご覧ください。 RT-DETRの機能をご検討ください。