YOLOv10とDAMO-YOLOの比較#
最新のコンピュータービジョンパイプラインを構築する際、適切なリアルタイム物体検出アーキテクチャの選択は重要です。この包括的な技術分析では、YOLOv10とDAMO-YOLOのアーキテクチャ、パフォーマンス指標、理想的な用途を解説します。どちらも物体検出機能を大きく進歩させるモデルですが、目標を達成するために異なるアーキテクチャの手法を採用しています。
プロジェクトで制約のあるエッジAIハードウェアへのデプロイが必要な場合も、クラウドGPUで最高精度を求める場合も、各アーキテクチャの特性を理解することで、適切な判断を下せます。
YOLOv10の概要#
清華大学の研究者によって発表されたYOLOv10は、ネイティブなエンドツーエンドの手法を導入し、後処理での非最大値抑制(NMS)を事実上不要にすることで、YOLOファミリーに革新をもたらしました。
YOLOv10の詳細:
- 著者: Ao Wang、Hui Chen、Lihao Liuほか
- 組織: 清華大学
- 日付: 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub: https://github.com/THU-MIG/yolov10
- ドキュメント: https://docs.ultralytics.com/models/yolov10
主なアーキテクチャ上の特徴#
YOLOv10の主なイノベーションは、NMSフリートレーニングを実現する一貫性のあるデュアルアサインメント戦略です。従来の物体検出モデルでは、重複するバウンディングボックスのフィルタリングにNMSを多用するため、予測不能なレイテンシが生じます。これは自動運転車や高速ロボティクスなど、リアルタイムアプリケーションにおける大きなボトルネックです。物体ごとに最適なバウンディングボックスを1つ直接予測することで、YOLOv10は予測可能で非常に低レイテンシな推論を実現します。
さらに、このモデルは効率と精度を総合的に重視した設計を採用しています。軽量な分類ヘッドや、空間・チャネル分離型のダウンサンプリングなど、さまざまなコンポーネントを最適化することで、計算の重複を大幅に削減します。その結果、パラメーター数とFLOPsを抑えながら、競争力のある平均適合率(mAP)を維持するアーキテクチャを実現しています。
使用例#
YOLOv10はUltralyticsエコシステムに深く統合されており、Ultralytics Pythonパッケージを使って簡単に利用できます。
from ultralytics import YOLO
# 事前学習済みのYOLOv10 nanoモデルを読み込みます
model = YOLO("yolov10n.pt")
# COCO8データセットでモデルをトレーニングします
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# テスト画像に対して推論を実行します
results = model("https://ultralytics.com/images/bus.jpg")
# モデルをTensorRT形式にエクスポートします
model.export(format="engine", quantize=16)DAMO-YOLOの概要#
Alibaba Groupが開発したDAMO-YOLOは、自動ニューラルアーキテクチャ探索(NAS)によって高効率なネットワーク構造の発見に取り組み、速度と精度のパレートフロンティアの向上を目指しています。
DAMO-YOLOの詳細:
- 著者: 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
主なアーキテクチャ上の特徴#
DAMO-YOLOは、産業用途に合わせた複数の新しい技術を導入しています。モデルの基盤は、最大エントロピーに基づく探索で生成されたMAE-NASバックボーンです。この自動化プロセスでは、あらかじめ定められた計算予算を厳守するバックボーン構造を見つけ、精度と推論レイテンシのバランスを取ります。
さらに、このアーキテクチャではEfficient RepGFPNネックを使用しています。この特徴ピラミッドネットワークは、異なるスケール間の特徴融合を改善するよう設計されています。物体のサイズが大きく異なる航空画像解析などの複雑なタスクでは、特に重要な機能です。また、DAMO-YOLOは、最終予測層の複雑さを大幅に減らすシンプルな検出ヘッドであるZeroHeadを採用し、推論時の貴重な計算時間を節約します。
パフォーマンス比較#
物体検出アーキテクチャの評価では、推論速度、パラメーター効率、検出精度の適切なトレードオフを見つけることが重要です。次の表では、それぞれのモデルサイズでYOLOv10とDAMO-YOLOのパフォーマンスを比較します。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | パラメーター (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 38.5 | - | 1.84 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.3 | - | 2.49 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.1 | - | 4.74 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.5 | - | 5.74 | 19.1 | 92.0 |
| YOLOv10l | 640 | 53.2 | - | 7.28 | 24.4 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 10.70 | 29.5 | 160.4 |
| 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 |
ベンチマークからわかるように、YOLOv10は特にnanoモデルでTensorRT上の優れたレイテンシを一貫して実現し、同程度のDAMO-YOLOモデルよりパラメーター数とFLOPsが大幅に少なくなっています。DAMO-YOLOはtinyモデルで高いmAPを示しますが、YOLOv10ファミリーはパラメーター効率と推論レイテンシで優位に立ち、制約のあるデプロイ環境に適しています。
ユースケースと推奨事項#
YOLOv10とDAMO-YOLOのどちらを選ぶかは、プロジェクト固有の要件、デプロイの制約、エコシステムへの好みによって異なります。
YOLOv10を選ぶ場合#
YOLOv10は、次の用途に適しています:
- NMSを使用しないリアルタイム検出: 非最大抑制を使用しないエンドツーエンド検出によって、デプロイを簡素化できるアプリケーション。
- 速度と精度のバランス: さまざまなモデルスケールで、推論速度と検出精度の優れたバランスが必要なプロジェクト。
- レイテンシーが安定している必要のあるアプリケーション: ロボティクスや自律システムなど、予測可能な推論時間が重要なデプロイシナリオ。
DAMO-YOLOを選ぶケース#
DAMO-YOLOは、次の用途に適しています。
- 高スループットの動画分析: バッチサイズ1でのスループットが主要な指標となる、固定のNVIDIA GPUインフラストラクチャ上で高FPSの動画ストリームを処理する用途。
- 産業用製造ライン: 組み立てラインでのリアルタイム品質検査など、専用ハードウェア上でGPUレイテンシに厳しい制約があるシナリオ。
- ニューラルアーキテクチャ探索の研究: 自動アーキテクチャ探索 (MAE-NAS) と、効率的に再パラメーター化されたバックボーンが検出性能に与える影響を研究する用途。
Ultralytics (YOLO26)を選ぶ場合#
多くの新規プロジェクトにおいて、Ultralytics YOLO26はパフォーマンスと開発者体験を最適なバランスで提供します。
- NMSを使用しないエッジデプロイ: 非最大抑制の後処理を複雑化させずに、安定した低レイテンシー推論を必要とするアプリケーション。
- CPUのみの環境: 専用のGPUアクセラレーションを備えていないデバイスで、YOLO26の最大43%高速なCPU推論が大きな優位性を発揮します。
- 小物体検出: ドローンによる航空画像やIoTセンサーの分析など、ProgLossとSTALによって小さな物体の精度が大幅に向上する難しいシナリオ。
Ultralyticsの強み#
どちらのモデルも技術的に優れていますが、本番環境向けのアーキテクチャを選ぶ際は、生の指標だけでなく幅広い観点が必要です。Ultralyticsエコシステムでネイティブにサポートされるモデルを使うことで、開発者と研究者の双方が比類のない利点を得られます。
使いやすさと充実したエコシステム#
放置されることも多い単独の学術リポジトリとは異なり、Ultralyticsは堅牢で、継続的にメンテナンスされるエコシステムを提供します。NASパイプラインに大きく依存するモデルでは、複雑な環境のセットアップが難しい場合があります。一方、Ultralyticsでは標準化された直感的なPython APIと高性能なCLIを、充実したドキュメントとともに提供しています。これにより、カスタムビジョンソリューションの市場投入までの時間を大幅に短縮できます。
トレーニング効率とメモリ要件#
大規模モデルのトレーニングは、すぐに計算コストが高くなる場合があります。Ultralytics YOLOアーキテクチャは、トレーニング時と推論時のCUDAメモリ使用量が少ないことで、従来から知られています。この効率性により、開発者はコンシューマー向けハードウェアやコスト効率の高いクラウドインスタンスでモデルをトレーニングでき、RT-DETRのようなTransformerベースのモデルでよく発生するメモリ不足エラーを避けられます。
Ultralyticsは主要なMLOpsツールとネイティブに統合されています。Weights & Biases、Comet、ClearMLとの連携を利用すれば、追加の定型コードを記述せずにモデルのトレーニング状況を簡単に追跡できます。
さまざまなタスクに対応する汎用性#
多くの検出特化モデルは、用途が限定されるという大きな制約があります。Ultralyticsエコシステムでは、物体検出だけにとどまりません。ツールは、インスタンスセグメンテーション、画像分類、姿勢推定、方向付きバウンディングボックス(OBB)検出など、さまざまなコンピュータービジョンタスクにシームレスに対応します。
今後の展望:YOLO26の進化#
YOLOv10はNMSフリー推論を先駆けて実現し、DAMO-YOLOはNASの可能性を示しましたが、コンピュータービジョンの分野は急速に進化しています。最先端のソリューションを求める開発者には、Ultralytics YOLO26をおすすめします。
YOLO11の後継モデルとしてリリースされたYOLO26は、YOLOv10が確立したNMSフリーの基盤を引き継ぎ、さらに大きく発展させています。
YOLO26の主な進歩は次のとおりです。
- CPU推論を最大43%高速化: エッジコンピューティングと低消費電力デバイス向けに特化して最適化されています。
- DFLの削除: Distribution Focal Lossを削除し、エクスポートを簡素化するとともに、さまざまなデプロイ先との互換性を高めています。
- MuSGD Optimizer: SGDとMuonのハイブリッドで、高度なLLMトレーニングの安定性と高速な収束をコンピュータービジョンに取り入れています。
- ProgLoss + STAL: 損失関数を大幅に改善し、小さな物体の認識を大きく向上させています。これは農業やリモートセンシングなどの用途に不可欠です。
刷新されたUltralytics Platformを活用すると、開発者はYOLO26などの次世代モデルに数回クリックするだけでアノテーション、トレーニング、デプロイをシームレスに行えます。コンピュータービジョンのパイプラインを最先端かつ将来にわたって活用できる状態に保てます。