YOLOv7 vs YOLOv10:詳細な技術比較
適切な物体検出モデルを選択するには、精度、速度、およびデプロイメント要件のバランスを取る必要があります。このページでは、リアルタイム物体検出の分野における2つの重要なモデルであるYOLOv7とYOLOv10の詳細な技術比較を提供します。コンピュータビジョンプロジェクトに最適な選択を行うのに役立つように、アーキテクチャの違い、パフォーマンス指標、および理想的なユースケースについて詳しく説明します。
YOLOv7:高精度と高速性
YOLOv7は2022年7月に発表され、その速度と精度の優れたバランスで急速に認知度を高め、当時としては最先端のベンチマークを打ち立てました。推論コストを増加させることなく精度を向上させるために、「trainable bag-of-freebies」を使用してトレーニングプロセスの最適化に重点を置いていました。
技術詳細:
- 著者: Chien-Yao Wang、Alexey Bochkovskiy、Hong-Yuan Mark Liao
- 組織: Institute of Information Science, Academia Sinica, Taiwan
- Date: 2022-07-06
- Arxiv: https://arxiv.org/abs/2207.02696
- GitHub: https://github.com/WongKinYiu/yolov7
- ドキュメント: https://docs.ultralytics.com/models/yolov7/
アーキテクチャと主な機能
YOLOv7 は、その性能を達成するために、いくつかのアーキテクチャの改善とトレーニングの改良を導入しました。
- Extended Efficient Layer Aggregation Networks (E-ELAN): バックボーンのこの主要コンポーネントは、勾配パスを制御しながら、多様な特徴を学習するネットワークの能力を強化し、収束と全体的な精度を向上させます。
- モデルスケーリング: 連結ベースのモデルに対して複合スケーリング手法を実装し、さまざまな計算予算に合わせてモデルの深度と幅を効果的に調整できるようにしました。
- Trainable Bag-of-Freebies: YOLOv7は、推論時にオーバーヘッドを追加することなくパフォーマンスを向上させるために、トレーニング中にラベル割り当て戦略やバッチ正規化の調整などの高度な手法を活用しました。
- Auxiliary Head Coarse-to-fine: モデルは、学習中に補助ヘッドを使用して、深い教師あり学習を改善し、モデルの学習プロセスをより効果的にガイドします。
長所と短所
長所
- High Accuracy and Speed Balance: YOLOv7は、高いmAPと高速な推論速度の強力な組み合わせを提供し、多くのリアルタイムアプリケーションに適しています。
- 効率的な学習: このモデルは、推論中の計算量を大幅に増加させることなく、パフォーマンスを向上させる高度な学習テクニックを組み込んでいます。
- 十分に確立されている: 成熟したモデルとして、最新のモデルと比較して、より大きなユーザーベースとより多くのコミュニティリソースの恩恵を受けています。
弱点
- NMS依存関係: YOLOv7は、ポストプロセッシングにNon-Maximum Suppression(NMS)を使用しており、これにより計算オーバーヘッドが追加され、推論レイテンシが増加します。
- 複雑さ: アーキテクチャとトレーニング戦略は、効果的である一方で、完全に理解し、カスタムアプリケーション向けに微調整することが複雑になる可能性があります。
ユースケース
YOLOv7は、速度と精度のバランスが重要な、要求の厳しいアプリケーションに適しています。
- 高度な監視: 高い精度は、セキュリティシステム内のオブジェクトや脅威の特定に役立ちます。
- 自律システム: 自動運転車などのアプリケーションに、堅牢な検出機能を提供します。
- 産業オートメーション: このモデルは、製造業における信頼性の高い欠陥検出や品質管理に利用できます。
YOLOv10:エンドツーエンドのリアルタイム検出
2024年5月に清華大学の研究者によって発表されたYOLOv10は、リアルタイム物体検出における重要な進歩を表しています。その主な革新は、Non-Maximum Suppression (NMS)の必要性を排除することで、エンドツーエンドのソリューションを作成し、レイテンシを削減し、デプロイメント効率を向上させることです。
技術詳細:
- 著者: 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不要の学習: 学習中に一貫した二重割り当てを利用しており、NMSポストプロセスステップなしで競争力のあるパフォーマンスを実現できます。これにより、デプロイメントパイプラインが簡素化され、推論レイテンシが低下します。
- 全体的な効率と精度を重視した設計: このモデルは、計算の冗長性を減らし、能力を高めるために、分類ヘッドやダウンサンプリングレイヤーなどのさまざまなコンポーネントを最適化します。これには、ランクガイド付きブロック設計や部分的自己注意(PSA)などの手法が含まれます。
- Anchor-Free Approach: 他の最新のYOLOモデルと同様に、アンカーフリー検出器設計を採用しており、検出ヘッドを簡素化し、汎化を向上させます。
長所と短所
長所
- 高い効率性: NMSフリーの設計とその他のアーキテクチャの最適化により、推論の高速化、レイテンシの低減、計算コストの削減が実現します。
- 競争力のある精度: 速度を大幅に向上させ、モデルサイズを縮小しながら、強力な精度を維持します。
- エンドツーエンドのデプロイメント: NMSの削除により、デプロイメントパイプラインが簡素化され、アプリケーションへの統合が容易になります。
弱点
- 比較的新しいモデル: より新しいモデルであるため、コミュニティサポートと実際の例の数は、YOLOv7やUltralytics YOLOv8のような確立されたモデルと比較してそれほど広範ではない可能性があります。
- 最適なパフォーマンスのためのチューニング: 最良の結果を得るには、注意深いハイパーパラメータのチューニングが必要になる場合があり、モデルトレーニングのヒントなどのリソースが役立つ可能性があります。
ユースケース
YOLOv10はリアルタイム効率を重視しているため、リソースに制約のある環境に最適です。
- エッジAIアプリケーション: 低遅延性が重要なNVIDIA JetsonやRaspberry Piのようなデバイスへの展開に最適です。
- ロボティクス: ナビゲーションとインタラクションのためのより高速な知覚を可能にし、ロボティクスにおけるAIの役割の重要な側面。
- 自律型ドローン: 軽量で高速なアーキテクチャは、ドローンやその他の無人航空機における迅速な物体検出に適しています。
直接対決パフォーマンス比較
YOLOv7とYOLOv10を比較すると、最も重要な違いはその設計思想にあります。YOLOv7は高い精度と速度のバランスを追求しており、強力な汎用検出器となっています。対照的に、YOLOv10はNMSを排除することで計算効率と低レイテンシを優先しており、エッジデバイスでのリアルタイムアプリケーションに最適です。
以下の表は、YOLOv10モデルが、同様のmAPレベルで、YOLOv7モデルよりも一貫して低いレイテンシを達成し、より少ないパラメータとFLOPsを必要とすることを示しています。例えば、YOLOv10bはわずか6.54msのレイテンシで52.7のmAPを達成し、同様のmAPを持つものの、より高いレイテンシを持つYOLOv7lを上回っています。
モデル | サイズ (ピクセル) |
mAPval 50-95 |
速度 CPU ONNX (ms) |
速度 T4 TensorRT10 (ms) |
params (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
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 |
結論と推奨事項
YOLOv7とYOLOv10はどちらも強力なモデルですが、異なるニーズに対応します。YOLOv7は、高いmAPを達成することが優先事項であるアプリケーションにとって、依然として堅実な選択肢である、堅牢で正確な検出器です。YOLOv10は、革新的なNMSフリーアーキテクチャにより、特にエンドツーエンドのデプロイメントにおいて、最高の効率と最低のレイテンシを必要とするアプリケーションにとって、明らかな勝者です。
最新の汎用性の高いユーザーフレンドリーなフレームワークを求める開発者にとって、Ultralytics YOLOv8や最新のYOLO11などのUltralyticsエコシステムのモデルは、多くの場合、より魅力的な選択肢となります。これらのモデルは以下を提供します。
- 使いやすさ: 洗練されたpython API、充実したドキュメント、そしてシンプルなCLIコマンド。
- 充実したエコシステム: 活発な開発、強力なオープンソースコミュニティ、そしてシームレスなMLOpsのためのUltralytics HUBのようなツールとの統合。
- タスクの汎用性: セグメンテーション、分類、姿勢推定、および向きのある物体検出(OBB)を含む、物体検出を超える複数のタスクのサポート。
その他のモデルを見る
他のモデルにご興味があれば、以下の比較もご覧ください。
- YOLOv7 対 YOLOv8
- YOLOv10 vs YOLOv8
- YOLOv10 vs YOLOv9
- RT-DETR vs YOLOv7
- YOLOv7 対 YOLOv5
- YOLO11のような最新モデルをご覧ください。