YOLOv10 .YOLO:リアルタイム物体検出アーキテクチャの進化
コンピュータビジョンの急速に進化する分野において、遅延と精度の最適なバランスを追求する取り組みが絶え間ない革新を推進している。この道のりにおける二つの重要なマイルストーンは YOLOv10(NMS知られる)と、ニューラルアーキテクチャサーチ(NAS)を活用して効率性の限界をYOLO。本比較では、両者のアーキテクチャ上の差異、性能指標、そして現代のAIアプリケーションへの適合性を探る。
パフォーマンスメトリクス分析
以下の表は主要な性能指標の詳細な比較を示しています。 YOLOv10 は、特に大規模モデルにおいて、現代のGPU上でのパラメータ利用効率と推論速度において優れた性能を示しています。
| モデル | サイズ (ピクセル) | mAPval 50-95 | 速度 CPU ONNX (ms) | 速度 T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| 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: エンドツーエンドのパイオニア
清華大学の研究者らにより2024年5月に発表された YOLOv10 は、非最大抑制(NMS)の必要性を排除することでパラダイムシフトをもたらした。このアーキテクチャは、従来の検出器における後処理ステップによって引き起こされることが多い遅延のばらつきに対処するものである。
主要なアーキテクチャ機能
- NMS:一貫した二重アサインメントを用いたNMSにより、モデルがオブジェクトごとに単一のバウンディングボックスを直接予測できるようにします。これは自律走行車や産業用ロボットなど、予測可能なレイテンシーを必要とするアプリケーションにおいて極めて重要です。
- 包括的効率・精度設計:著者である王暁ら(Ao Wang et al.)は、計算上の冗長性を削減するため、バックボーンやヘッドを含む様々な構成要素を最適化した。
- 軽量分類ヘッド:アンカーフリー検出器におけるボトルネックとなることが多い分類ブランチのオーバーヘッドを低減します。
Python YOLOv10 でき、標準化されたインターフェースの利点を享受できます。
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Train the model on a custom dataset
model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
results[0].show()
YOLO: 大規模ニューラルアーキテクチャ探索
YOLO、アリババグループが開発し2022年11月に公開した、効率的なアーキテクチャの自動発見に焦点を当てたシステムである。ニューラルアーキテクチャ検索(NAS)を採用することで、チームは厳格な計算リソース制限下において、検出バックボーンの最適な深さと幅を見出すことを目指した。
主要なアーキテクチャ機能
- MAE-NASバックボーン:検出精度と推論速度のバランスを取るバックボーンを、多目的進化探索を用いて見出す。
- 効率的なRepGFPN:特徴融合を改善するヘビーネック設計。航空画像解析など、様々なスケールでの物体検出に不可欠である。
- ZeroHead: 最終予測層の複雑さを軽減する、簡素化された検出ヘッド。
YOLO 高い性能YOLO 一方、複雑なNASプロセスへの依存度が高いため、Ultralytics ユーザーフレンドリーな設定と比較すると、平均的な開発者がカスタムデータセット向けにアーキテクチャを再学習または修正することが困難になる場合があります。
Ultralyticsの利点: YOLO26の登場
YOLOv10 YOLO 大きな前進YOLO 一方で、この分野は進化を続けています。Ultralytics 、YOLOv10 NMS遺産を基盤YOLOv10 より堅牢で実用段階のエコシステムに統合しています。
Ultralyticsを選ぶ理由
Ultralytics 、ハードウェアやソフトウェアライブラリが進化しても、モデルが今日だけでなく今後も確実に機能し続けるよう保証する、よく整備されたエコシステム Ultralytics 。多くの学術リポジトリとは異なり、Ultralytics 一貫した更新、充実したドキュメント、そして TensorRT やOpenVINOなどのデプロイメントツールとのシームレスな統合を提供します。
YOLO26 イノベーション
速度と精度において究極を求める開発者のために、YOLO26は前世代モデルからいくつかの重要な改良を導入しています:
- エンドツーエンドNMS: YOLOv10と同様に、YOLO26はネイティブにエンドツーエンドです。しかし、ディストリビューション焦点損失(DFL)を削除することでこれをさらに洗練させ、モデルグラフを簡素化し、エッジデバイスや低消費電力チップとの互換性を向上させています。
- MuSGDオプティマイザー:LLMトレーニングにおける革新(特にMoonshot AIのKimi K2)に着想を得たYOLO26は、MuSGDオプティマイザーを採用しています。SGD オンのハイブリッドである本手法は、トレーニングに前例のない安定性をもたらし、収束時間の短縮とGPU 削減を実現します。
- CPU :YOLO26はエッジコンピューティング向けに特別に最適化されており、CPU上で最大43%高速な推論を実現します。これにより、GPUが利用できないIoTアプリケーションに最適な選択肢となります。
- 強化損失関数: ProgLossおよび STAL(自己学習アンカー学習)の導入により、小さな物体や困難な背景における性能が大幅に向上した。
比較ユースケース
適切なモデルの選択は、具体的な導入上の制約とワークフロー要件に大きく依存します。
YOLOの使用タイミング
YOLO ニューラルアーキテクチャ検索(NAS)を伴う研究シナリオにおいて有力なYOLO 。プロジェクトで自動検索戦略が特徴抽出に与える影響を調査する必要がある場合、あるいはAlibabaエコシステムに深く統合されている場合、このモデルは貴重な知見を提供します。そのRepGFPNモジュールは、特徴融合研究における優れた参照例でもあります。
YOLOv10の使用タイミング
YOLOv10 、低遅延変動が重要なアプリケーションにYOLOv10 。そのNMS設計により、検出される物体の数にかかわらず推論時間が安定して維持され、リアルタイム安全システムにとって不可欠です。
- リアルタイム監視:混雑したシーンでも安定したフレームレート。
- ロボティクス:制御ループの予測可能なタイミング。
なぜYOLO26が優れた選択肢なのか
大多数の開発者や商用アプリケーションにとって、Ultralytics 最も魅力的なパッケージを提供します。YOLOv10 NMS利点YOLOv10 優れた学習効率、幅広いハードウェアサポートYOLOv10 兼ね備えています。
- 使いやすさ:単一Python でトレーニング、検証、デプロイを実行できます。
- 汎用性:YOLO異なり、YOLO26はインスタンスセグメンテーション、姿勢推定、分類、方向付き境界ボックス(OBB)を含む全タスクをサポートする。
- メモリ効率:YOLO26は、トランスフォーマーハイブリッドモデルと比較して、トレーニング中にCUDA 大幅に少なく、コンシューマー向けGPUでのトレーニングを可能にします。
- プラットフォーム統合:シームレスにエクスポート ONNX、CoreML、TFLite Ultralytics 、プロトタイプから本番環境への移行を効率化します。
コード例: YOLO26 ワークフロー
Ultralytics最新技術への移行も簡単です。以下のコードスニペットは、最先端のYOLO26モデルの読み込み、推論の実行、デプロイのためのエクスポート方法を示しています。
from ultralytics import YOLO
# Load the YOLO26s model (Small version)
model = YOLO("yolo26s.pt")
# Train on COCO8 dataset
model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX for simplified deployment
model.export(format="onnx", opset=13)
結論
YOLO 、コンピュータビジョン分野に貴重な革新YOLO 。 YOLOv10NMSの実現可能性を証明し、YOLONASの威力を示しました。Ultralytics これらの進歩を統合し、包括的でユーザーフレンドリーかつ高性能なツールを実現しています。卓越した速度、タスクの汎用性、そして堅牢なエコシステムの支援により、YOLO26は次世代AIアプリケーションを開発する開発者にとって推奨されるソリューションとして位置づけられています。
さらに詳しく知りたい場合は、YOLO11 やトランスフォーマーベースの RT-DETR などの代替アーキテクチャ手法を検討してください。