DAMO-YOLOとYOLOv7の比較#
コンピュータービジョンの急速な進化により、精度と計算コストのバランスを取るよう設計された、非常に効率的な物体検出モデルが生み出されています。2022年に登場した注目すべき2つのモデルが、DAMO-YOLOとYOLOv7です。どちらもリアルタイムビジョンタスクの限界を押し広げることを目指していますが、その成果は大きく異なるアーキテクチャパラダイムとトレーニング手法によって実現されています。
この包括的な技術比較では、両モデルの異なるアプローチを詳しく検討し、アーキテクチャ、デプロイの可能性、性能指標を分析します。これにより、機械学習エンジニアが自身の具体的なコンピュータービジョンアプリケーションに適したツールを選択できるようにします。
モデルの起源とメタデータ#
詳細な技術分析に入る前に、これら2つのコンピュータービジョンモデルの起源を理解しておくことが重要です。
DAMO-YOLO#
Alibaba Groupの研究者によって開発されたDAMO-YOLOは、自動アーキテクチャサーチと蒸留によって速度と精度の両方を最適化するために導入されました。
- 著者: Xianzhe Xu、Yiqi Jiang、Weihua Chen、Yilun Huang、Yuan Zhang、Xiuyu Sun
- 組織: Alibaba Group
- 日付: 2022年11月23日
- Arxiv: 2211.15444v2
- GitHub: tinyvision/DAMO-YOLO
YOLOv7#
2022年半ばに最先端モデルとしてリリースされたYOLOv7は、デプロイコストを増加させることなく、トレーニング可能な「bag-of-freebies」を導入することで、リアルタイム推論をさらに進化させました。
- 著者: Chien-Yao Wang、Alexey Bochkovskiy、Hong-Yuan Mark Liao
- 組織: 台湾中央研究院情報科学研究所
- 日付: 2022年7月6日
- Arxiv: 2207.02696
- ドキュメント: YOLOv7ドキュメント
YOLOv7はUltralyticsエコシステムで公式にサポートされており、統一されたAPIを使用して、トレーニング、検証、エクスポートをシームレスに実行できます。
アーキテクチャのイノベーション#
DAMO-YOLO:NASと蒸留#
DAMO-YOLOには、効率を最大化するための最先端技術が複数組み込まれています。
- NASバックボーン: ニューラルアーキテクチャサーチ(NAS)を使用して、レイテンシーが重要な環境に適した最適なバックボーン(MAE-NAS)を自動設計します。
- Efficient RepGFPN: 複数のスケールにわたる特徴融合の効率を大幅に高める、Generalized Feature Pyramid Networkの改良版です。
- ZeroHeadとAlignedOTA: 軽量な検出ヘッドと最適化されたラベル割り当て戦略(AlignedOTA)を組み込み、計算オーバーヘッドを削減します。
- 蒸留の強化: トレーニング中に知識蒸留を積極的に活用し、パラメーター数を増やすことなく、小型モデルバリアントの性能を向上させます。
YOLOv7:E-ELANとBag-of-Freebies#
YOLOv7は、勾配パスの最適化と堅牢なトレーニング戦略に重点を置く、より構造的なエンジニアリングアプローチを採用しました。
- E-ELANアーキテクチャ: Extended Efficient Layer Aggregation Networkにより、最短および最長の勾配パスを制御して、モデルがより多様な特徴を学習できるようにし、効果的な学習収束を実現します。
- モデルスケーリング: 連結ベースのモデルに適した複合スケーリング手法を導入し、構造的な整合性を保ちながら深さと幅を同時にスケーリングします。
- トレーニング可能なBag-of-Freebies: 恒等接続を持たない再パラメーター化畳み込み(RepConv)や動的ラベル割り当て戦略などの手法を採用し、推論速度に影響を与えることなく、トレーニング中の精度を向上させます。
パフォーマンス分析#
平均適合率(mAP)、速度、効率を評価すると、両モデルは異なるセグメントを対象としながらも、優れた指標を示します。YOLOv7は高精度なGPUデプロイに重点を置く一方、DAMO-YOLOのNAS由来の構造は、積極的に低レイテンシーのCPUおよびエッジデプロイを目指しています。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター数 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
指標から分かるように、DAMO-YOLOは非常に軽量なバリアント(わずか850万パラメーターのtinyモデルなど)を提供する一方、YOLOv7は全体的により高い精度のピークを達成し、YOLOv7xはCOCOデータセットで53.1 mAPという優れた値を記録しています。
Ultralyticsエコシステムの優位性#
理論上のアーキテクチャが重要である一方、モデルの実用性はエコシステムによって決まります。YOLOv7などのUltralyticsがサポートするモデルは、適切に保守されたエコシステムと他に類を見ない使いやすさの恩恵を受けられます。
- 性能のバランス: Ultralyticsモデルは推論速度と検出精度の最適なトレードオフを一貫して実現しており、エッジデバイスとクラウドベースのモデルデプロイの両方に適しています。
- メモリ要件: より大規模なTransformerベースのモデルとは異なり、Ultralytics YOLOモデルはトレーニング中のCUDAメモリ要件を低く抑えます。これにより、より大きなバッチサイズを使用でき、コンシューマー向けハードウェアでもトレーニングプロセスを効率化できます。
- 汎用性: Ultralyticsフレームワークは物体検出にとどまらず、インスタンスセグメンテーションやポーズ推定などのタスクにも対応し、開発者に完全なコンピュータービジョンツールキットを提供します。
Ultralyticsパッケージでは、高度に最適化されたデータローダーと事前トレーニング済みの重みを活用し、データセットから完全にトレーニングされたモデルまでをわずか数分でシームレスに移行できます。
コード例:UltralyticsでYOLOv7をトレーニングする#
Ultralytics Python APIを使用すれば、YOLOv7をコンピュータービジョンパイプラインに非常に簡単に統合できます。
from ultralytics import YOLO
# Load a pre-trained YOLOv7 model
model = YOLO("yolov7.pt")
# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference and validate results
metrics = model.val()
predictions = model.predict("https://ultralytics.com/images/bus.jpg", save=True)新たな標準: YOLO26の紹介#
YOLOv7とDAMO-YOLOは2022年に大きなブレークスルーをもたらしましたが、ビジョンAIの分野は急速に進化しています。現在、新しいプロジェクトを開始するチームに推奨されるモデルは、2026年1月にリリースされた最先端のUltralytics YOLO26です。
YOLO26は、最先端のイノベーションを取り入れ、性能と使いやすさにおいて世代を超えた飛躍を実現します。
- エンドツーエンドのNMSフリーデザイン: YOLO26はネイティブにエンドツーエンドです。非最大抑制(NMS)の後処理を排除することで、より高速でシンプルなデプロイロジックを実現します。これは、当初YOLOv10が先駆けたパラダイムシフトです。
- MuSGDオプティマイザー: Moonshot AIのKimi K2のような大規模言語モデルのイノベーションに着想を得て、YOLO26はSGDとMuonを組み合わせたハイブリッド手法を使用します。このオプティマイザーにより、非常に安定したトレーニングダイナミクスと、収束速度の大幅な向上を実現します。
- CPU推論が最大43%高速化: Distribution Focal Loss(DFL)の意図的な削除と大幅な構造強化により、YOLO26は低消費電力のエッジコンピューティング向けに高度に最適化され、GPUを搭載しないハードウェアで従来世代を上回ります。
- ProgLoss + STAL: 小さな物体の認識を明確に対象として改善する、高度な新しい損失関数を組み込みます。これは、航空画像、ロボティクス、セキュリティ監視のアプリケーションに不可欠な機能です。
- タスク固有の改善: 標準的な検出に加えて、YOLO26はセグメンテーション向けのマルチスケールプロトタイピング、ポーズ推定向けのRLE、回転バウンディングボックス(OBB)向けの専用角度損失など、多様なタスクに対応する強化機能を備えています。
理想的なユースケース#
適切なアーキテクチャの選択は、対象とするデプロイ環境とプロジェクトの制約に完全に依存します。
DAMO-YOLOを選択する場合:
- 生のパラメーター数を極めて少なく抑える必要がある、厳しく制約されたリソースの限られたエッジ環境(マイクロコントローラーなど)で作業しています。
- Alibaba独自のクラウドサービスと特に統合された自動機械学習パイプラインを利用しています。
YOLOv7を選択する場合:
YOLO26を選択する場合(推奨):
- 新しいコンピュータービジョンアプリケーションをゼロから構築しており、精度とCPU/エッジ推論速度の両方で絶対的な最先端性能が必要です。
- NMSオペレーターの制約に対処することなく、CoreMLやTensorRTへのエクスポートなど、迅速でシームレスなデプロイが必要です。
- クラウドトレーニング、データセット管理、自動デプロイに対応するUltralytics Platformの全機能を活用したいと考えています。
Ultralyticsモデルの堅牢なエコシステムを活用することで、開発者はエンジニアリングにかかる時間を大幅に削減しながら、実際のアプリケーションで最高水準の予測性能を確保できます。