YOLOv9とDAMO-YOLO#
コンピュータービジョンの急速な進化により、さまざまなデプロイ制約や精度要件に合わせて多くのアーキテクチャが開発されてきました。注目すべきモデルとして、ディープネットワークの情報ボトルネックへの対処で知られるYOLOv9と、ニューラルアーキテクチャ探索 (NAS)および効率的な特徴ピラミッドを活用するDAMO-YOLOがあります。
このガイドでは、YOLOv9とDAMO-YOLOを技術的に比較し、アーキテクチャの違い、学習手法、理想的なデプロイシナリオを解説します。また、Ultralyticsエコシステムが開発から本番環境への移行をどのように簡素化するか、そして新しいプロジェクトでYOLO26などの新モデルが推奨されている理由も取り上げます。
アーキテクチャの詳細#
各モデルを支える中核的な仕組みを理解すると、さまざまな指標で性能に差が生じる理由がわかります。
YOLOv9:プログラム可能な勾配情報#
YOLOv9は、データが深層ニューラルネットワークを流れる際に生じる情報損失に直接対処するよう設計されています。
- 著者: Chien-Yao Wang、Hong-Yuan Mark Liao
- 所属機関: 台湾、中央研究院情報科学研究所
- 日付: 2024年2月21日
- リンク: arXiv、GitHub、ドキュメント
YOLOv9はプログラマブル勾配情報(PGI)と汎用効率的レイヤー集約ネットワーク(GELAN)を導入しています。PGIはフィードフォワード処理中に重要な空間情報と意味情報を保持し、重み更新に使われる勾配の劣化を防ぎます。GELANはこれを補完し、パラメーター効率を最大化することで、多くの従来型CNNよりも少ないFLOPsで最先端の平均適合率(mAP)を実現します。
DAMO-YOLO:NAS主導の効率性#
Alibaba Groupが開発したDAMO-YOLOは異なるアプローチを採用し、自動アーキテクチャ探索によって速度と精度の効率的なバランスを見つけます。
- 著者: Xianzhe Xu、Yiqi Jiang、Weihua Chen、Yilun Huang、Yuan Zhang、Xiuyu Sun
- 組織: Alibaba Group
- 日付: 2022年11月23日
- リンク: arXiv、GitHub
DAMO-YOLOはMAE-NAS(最大エントロピー・ニューラルアーキテクチャ探索)バックボーンを用いて、効率的なネットワーク構造を自動生成します。堅牢な特徴融合にはRepGFPN(再パラメーター化汎用特徴ピラミッドネットワーク)を使用し、検出ヘッドの計算負荷を抑える「ZeroHead」設計を採用しています。さらに、ラベル割り当てにAlignedOTAを使用し、知識蒸留によって小型バリアントの性能を高めています。
ニューラルアーキテクチャ探索 (NAS)は人工ニューラルネットワークの設計を自動化します。DAMO-YOLOのような効率的なモデルを生成できますが、モデル設計に探索段階が加わります(DAMO-YOLOは学習不要のMAE-NAS探索を使用します)。これはYOLOv9の手動設計アーキテクチャとは対照的です。
パフォーマンスと指標の比較#
物体検出モデルを選ぶ際には、精度、速度、計算リソースのバランスが重要です。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.2 | 26.7 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.1 | 76.8 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.5 | 102.8 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 58.1 | 192.5 |
| 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 |
分析#
- 精度とパラメーター数: YOLOv9は一般に、パラメーター数に対する精度の比率が優れています。たとえば、YOLOv9cは25.5MのパラメーターでmAP 53.0%を達成します。一方、DAMO-YOLOlはmAP 50.8%にとどまりながら、はるかに多い42.1Mのパラメーターを必要とします。
- 推論速度: DAMO-YOLOのアーキテクチャはT4 GPU上でTensorRTによる競争力のある推論速度を実現し、中規模モデルではYOLOv9をわずかに上回ります。ただし、ほとんどのサイズでYOLOv9のパラメーター数が少ないため、GPUメモリの使用量を抑えられます。
- メモリ要件: YOLOv9を含むUltralytics YOLOモデルは、通常、複雑なNAS生成モデルや大規模なTransformerアーキテクチャよりも学習時と推論時のメモリ使用量が少なく、リソースに制約のあるエッジハードウェアへのデプロイに適しています。
Ultralyticsエコシステムの利点#
理論上の指標も重要ですが、プロジェクトの成否は実装によって決まることがよくあります。Ultralytics Platformと幅広いUltralyticsソフトウェアエコシステムは、DAMO-YOLOのような単独リポジトリと比べて明確な利点を提供します。
使いやすさとトレーニング効率#
カスタムYOLOv9モデルの学習では、定型コードはほとんど必要ありません。Ultralytics Python APIが、データ拡張、分散学習、ハードウェア最適化などの複雑な処理を担います。
from ultralytics import YOLO
# 事前学習済みのYOLOv9モデルを読み込みます
model = YOLO("yolov9c.pt")
# カスタムデータセットでモデルをトレーニングします
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# モデルのパフォーマンスを検証します
metrics = model.val()
# 本番環境へのデプロイ用にエクスポートします
model.export(format="onnx")一方、DAMO-YOLOを使用する場合は、多くの場合、固有の学習パイプラインに特化した厳格な設定ファイルや複雑な依存関係を扱う必要があり、習得のハードルが高くなります。
さまざまなタスクに対応する汎用性#
Ultralyticsモデルの特徴は汎用性です。標準的なバウンディングボックス検出に加え、Ultralyticsフレームワークはインスタンスセグメンテーション、画像分類、姿勢推定、回転バウンディングボックス (OBB)検出などのタスクをサポートします。DAMO-YOLOは2D物体検出に特化して最適化されており、ほかの視覚タスクに対応するには大幅な再設計が必要です。
Ultralyticsは、モデルのエクスポートをワンコマンドで実行できるようにしてデプロイパイプラインを簡素化します。TensorRT、OpenVINO、CoreMLなどの形式にエクスポートし、対象ハードウェアでのパフォーマンスを最適化できます。
ユースケースと推奨事項#
YOLOv9とDAMO-YOLOのどちらを選ぶかは、プロジェクト固有の要件、デプロイ上の制約、エコシステムに対する好みによって異なります。
YOLOv9を選ぶ場合#
YOLOv9が適している用途:
- 情報ボトルネックの研究: プログラム可能な勾配情報(PGI)や一般化効率的層集約ネットワーク(GELAN)のアーキテクチャを研究する学術プロジェクト。
- 勾配フロー最適化の研究: 学習中の深層ネットワーク層における情報損失の理解と抑制に焦点を当てた研究。
- 高精度検出のベンチマーク: アーキテクチャの比較において、YOLOv9の優れたCOCOベンチマーク性能を基準として必要とするシナリオ。
DAMO-YOLOを選ぶケース#
DAMO-YOLOは、次の用途に適しています。
- 高スループットの動画分析: バッチサイズ1でのスループットが主要な指標となる、固定のNVIDIA GPUインフラストラクチャ上で高FPSの動画ストリームを処理する用途。
- 産業用製造ライン: 組み立てラインでのリアルタイム品質検査など、専用ハードウェア上でGPUレイテンシに厳しい制約があるシナリオ。
- ニューラルアーキテクチャ探索の研究: 自動アーキテクチャ探索 (MAE-NAS) と、効率的に再パラメーター化されたバックボーンが検出性能に与える影響を研究する用途。
Ultralytics (YOLO26)を選ぶ場合#
ほとんどの新規プロジェクトでは、Ultralytics YOLO26が性能と開発者体験の最適な組み合わせを提供します。
- NMSフリーのエッジデプロイ: Non-Maximum Suppression(NMS)の後処理を複雑にすることなく、安定した低レイテンシ推論を必要とするアプリケーション。
- CPU-Only Environments: 専用GPUアクセラレーションを備えていないデバイスでは、YOLO26の最大43%高速なCPU推論(YOLO26n対YOLO11n)が大きな優位性をもたらします。
- 小物体検出: ドローンによる空撮画像やIoTセンサー分析などの難しいシナリオでは、ProgLossとSTALが小さな物体の精度を向上させます。
次世代への展望:YOLO26への移行#
YOLOv9とDAMO-YOLOは重要な節目となるモデルですが、現代のコンピュータービジョンはネイティブなエンドツーエンドアーキテクチャへと移行しています。新規開発には、YOLO26を推奨します。
2026年1月にリリースされたYOLO26は、先行モデルを基盤とし、精度とデプロイのシンプルさの両方を向上させています。
YOLO26の主な革新点#
- エンドツーエンドのNMSフリーデザイン: YOLO26のオプションのone-to-oneヘッド(
nms=False)は、Non-Maximum Suppression(NMS)の後処理を完全になくします。これにより、ネイティブなエンドツーエンドの効率的なデプロイパイプラインを実現します。この手法はYOLOv10がYOLOモデルに導入しました。 - DFLの削除: Distribution Focal Lossを削除することで、エクスポートを簡素化し、エッジデバイスや低消費電力デバイスとの互換性を高めています。
- CPU推論が最大43%高速: DFLとNMSを取り除いたYOLO26nは、CPU上でYOLO11nより最大43%高速に動作し、専用GPUのないエッジコンピューティング環境に適しています。
- MuSGDオプティマイザー: LLMの学習における技術革新に着想を得たYOLO26は、SGDとMuonのハイブリッド (MuSGD) を使用し、学習をより安定させ、収束を高速化します。
- ProgLoss + STAL: Progressive Loss and Small-Target-Aware Label Assignment (STAL)は小さな物体の検出を改善し、YOLO26を高高度の航空画像やIoTデバイスに適したモデルにします。
次のプロジェクトでYOLO11またはYOLOv8を検討している場合は、現在Ultralyticsが推奨するモデルであるYOLO26もご検討ください。
概要#
適切なモデルは、運用上の制約に応じて異なります。
- DAMO-YOLOはNAS主導の最適化について有益な知見をもたらし、RepGFPNアーキテクチャの強みを発揮できる特定のハードウェア構成で、競争力のある速度を実現します。
- YOLOv9は、細かな視覚情報の保持に注力する研究者に最適です。PGIアーキテクチャにより、ディープネットワーク内での情報損失を防ぎます。
- Ultralytics YOLO26は、新しいエンタープライズおよび研究用途に推奨されるモデルです。使いやすさ、NMSフリーアーキテクチャ、MuSGDによる学習最適化を備え、信頼性と精度に優れ、デプロイも容易です。