YOLOv7 :リアルタイム検出器の技術的分析
コンピュータビジョンの進化は、リアルタイム物体検出の急速な進歩によって特徴づけられてきた。この道のりにおける二つの重要なYOLOv7 。両モデルとも速度と精度の限界を押し広げたが、結果を達成するために異なるアーキテクチャ哲学を採用した。本ガイドでは、これら二つの強力なモデル間の包括的な技術比較を提供し、コンピュータビジョンプロジェクトに適したアーキテクチャを選択する手助けをする。
モデルの紹介
これらのモデルの起源と主要な設計選択を理解することは、現代の機械学習運用においてそれらを効果的に展開するために極めて重要である。
YOLOv7
CSPNetおよびScaled-YOLOv4アーキテクチャを維持してきた研究者たちによって開発されたYOLOv7 、推論コストを増加させることなく精度を最大化するため、「訓練可能なフリービーの袋」というアプローチYOLOv7 。
- 著者: Chien-Yao Wang、Alexey Bochkovskiy、Hong-Yuan Mark Liao
- 組織:台湾中央研究院情報科学研究所
- 日付: 2022-07-06
- Arxiv:https://arxiv.org/abs/2207.02696
- GitHub:https://github.com/WongKinYiu/yolov7
- ドキュメント:Ultralytics YOLOv7 ドキュメンテーション
YOLOX 詳細
YOLOXはパラダイムをアンカーフリー検出へと回帰させることで異なる道を選択し、堅牢な性能を維持しつつヘッドアーキテクチャを大幅に簡素化した。
- 著者: Zheng Ge、Songtao Liu、Feng Wang、Zeming Li、Jian Sun
- 組織:Megvii
- 日付: 2021-07-18
- Arxiv:https://arxiv.org/abs/2107.08430
- GitHub:https://github.com/Megvii-BaseDetection/YOLOX
- ドキュメント:YOLOX公式ドキュメント
建築上の差異と革新
YOLOv7 OLOXYOLOv7 主な違いは、特徴抽出、境界ボックス予測、およびラベル割り当てへのアプローチにある。
YOLOX: アンカーフリーの先駆者
YOLOXはアンカーボックスを排除した設計への移行により、YOLO 革命をもたらした。従来のアンカーベース検出器は、アンカーボックスのクラスタリングに複雑なヒューリスティック調整を必要とし、データセットに強く依存する傾向があった。 アンカーボックスを排除したことで、YOLOXは設計パラメータ数を大幅に削減しました。さらに、YOLOXは分離型ヘッドを採用し、分類タスクと位置推定タスクを別々のネットワーク分岐に分離しています。これにより、物体の分類と空間座標の回帰という本質的な矛盾が解消されました。YOLOXはまた、SimOTAのような高度なラベル割り当て戦略を統合しており、これは学習中に陽性サンプルを動的に割り当てます。
YOLOv7: 拡張効率的層集約
YOLOv7 アンカーベースの手法YOLOv7 、拡張効率的層集約ネットワーク(E-ELAN)を導入した。E-ELANは勾配経路長を最適化し、ネットワークが深さの異なる層間で効果的に学習することを保証する。このアーキテクチャは再パラメータ化技術に大きく依存し、推論時に畳み込み層を統合することで精度を犠牲にせず速度を向上させる。YOLOv7「袋詰め戦略」には、計画的な再パラメータ化畳み込みや粗から細へのリードガイド付きラベル割り当てといった革新が含まれ、モデルの平均精度(MAP)を驚異的な水準まで押し上げている。
アンカーベース vs. アンカーフリー
YOLOXはアンカーフリー設定によりデプロイメントパイプラインを簡素化しましたが、Ultralytics 手法をさらに洗練させ、新世代では事前定義されたボックスの必要性を完全に排除しています。
パフォーマンス比較
これらのモデルを実運用向けに評価する際には、精度と計算効率のバランスが不可欠である。下表はそのトレードオフを示しており、最も優れた指標を太字で強調表示している。
| モデル | サイズ (ピクセル) | 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 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
上記のように、YOLOv7xは最高のmAPを達成し、複雑なデータセットに対して非常に高い精度を発揮する。一方、YOLOX-Nanoは極端なリソース制約下での運用に最適化されている。ただし、両モデルとも最新のアーキテクチャと比較すると、トレーニング時のメモリ使用量が比較的高い傾向にある。
トレーニング方法論とエコシステム
研究者や開発者にとって重要な要素は実装の容易さである。従来、古いYOLO 高度にカスタマイズされたC++スクリプトや複雑な依存関係管理が必要だった。
Ultralyticsエコシステムの利点
今日、これらのアーキテクチャを活用する最も効果的な方法は、よく整備されたUltralytics を通じてです。Ultralytics 統一された直感的なPython Ultralytics 、トレーニング、検証、デプロイを大幅に簡素化します。
- 使いやすさ:わずか数行のコードでトレーニングループを開始でき、PyTorch に伴う急峻な学習曲線を緩和します。
- トレーニング効率: Ultralytics YOLO 、大規模なトランスフォーマーモデルと比較して、トレーニング中に本質的に少ないメモリを消費します。 RT-DETRなどの重いトランスフォーマーモデルと比較して、トレーニング中に本質的に少ないメモリを消費します。これにより、開発者はコンシューマー向けハードウェア上でバッチサイズを最大化できます。
- 汎用性:単純なバウンディングボックスを超え、このエコシステムはインスタンスセグメンテーションや姿勢推定といったタスクへも容易に拡張される。
Ultralytics モデルをトレーニングする方法を示す、100%実行可能なサンプルです:
from ultralytics import YOLO
# Load a pre-trained model
model = YOLO("yolov8n.pt") # Readily available weights for rapid transfer learning
# Train the model efficiently on your custom data
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
batch=16,
device="0", # Utilizes optimal CUDA memory management
)
# Export seamlessly to ONNX or TensorRT
model.export(format="onnx")
エクスポートパイプラインを標準化することで、開発者は自身の重みを TensorRT や ONNXといった形式へ簡単に移行でき、ターゲットハードウェアでの高速推論を保証します。
理想的な使用例と実世界の応用例
YOLOXとYOLOv7 の選択は、YOLOv7 デプロイ先によって決まります:
- エッジAI向けYOLOX:YOLOX-NanoおよびYOLOX-Tinyは低消費電力デバイスへの展開に極めて適しています。ラズベリーパイ上でスマートセキュリティカメラを構築する場合、YOLOXのシンプルなアンカーフリー畳み込みはエッジアクセラレータへ容易に移植可能です。
- 高精度YOLOv7 :高解像度衛星画像の処理や複雑な製造品質管理を実行する場合、NVIDIA mAP 、ごくわずかな異常も確実に検出されます。
未来:Ultralytics YOLO26へのアップグレード
YOLOv7 登場当時画期的であったものの、コンピュータビジョン分野は大きく進歩した。新規導入においては、開発者は2026年1月にリリースUltralytics を検討すべきである。この最先端モデルは、最良のアーキテクチャ理論を統合し、究極の実用化可能なシステムを実現している。
アップグレードを強く推奨する理由は以下の通りです:
- エンドツーエンドNMS設計:YOLO26は後処理段階における非最大抑制(NMS)をネイティブに排除します。当初は YOLOv10で初めて導入されたこの手法により、一貫して低いレイテンシが保証され、NMS のないデバイス上での展開が簡素化されます。
- DFL除去:ディストリビューション焦点損失を除去することで、YOLO26は低電力エッジデバイスとの互換性が大幅に向上し、ONNX 容易になります。
- MuSGDオプティマイザー:LLMトレーニングの革新に着想を得たYOLO26は、ハイブリッドMuSGDオプティマイザーを採用し、より速い収束と驚くほど安定したトレーニングダイナミクスを実現します。
- 最大43%高速CPU :実環境のハードウェア向けに大幅に最適化されたYOLO26は、高価なGPU 必要とせず、標準的なCPUで高い性能を発揮します。
- ProgLoss + STAL:これらの先進的な損失関数は、小型物体認識を劇的に改善します。これは、航空ドローン検査や高度なIoTネットワークにとって極めて重要な機能です。
オブジェクト検出、セグメンテーション、その他の領域において最高のパフォーマンスバランスを求める開発者にとって、Ultralytics 経由でのモデルデプロイは、比類のない摩擦ゼロの体験を提供します。
結論
YOLOXとYOLOv7 はいずれも、オープンソースのビジョンAIの軌跡を形作る重要な技術をYOLOv7 。 YOLOXはアンカーフリーの分離型ヘッドの実用性を証明し、YOLOv7 勾配経路の再パラメータ化の圧倒的なYOLOv7 。今日、Ultralytics を活用することで、これらの歴史的アーキテクチャから最大限の可能性を引き出せるだけでなく、最先端のYOLO26へシームレスに移行し、次なるコンピュータビジョンアプリケーションの将来性を確保できます。