YOLO .YOLOv10:リアルタイム物体検出の進化を導く
リアルタイム物体検出の分野は、低遅延と高精度を追求する動きに牽引され、急速に進化を遂げてきた。この進化の過程における二つの重要なマイルストーンが、アリババグループが開発YOLOYOLOv10が挙げられる。YOLO 先進的なニューラルアーキテクチャ探索(NAS)YOLO 、YOLOv10 最大抑制(NMS)YOLOv10 デプロイメントパイプラインYOLOv10 本稿では両者の技術的アーキテクチャと性能指標を包括的に比較し、YOLO26のような最新のUltralytics 実稼働環境においてこれらの進歩の頂点を代表する理由を考察する。
パフォーマンス指標の比較
以下の表は主要な性能指標の直接比較を示しています。特にNMS設計NMS低遅延に寄与する点において、推論速度の違いに注目してください。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | params (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 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
YOLO:アーキテクチャと方法論
YOLO2022年11月にアリババグループの研究者によって提案された。最先端技術を統合した一貫性のある検出器フレームワークにより、性能の限界を押し広げることを目的とした。
- 著者: Xianzhe Xu、Yiqi Jiang、Weihua Chen、Yilun Huang、Yuan Zhang、Xiuyu Sun
- 組織: Alibaba Group
- 日付: 2022-11-23
- 論文:arXiv:2211.15444
- GitHub:tinyvision/DAMO-YOLO
主要なアーキテクチャ機能
YOLO ニューラルアーキテクチャ探索(NAS)の採用がYOLO 。手動設計されたバックボーンを持つモデルとは異なり、YOLO 特定制約下で最適なネットワーク構造を発見する手法認識効率型NAS(MAE-NAS)YOLO 。これにより、対象ハードウェア向けに極めて効率的なバックボーンが実現される。
さらに、特徴融合のための効率的なRepGFPN(再パラメータ化汎用特徴ピラミッドネットワーク)と「ZeroHead」と呼ばれる軽量ヘッドを組み込んでいる。 その学習戦略の重要な要素は、分類と回帰タスク間の整合性向上を実現する動的ラベル割り当てメカニズムであるAlignedOTAです。しかし、YOLO 最高の性能を達成するには、複雑な知識蒸留プロセスが必要YOLO 、学習中に重い教師モデルを必要とするため、「bag-of-freebies」アプローチと比較して計算負荷が大幅に増加する可能性があります。 YOLOv8で用いられる手法と比較して計算負荷を大幅に増加させる可能性がある。
学習の複雑さ
YOLO トレーニングパイプラインは強力である一方、リソースを大量に消費するYOLO 。蒸留フェーズでは、多くの場合、より大規模な教師モデルを先にトレーニングする必要があり、カスタムデータセットで迅速な反復が必要な開発者にとってワークフローが複雑化します。
YOLOv10:エンドツーエンドの画期的な進歩
清華大学により2024年5月にリリースされた、 YOLOv10 は、物体検出における長年のボトルネックの一つである非最大抑制(NMS)に対処することで、パラダイムシフトをもたらした。
- 著者: Ao Wang, Hui Chen, Lihao Liu, et al.
- 組織: 清華大学
- 日付: 2024-05-23
- 論文:arXiv:2405.14458
- GitHub:THU-MIG/yolov10
アーキテクチャの革新
YOLOv10 最大の特徴YOLOv10 エンドツーエンドNMS YOLOv10 。従来の検出器は冗長なバウンディングボックスを生成し、NMSによるフィルタリングが必要となる。この後処理ステップは遅延を生じさせ、展開を複雑化する。YOLOv10 学習時に一貫性のある二重割り当て YOLOv10 ——豊富な監督のための1対多マッチングと、エンドツーエンド推論のための1対1マッチングの両方YOLOv10 。これによりモデルはオブジェクトごとに単一の最適なバウンディングボックスを直接予測でき、NMS が不要となる。
さらに、YOLOv10 効率性と精度を重視した包括的なモデル設計YOLOv10 。これには軽量分類ヘッド、空間チャネル分離型ダウンサンプリング、ランクガイド型ブロック設計が含まれ、その結果、従来のモデル(例: YOLOv9 よりも小型かつ高速でありながら、競争力のある精度を維持しています。
Ultralyticsの利点:なぜYOLO26を選ぶのか?
YOLOv10 学術的に重要なYOLOv10 、Ultralytics 最先端の研究と実用的で信頼性の高い生産ソフトウェアの架け橋を提供します。新たにリリースされたYOLO26は YOLOv10 NMS画期的な成果を基盤YOLOv10 堅牢なエンタープライズグレードのフレームワークに統合しています。
優れた性能と効率性
新規プロジェクトにはYOLO26が推奨され、YOLO 純粋なYOLOv10 の両方に対して明確な利点を提供します:
- エンドツーエンドNMS: YOLOv10と同様に、YOLO26はネイティブにエンドツーエンドです。NMS 不要とし、これによりデプロイメントパイプラインが簡素化され、レイテンシ変動が大幅に低減されます。
- 強化された学習安定性:YOLO26は、大規模言語モデル(LLM)の学習に着想を得た、SGD ハイブリッドであるMuSGDオプティマイザーを採用しています。この革新により、学習時の収束速度が向上し安定性が向上し、トランスフォーマーを多用するアーキテクチャと比較してGPU 削減します。
- エッジ最適化:ディストリビューション焦点損失(DFL)を削除することで、YOLO26は出力層を合理化し、 CPU 最大43%高速化を実現します。GPU 利用できないエッジデバイスにおいて極めて重要です。
YOLO26 技術的飛躍
YOLO26は単なるバージョンアップではなく、包括的なアップグレードです。
使いやすさとエコシステム
YOLO のような研究リポジトリにおける主要な課題の一つは、設定と保守の複雑さYOLO 。Ultralytics 統一されたPython でこれをUltralytics 。 YOLO11、YOLOv10、YOLO26のいずれを使用する場合でも、ワークフローは一貫してシンプルです。
Ultralytics (旧称HUB)は、データセット管理、自動アノテーション、TensorRT、ONNX、Core CoreML などのフォーマットへのワンクリックエクスポートを実現するツールを提供することで、開発をさらに加速させます。
理想的なユースケース
適切なモデルの選択は、特定の制約条件によって異なります:
- YOLO :ニューラルアーキテクチャサーチ(NAS)の研究を行っているYOLO 、または標準的なCSP/ELANバックボーンでは不十分な独自のハードウェア制約に対応した特殊なバックボーン構造が必要な場合。
- YOLOv10 :学術的なベンチマーク用にNMS検出器が必要な場合、または清華大学の原論文で提案された特定のアーキテクチャに対するレガシー要件がある場合。
- Ultralytics を選択すべき場合:本番環境対応の最新鋭ソリューションが必要な場合。 NMS設計と、MuSGDトレーニングの安定性、最適化されたCPU 兼ね備え、最高のオールラウンダーです。特に、製造、小売分析、自律システムにおけるリアルタイムアプリケーションにおいて、導入の容易さと長期サポートが重要な場面で優れています。
コード例:YOLOv10 YOLO26 の実行
Ultralytics 、これらのアーキテクチャ間の切り替えが驚くほどUltralytics 。Ultralytics YOLOv10 、最小限のコード変更で両モデルをテストできます。
YOLOv10の実行
from ultralytics import YOLO
# Load a pre-trained YOLOv10 model
model = YOLO("yolov10n.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Show results
results[0].show()
YOLO26のトレーニング
MuSGDオプティマイザやProgLossといったYOLO26の最新技術を活用することで、カスタムデータセットでのトレーニングは容易です:
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# Train on a custom dataset using the new optimizer settings (auto-configured)
model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Export to ONNX for simplified edge deployment
model.export(format="onnx")
結論
YOLOv10 分野をYOLO 、YOLOv10 NMS YOLOv10 。しかし2026年に堅牢で将来性のあるアプリケーションを構築しようとする開発者にとって、Ultralytics 決定的な優位性を提供する。YOLOv10 NMSアーキテクチャYOLOv10 優れたトレーニングダイナミクス、高速なCPU 、そしてUltralytics 比類なきサポートYOLOv10 組み合わせたYOLO26は、コンピュータビジョン専門家にとって最高の選択肢として君臨している。
過去の安定版世代を探索したい方へ YOLO11 は完全サポートされ、高い性能を備えた代替選択肢として利用可能です。