Ultralytics YOLO27:

DAMO-YOLO vs YOLOv10#

コンピュータービジョンの分野では、リアルタイム物体検出アーキテクチャが急速に進化しています。DAMO-YOLOYOLOv10を比較すると、モデル設計における2つの異なる思想、すなわち自動アーキテクチャ探索とエンドツーエンドのNMSフリー最適化が見えてきます。どちらも精度と速度の限界を押し広げていますが、その基盤となる構造と理想的な用途は大きく異なります。

DAMO-YOLO: 大規模なニューラルアーキテクチャサーチ#

Alibaba Groupによって開発されたDAMO-YOLOは、自動探索を活用して構造効率を高めることに重点を置いた強力な検出器として登場しました。

  • 著者: Xianzhe Xu、Yiqi Jiang、Weihua Chen、Yilun Huang、Yuan Zhang、Xiuyu Sun
  • 日付: 2022年11月23日
  • Arxiv: 2211.15444v2
  • GitHub: tinyvision/DAMO-YOLO

アーキテクチャの主な特徴#

DAMO-YOLOは、パフォーマンスとレイテンシーのバランスを取るために、ニューラルアーキテクチャサーチ(NAS)に強く依存しています。MAE-NASと呼ばれるバックボーンは、厳格な計算予算のもとで最大エントロピー誘導型探索を使用し、最適な層の深度と幅を見つけます。

スケール間の特徴量融合に対応するため、このモデルは効率的なRepGFPN(再パラメーター化汎用特徴ピラミッドネットワーク)を採用しています。このヘビーネック設計は、複雑な空間階層の抽出に特に優れており、航空画像解析などのシナリオで役立ちます。さらに、DAMO-YOLOはZeroHeadを導入しています。これは最終予測レイヤーの複雑さを大幅に削減した簡素化された検出ヘッドで、トレーニング中は堅牢な蒸留強化プロセスに依存します。

蒸留トレーニング

DAMO-YOLOでは、多段階の知識蒸留プロセスが頻繁に使用されます。より重い「teacher」モデルをトレーニングして、より小型の「student」モデルを導く必要があります。これにより、より高いmAP(平均適合率)を抽出できますが、必要なGPU計算時間は大幅に増加します。

DAMO-YOLOの詳細を見る

YOLOv10:エンドツーエンド物体検出の先駆け#

その1年半後にリリースされたYOLOv10は、推論時の非最大抑制 (NMS) を完全に不要にすることで、パラダイムシフトをもたらしました。

アーキテクチャの主な特徴#

YOLOv10の際立った特徴は、NMSフリートレーニングを実現する一貫したデュアル割り当てです。従来の検出器は、1つの物体に対して重複する複数のバウンディングボックスを予測するため、重複を除去するNMSが必要です。この後処理ステップは、特にエッジデバイス上でボトルネックになります。YOLOv10は、モデルが物体ごとに単一かつ正確なバウンディングボックスを自然に予測できるようにすることで、この問題を解決します。

著者らは、効率と精度を総合的に考慮したモデル設計にも注力しました。既存アーキテクチャにおける計算の冗長性を慎重に分析し、バックボーンとヘッドを最適化してFLOPsとパラメーター数を削減しました。この軽量設計により、YOLOv10はTensorRTOpenVINOなどの形式にエクスポートした場合でも、優れた推論レイテンシを実現します。

YOLOv10の詳細について学ぶ

パフォーマンスとベンチマーク#

以下の表は、COCOデータセットにおける未加工の性能指標を示しています。各列の総合的に最良の値は太字で強調表示されています。

モデルサイズ
(ピクセル)
mAPval
50-95
速度
CPU ONNX
(ms)
速度
T4 TensorRT10
(ms)
パラメーター数
(M)
FLOPs
(B)
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4

DAMO-YOLOは精度の面で健闘していますが、YOLOv10は一貫して低いレイテンシと大幅に小さいモデルウェイトを実現します。たとえば、YOLOv10sは、DAMO-YOLOsの46.0%をわずかに上回る46.7%のmAPを、パラメーター数を半分未満(7.2M対16.3M)に抑えながら達成します。必要なメモリが少ないため、YOLOv10は組み込みシステム向けの非常に汎用性の高い選択肢となります。

トレーニングの効率と使いやすさ#

学術研究からプロダクション環境へ移行する際、使いやすさは極めて重要です。DAMO-YOLOの多段階蒸留プロセスと複雑なNAS設定は、エンジニアリングチームにとって険しい学習曲線となる可能性があります。

一方、YOLOv10はUltralytics Python SDKに完全統合されていることで、大きなメリットを得ています。カスタムモデルのトレーニングに必要なボイラープレートコードは最小限です。Ultralyticsは、データ拡張ハイパーパラメーター調整実験トラッキングを自動的に処理します。

from ultralytics import YOLO

# Load a pretrained YOLOv10 nano model
model = YOLO("yolov10n.pt")

# Train on a custom dataset with built-in validation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image seamlessly
prediction = model("path/to/image.jpg")
prediction[0].show()
高速プロトタイピング

Ultralyticsエコシステムを使用すると、開発者はわずか数行のコードで、プロトタイプから完全にエクスポートされたONNXモデルへ移行できます。これにより、古いフレームワークで必要とされていた複雑な環境構築を回避できます。

実世界でのユースケース#

  • スマートリテール(DAMO-YOLO): DAMO-YOLOの精度は、GPUが豊富に利用でき、リアルタイムNMSのボトルネックにも対応できる、高密度サーバー環境での顧客行動分析に適しています。
  • 自動運転車(YOLOv10): NMSフリーアーキテクチャは、決定論的で予測可能なレイテンシを保証します。これは、自動運転における安全システムに不可欠です。
  • 産業オートメーション(YOLOv10): 高速で移動する組立ライン上の欠陥検出には、膨大なVRAMを消費せずにリアルタイム推論速度を最大化するモデルが必要です。そのため、YOLOv10はエッジデプロイメントの有力な候補となります。

ユースケースと推奨事項#

DAMO-YOLOとYOLOv10のどちらを選ぶかは、具体的なプロジェクト要件、デプロイメント上の制約、エコシステムの好みによって決まります。

DAMO-YOLOを選択する場合#

DAMO-YOLOが適しているのは、次のような場合です。

  • 高スループットの動画分析: バッチサイズ1のスループットが主要な指標となる、固定されたNVIDIA GPUインフラストラクチャ上での高FPS動画ストリーム処理。
  • 産業用製造ライン: 組立ラインでのリアルタイム品質検査など、専用ハードウェア上でGPUレイテンシに厳しい制約があるシナリオ。
  • ニューラルアーキテクチャサーチ研究: 自動アーキテクチャ探索(MAE-NAS)と、効率的に再パラメーター化されたバックボーンが検出性能に与える影響の研究。

YOLOv10を選択する場合#

YOLOv10は次の用途に推奨されます。

  • NMSフリーのリアルタイム検出: Non-Maximum Suppressionを使用しないエンドツーエンド検出のメリットを活かし、デプロイの複雑さを軽減できるアプリケーション。
  • 速度と精度のバランスの取れたトレードオフ: さまざまなモデルスケールで、推論速度と検出精度の優れたバランスが求められるプロジェクト。
  • レイテンシが一貫したアプリケーション: ロボティクスや自律システムなど、予測可能な推論時間が重要なデプロイシナリオ。

Ultralytics (YOLO26)を選ぶタイミング#

ほとんどの新規プロジェクトでは、Ultralytics YOLO26が性能と開発者エクスペリエンスの最適な組み合わせを提供します。

  • NMSフリーのエッジデプロイ: Non-Maximum Suppressionの後処理を複雑にすることなく、一貫した低レイテンシー推論が必要なアプリケーション。
  • CPUのみの環境: 専用GPUアクセラレーションを持たないデバイスで、YOLO26の最大43%高速なCPU推論が決定的な優位性となる場合。
  • 小さな物体の検出: aerial drone imageryやIoTセンサー分析など、ProgLossとSTALによって微小物体の精度が大幅に向上する難しいシナリオ。

次世代: Ultralytics YOLO26の登場#

YOLOv10がNMSフリー検出の基盤を築いた一方で、この技術は急速に進化しています。最新のアプリケーションでは、Ultralytics YOLO26モデルが卓越した性能と使いやすさを提供し、従来世代の長所を取り入れてプロダクション向けに洗練しています。

YOLO26はネイティブなエンドツーエンド設計を採用しており、エッジデバイス全体でのよりシンプルなデプロイメントパイプラインのためにNMS後処理を排除しています。さらに、分布焦点損失(DFL)の削除により、低電力エッジ AIハードウェアとの互換性が劇的に向上しました。

トレーニング面では、YOLO26が大規模言語モデル (LLM) のトレーニング手法に着想を得たハイブリッド型のMuSGD Optimizerを導入しています。これにより、より安定したトレーニングと高速な収束を実現します。ProgLoss + STAL損失関数と組み合わせることで、YOLO26は小物体認識において顕著な改善を示します。これは、野生動物保護ドローン運用にとって重要な機能です。

重要なのは、YOLO26が単なる物体検出器ではない点です。インスタンスセグメンテーション、Residual Log-Likelihood Estimation (RLE) を使用した姿勢推定回転バウンディングボックス (OBB)向けの専用角度損失をネイティブにサポートし、タスク固有の改善を全体にわたって提供します。従来モデルよりも最大43%高速なCPU推論を実現するため、アジャイルなエンジニアリングチームにとって決定的な選択肢です。

YOLO26モデルの集中管理、アノテーション、クラウドトレーニングには、Ultralytics Platformが直感的なインターフェースを提供し、コンピュータービジョンのライフサイクル全体を効率化します。

その他の最近の進展に関心がある開発者は、Ultralytics YOLO11や、異なるアーキテクチャソリューションが必要なシナリオ向けのTransformerベースのRT-DETRフレームワークも評価できます。

コメント