コンテンツにスキップ

YOLOv10 vs DAMO-YOLO:技術的な比較

最適な物体検出モデルを選択することは、精度、速度、計算コストのトレードオフのバランスをとる重要な決定です。このページでは YOLOv10Ultralytics エコシステムに統合された最新の高効率モデルであるYOLOv10と、アリババグループの強力な検出器であるYOLO-YOLOの詳細な技術比較を行います。それぞれのアーキテクチャ、性能指標、理想的なユースケースを分析し、コンピュータビジョンプロジェクトのための十分な情報に基づいた選択をお手伝いします。

YOLOv10: エンド・ツー・エンドのリアルタイム検出

清華大学の研究者が2024年5月に発表したYOLOv10、リアルタイムの物体検出を大きく前進させた。その主な革新点は、NMS(Non-Maximum Suppression)の必要性を排除することでエンドツーエンドの検出を実現することで、後処理のオーバーヘッドを削減し、推論の待ち時間を短縮する。

技術的詳細
著者:AoWangAo Wang, Hui Chen, Lihao Liu, et al.
所属機関:清華大学
Date:2024-05-23
Arxiv:https://arxiv.org/abs/2405.14458
GitHub:https://github.com/THU-MIG/yolov10
Docsultralytics

アーキテクチャと主な機能

YOLOv10 、堅牢なUltralytics フレームワークの上に構築され、その使いやすさと強力なエコシステムを継承しています。そのアーキテクチャは、優れた効率性とパフォーマンスを実現するために、いくつかの重要な進歩を導入しています:

  • NMSトレーニング: YOLOv10 、トレーニング中のラベルに一貫したデュアル割り当てを採用しています。これにより、モデルはNMS 後処理ステップを必要とせず、クリーンな予測を生成することができ、展開パイプラインを簡素化し、真のエンドツーエンドを実現します。
  • 全体的な効率と精度の設計: モデルアーキテクチャは、計算の冗長性を低減するために包括的に最適化されました。これには、軽量な分類ヘッドと空間チャネル分離ダウンサンプリングが含まれており、速度と能力の両方を向上させます。
  • シームレスなUltralytics 統合: Ultralytics エコシステムの一部として、YOLOv10 合理化されたユーザーエクスペリエンスの恩恵を受けています。これには、シンプルなPython API、豊富なドキュメント、効率的な学習プロセス、すぐに利用できる事前学習済みの重みなどが含まれます。この統合により、開発者は非常に簡単にモデルを開始し、迅速に展開することができます。

なぜNMS重要なのか

従来のオブジェクト検出器では、1つのオブジェクトに対して複数のバウンディングボックスを予測することがよくあります。非最大抑制NMS)は、これらの重複をフィルタリングするために使用される後処理ステップです。NMS排除することで、YOLOv10 推論のレイテンシーと複雑さを大幅に削減し、特にミリ秒単位が重要なエッジ展開のシナリオで威力を発揮します。

YOLOv10もっと知る

DAMO-YOLO:NAS主導の効率化

DAMO-YOLO 、アリババ・グループが開発した高速かつ高精度な物体検出モデルである。2022年11月にリリースされたこのモデルは、YOLO検出器の性能限界を押し広げるためにいくつかの新しい技術を導入し、探索アルゴリズムによるアーキテクチャの最適化に重点を置いている。

技術詳細
著者:Xianzhe Xu, Yiqi Jiang, Weihua Chen,et alXianzhe Xu, Yiqi Jiang, Weihua Chen, et al.
Organization:Alibaba Group
Date:2022-11-23
Arxiv:https://arxiv.org/abs/2211.15444
GitHubYOLO
DocsYOLO

アーキテクチャと主な機能

DAMO-YOLO 、スピードと精度のトレードオフを改善する高度な技術を探求している。そのアーキテクチャの特徴は

  • ニューラル・アーキテクチャ・サーチ(NAS):DAMO-YOLO バックボーンはNASを使用して生成され、検出タスクに特化した高度に最適化された特徴抽出ネットワークを可能にした。
  • 効率的なRepGFPNネック:異なるスケールからの特徴を効率的に融合するRepGFPNと呼ばれる新しい特徴ピラミッドネットワーク(FPN)設計を組み込んでいる。
  • ZeroHeadとAlignedOTA:このモデルでは、簡略化されたゼロパラメータ・ヘッドと、AlignedOTA(Aligned Optimal Transport Assignment)と呼ばれる改良されたラベル割り当てストラテジーを使用し、検出精度とローカライゼーションを向上させている。
  • 知識の蒸留:DAMO-YOLO 知識蒸留を活用し、より大きな教師ネットワークから学習することで、より小さなモデルのパフォーマンスをさらに向上させます。

DAMO-YOLOの詳細

性能直接対決

以下の表は、COCO データセットにおける様々なYOLOv10 およびDAMO-YOLO モデルサイズの性能を比較したものである。YOLOv10 一貫して優れた性能を示し、より低いレイテンシとより少ないパラメータでより高い精度を提供しています。

モデルサイズ
(ピクセル)
mAP
50-95
速度
CPU ONNX
(ms)
速度
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
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-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

データからわかるように、YOLOv10 モデルはYOLO -YOLOモデルよりも概して効率性が高い。例えば、YOLOv10より高い mAP(46.7対46.0)を達成する一方で、DAMO-YOLOYOLOSより大幅に速く(2.66ms対3.45ms)、パラメータは半分以下(7.2M対16.3M)です。この傾向は、すべてのモデルサイズで見られ、YOLOv1054.4という最高のmAP 達しました。

強みと弱みの分析

YOLOv10 強み

  • 最先端の効率性: YOLOv10 、スピードと精度の卓越したバランスを実現し、より少ないパラメーターとより低いレイテンシーで競合他社を凌駕することがよくあります。
  • 使いやすさ: Ultralytics エコシステムとの統合により、このモデルは驚くほど使いやすい。
  • エンド・ツー・エンドの展開: NMS設計により、トレーニングから推論までのワークフロー全体が簡素化され、エッジデバイスでの実際のアプリケーションに最適です。
  • より低いメモリ要件:より複雑なアーキテクチャと比較して、YOLOv10 学習時と推論時のメモリ使用量が効率的である。

DAMO-YOLO 強み

  • 高いパフォーマンス: DAMO-YOLOは、競争力のある精度と速度を実現し、物体検出分野で有力な候補となっています。
  • 革新的なテクノロジー:NASや高度なラベル割り当て戦略のような最先端の研究コンセプトが組み込まれており、学術的な探求に価値がある。

弱点

  • YOLOv10: YOLOv10 物体検出に優れているが、多目的に使用できるUltralticsとは異なり、現在のところこのタスクに特化している。 Ultralytics YOLO11は、セグメンテーション、分類、ポーズ推定をすぐにサポートする。
  • DAMO-YOLO:モデルのアーキテクチャとトレーニングパイプラインは、YOLOv10比較してより複雑である。 主に特定のリサーチツールボックス内で利用可能であるため、Ultralytics提供するような、より統合されたユーザーフレンドリーなソリューションを好む開発者にとっては障壁となる可能性がある。

Ultralytics 優位性

どちらのモデルも印象的だが、YOLOv10 ようなUltralytics モデルや、フラッグシップモデルの YOLO11のようなウルトラリティクスのモデルは、開発者や研究者にとって明確な利点がある:

  1. 統一されたエコシステム: Ultralytics 、データのアノテーション、トレーニング、デプロイがシームレスに行われる統合プラットフォームを提供します。
  2. 使いやすさ:シンプルなPython APIにより、わずか数行のコードでモデルをロードし、推論を実行することができます。
  3. 汎用性: Ultralytics 、インスタンスのセグメンテーション画像分類ポーズ推定OBB(Oriented Bounding Boxes)など、幅広いタスクをサポートしています。
  4. コミュニティによるサポート:活気あるコミュニティと広範なドキュメントにより、問題に長く立ち往生することはありません。

使用例YOLOv10 Ultralytics

YOLOv10 実行は、Ultralytics Python パッケージを使えば簡単です。ここでは、事前にトレーニングされたモデルをロードし、画像に対して予測を実行する方法を説明します:

from ultralytics import YOLO

# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")

# Perform object detection on an image
results = model("path/to/image.jpg")

# Display the results
results[0].show()

結論

YOLOv10 YOLO -YOLOは、どちらも手ごわい物体検出モデルである。YOLO -YOLOは、NASベースのアーキテクチャと高度な特徴フュージョンに関する研究の優れた参考資料となる。しかし、実用的なデプロイメントとMLOpsの効率性を考えると、DAMO-YOLOの方が優れている、 YOLOv10が優れている。そのNMSアーキテクチャと包括的なUltralytics エコシステムを組み合わせることで、コンセプトからプロダクションへの移行をより速く、より良いパフォーマンスで行うことができます。

複数の視覚作業において、より高い汎用性を必要とするユーザーには、ぜひとも以下をお勧めします。 YOLO11は、YOLO ファミリーの現在の最先端技術を定義しています。

その他のモデル比較

これらのモデルが他の主要なアーキテクチャーに対してどのような位置づけにあるかについては、以下の比較をご覧いただきたい:


コメント