YOLOv7 vs DAMO-YOLO#
リアルタイム物体検出の分野は継続的に進化しており、研究者やエンジニアは速度と精度の最適なバランスを追求しています。本技術比較では、2022年に登場した注目すべき2つのアーキテクチャ、YOLOv7とDAMO-YOLOを詳しく比較します。どちらのモデルもコンピュータビジョンのコミュニティに新しい概念をもたらし、モデルのトレーニング、アーキテクチャ設計、デプロイにおける異なる課題に対応しています。
モデルの背景と技術詳細#
アーキテクチャを詳しく見ていく前に、これら2つのモデルの背景を理解することが重要です。どちらも主要な研究グループによって開発され、リアルタイム物体検出の限界を押し広げる高度な手法を導入しました。
YOLOv7の詳細#
YOLOファミリーの発展形として開発されたYOLOv7は、推論コストを増加させることなく精度を大幅に向上させる、トレーニング可能な「bag-of-freebies」という概念を導入しました。
- 著者: 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
- Docs: https://docs.ultralytics.com/models/yolov7
DAMO-YOLOの詳細#
Alibaba Groupの研究者によって開発されたDAMO-YOLOは、さまざまなハードウェア向けに高効率なモデルを構築するため、Neural Architecture Search(NAS)と高度な知識蒸留に重点を置いています。
- 著者: Xianzhe Xu、Yiqi Jiang、Weihua Chen、Yilun Huang、Yuan Zhang、Xiuyu Sun
- 組織: Alibaba Group
- 日付: 2022-11-23
- Arxiv: https://arxiv.org/abs/2211.15444v2
- GitHub: https://github.com/tinyvision/DAMO-YOLO
アーキテクチャのイノベーション#
YOLOv7: 勾配パス解析と再パラメータ化#
YOLOv7は、**拡張効率的レイヤー集約ネットワーク(E-ELAN)**に重点を置いています。著者らはネットワークの勾配パスを分析してE-ELANを設計し、元の勾配パスを損なうことなくネットワークが継続的に学習できるようにしました。さらに、YOLOv7は推論時のモデル再パラメータ化を効果的に活用し、レイヤーをシームレスに融合してFLOPsを削減し、実行時間を短縮します。これにより、最新のGPU上でのリアルタイム推論に非常に適しています。
DAMO-YOLO: Neural Architecture SearchとRepGFPN#
DAMO-YOLOは、レイテンシー制約の下で**Neural Architecture Search (NAS)**を強く活用する点で異なります。モバイルデバイスや特定のエッジアクセラレータなどの特定のハードウェアに合わせた最適なバックボーンを発見するために、MAE-NASと呼ばれるフレームワークを利用しています。ネックには、効率的なRepGFPN(Re-parameterized Generalized Feature Pyramid Network)を導入し、予測ヘッドにおける計算負担を最小限に抑えるためにZeroHeadデザインを採用しています。
YOLOv7がアーキテクチャ自体の強力な最適化に依存する一方、DAMO-YOLOは複雑な多段階の知識蒸留プロセスに大きく依存しています。大規模な教師モデルをトレーニングし、そこから小規模な生徒モデルへ知識を蒸留する必要があるため、トレーニング段階で計算コストが高くなる可能性があります。
パフォーマンスとメトリクスの比較#
これらのモデルを比較する際は、mAP(平均適合率)、推論速度、モデルの複雑さを確認することが重要です。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
上の表は、YOLOv7が高精度領域(YOLOv7x)まで適切にスケールする一方、DAMO-YOLOがリソースの制約された環境向けに高度に最適化された小型モデルを提供することを示しています。
トレーニング効率とメモリ要件#
2つのアーキテクチャの大きな違いは、トレーニング手法にあります。DAMO-YOLOは蒸留に依存するため、新しいモデルをゼロからトレーニングする場合や、カスタムコンピュータビジョンデータセットでファインチューニングする場合に、より多くのVRAMとGPUコンピューティング時間を必要とすることがよくあります。
これに対して、YOLOv7やそれ以降のバージョンなど、Ultralyticsエコシステムに統合されたモデルは、メモリ要件向けに高度に最適化されています。これにより、開発者はコンシューマー向けハードウェア上でメモリ不足エラーに遭遇することなく、より大きなバッチサイズを利用でき、実験トラッキングと反復プロセスを簡素化できます。
Ultralyticsの優位性#
YOLOv7とDAMO-YOLOはどちらも魅力的な機能を提供しますが、Ultralyticsエコシステム内でモデルをデプロイすることで、他に類を見ない開発者体験を得られます。
- 使いやすさ: Ultralytics Pythonパッケージは、統一されたシンプルなAPIを提供します。数行のコードでモデルアーキテクチャをすばやく切り替えたり、トレーニングループを開始したり、推論を実行したりできます。
- 適切に保守されたエコシステム: Ultralyticsは頻繁にアップデートを提供し、最新のPyTorchリリースやCUDAドライバーとのネイティブ互換性を確保しています。また、モデルをONNX、TensorRT、OpenVINOなどの形式へ簡単にエクスポートできます。
- 汎用性: DAMO-YOLOが物体検出専用であるのに対し、Ultralyticsエコシステムは多様なタスクをネイティブにサポートしています。Ultralyticsファミリーのモデルは、標準的なバウンディングボックス検出、姿勢推定、インスタンスセグメンテーション、回転バウンディングボックス(OBB)を実行できます。
コード例: すぐに始める#
Ultralyticsモデルを使用して、モデルのロード、トレーニング、推論を簡単に実行する方法を紹介します。
from ultralytics import YOLO
# Load a pre-trained YOLOv7 model (or newer models like yolo26n.pt)
model = YOLO("yolov7.pt")
# Train the model on the COCO8 dataset with automated hyperparameter handling
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference on an image
predictions = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX format for deployment
model.export(format="onnx")Ultralyticsでは、トレーニング済みの重みをハードウェアアクセラレーション対応のさまざまな形式(TensorRTやCoreMLなど)へエクスポートする処理が、exportコマンドの単一の引数で実行できます。これにより、複雑なスクリプト設定にかかる時間を大幅に節約できます。
次世代モデル: YOLO26#
YOLOv7は依然として強力なレガシーアーキテクチャですが、この分野は急速に進歩しています。新しいデプロイには、Ultralytics YOLO26(2026年1月リリース)が推奨標準です。ほぼすべての指標で従来世代を上回っています。
- エンドツーエンドのNMSフリーデザイン: YOLOv10で初めて導入されたこの設計により、YOLO26はNon-Maximum Suppression(NMS)の後処理をネイティブに排除します。これにより、ロボティクスや自動運転技術に不可欠な、決定論的で極めて低レイテンシの推論を実現します。
- MuSGDオプティマイザー: 高度なLLMトレーニング手法(Moonshot AIのKimi K2など)に着想を得たこのハイブリッドオプティマイザーは、SGDとMuonを組み合わせ、データセット全体で非常に安定したトレーニングと高速な収束を実現します。
- 最大43%高速なCPU推論: Distribution Focal Loss(DFL)を戦略的に削除することで、YOLO26はエッジコンピューティングプラットフォームとCPU上のパフォーマンスを大幅に向上させます。
- ProgLoss + STAL: これらの高度な損失関数により、小さな物体の検出精度が大幅に向上し、YOLO26は航空画像や詳細な監視に非常に適しています。
理想的なユースケース#
DAMO-YOLOを選択する場合#
- NASにおける学術研究: 組織がNeural Architecture Searchの手法研究に多大な投資をしている場合。
- 特定ハードウェアにおける極めて厳しいレイテンシ要件: カスタムAIアクセラレータチップ向けに最適化されたバックボーンを見つけるため、網羅的なNAS探索を実行するリソースがある場合。
YOLOv7を選ぶタイミング#
- 既存のGPUパイプライン: ハイエンドのNVIDIAハードウェア上で、YOLOv7固有のE-ELANアーキテクチャを中心に高度に最適化されたレガシー本番パイプラインを維持しているチーム向けです。
最新のUltralyticsモデル(YOLO11 / YOLO26)へ移行する理由#
小売分析、スマート製造、ヘルスケアなど、大半のエンタープライズアプリケーションでは、最新のUltralyticsモデルに匹敵するものはありません。Ultralytics Platformとの統合により、使いやすさ、優れたドキュメント、強力なコミュニティサポート、マルチタスクの汎用性を備えた完全なMLパイプラインが提供されます。Raspberry Piで在庫を追跡する場合でも、クラウドで大規模な分析を実行する場合でも、YOLO26のようなモデルは、コンピュータビジョンの将来に向けた理想的なパフォーマンスバランスを提供します。