YOLO YOLOv10: 効率的なリアルタイム物体検出の進化
コンピュータビジョン分野では、リアルタイム物体検出アーキテクチャが急速に進化している。YOLOと YOLOv10を比較すると、モデル設計において二つの異なる哲学が観察される:自動アーキテクチャ探索とエンドツーエンドNMS最適化である。両者とも精度と速度の限界を押し広げているが、その基盤となる構造と理想的なユースケースは大きく異なる。
YOLO: 大規模ニューラルアーキテクチャ探索
アリババグループによって開発されたYOLO 、構造効率化のための自動発見を活用することに焦点を当てた強力な検出器としてYOLO 。
- 著者: Xianzhe Xu、Yiqi Jiang、Weihua Chen、Yilun Huang、Yuan Zhang、Xiuyu Sun
- 日付: 2022年11月23日
- Arxiv:2211.15444v2
- GitHub:tinyvision/DAMO-YOLO
アーキテクチャのハイライト
YOLO 性能と遅延のバランスを取るため、ニューラルアーキテクチャ探索(NAS)をYOLO 。その中核となるMAE-NASは、厳格な計算リソース制限下で多目的進化探索を用い、最適な層の深さと幅を見出す。
スケールを超えた特徴融合を処理するため、本モデルは効率的なRepGFPN(再パラメータ化汎用特徴ピラミッドネットワーク)を採用している。このヘビーネック設計は複雑な空間階層構造の抽出に特に優れており、航空写真解析などのシナリオで有用である。YOLO 。これは最終予測層の複雑性を大幅に低減する合理化された検出ヘッドであり、学習中の堅牢な蒸留強化プロセスに依存している。
蒸留トレーニング
YOLO 多段階の知識蒸留プロセスをYOLO 利用する。より重い「教師」モデルを訓練し、より小さな「生徒」モデルを導く必要がある。これにより高いmAP 平均精度)mAP 得られるが、GPU 大幅に増加する。
YOLOv10:画期的なエンドツーエンド物体検出
1年半後にリリースYOLOv10 、推論時の非最大抑制(NMS)を完全に不要とするというパラダイムシフトYOLOv10 。
- 著者: Ao Wang, Hui Chen, Lihao Liu, et al.
- 組織:清華大学
- 日付: 2024年5月23日
- Arxiv:2405.14458
- ドキュメント:Ultralytics YOLOv10
アーキテクチャのハイライト
YOLOv10 最大の特徴YOLOv10 NMSトレーニングを実現する一貫した二重アサインメント YOLOv10 。従来の検出器は単一オブジェクトに対して複数の重複する境界ボックスを予測するため、重複NMS が必要となる。この後処理ステップは、特にエッジデバイスにおいてボトルネックとなる。YOLOv10 、モデルがオブジェクトごとに単一の正確な境界ボックスを自然に予測できるようにすることでこの問題をYOLOv10 。
著者らはまた、効率性と精度を両立させる包括的なモデル設計に焦点を当てた。既存アーキテクチャにおける計算上の冗長性を詳細に分析することで、バックボーンとヘッドを最適化し、FLOPs数とパラメータ数を削減した。この軽量設計により、YOLOv10 TensorRTやPyTorchなどの形式にエクスポートされた際、卓越した推論レイテンシYOLOv10 。 TensorRT や OpenVINOなどの形式にエクスポートされた際に、YOLOv10が卓越した推論レイテンシを実現
性能とベンチマーク
以下の表は、COCO における生の性能指標を示しています。各列における最高の総合値は太字で強調表示されています。
| モデル | サイズ (ピクセル) | 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 精度面でYOLO 、YOLOv10 低いレイテンシと大幅に軽量なモデルを実現する。例えばYOLOv10sは、DAMO-YOLOs(46.0%)よりわずかにmAP 46.7%)を達成しつつ、パラメータ数を半分以下(720万対1630万)に抑えている。メモリ要件が低いことから、YOLOv10 組み込みシステム向けに非常に汎用性の高い選択肢となる。
トレーニングの効率性と使いやすさ
学術研究から実運用への移行においては、使いやすさが最も重要である。YOLO多段階蒸留プロセスと複雑なNAS構成は、エンジニアリングチームにとって急峻な学習曲線をもたらす可能性がある。
一方、YOLOv10 Ultralytics Python に完全に統合されているため、非常に大きなYOLOv10 。カスタムモデルのトレーニングには最小限の定型コードしか必要としません。Ultralytics データ拡張、ハイパーパラメータ調整、実験追跡を自動的に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 へと移行でき、従来のフレームワークで必要だった複雑な環境設定を回避できます。
実際のユースケース
- スマート小売(YOLO):YOLO、GPUが豊富でNMS 管理可能な、顧客行動を分析する高密度サーバー環境に最適である。
- 自律走行車両(YOLOv10): NMSアーキテクチャは、自律走行における安全システムに不可欠な、決定論的で予測可能な遅延を保証します。
- 産業オートメーション(YOLOv10):高速で動く組立ライン上の欠陥を検出するには、膨大なVRAMを消費せずにリアルタイム推論速度を最大化するモデルが必要であり、YOLOv10 エッジデプロイメントの最適な候補となる。
ユースケースと推奨事項
YOLOv10 具体的なプロジェクト要件、デプロイメント上の制約、およびエコシステム上の好みにYOLOv10 。
DAMO-YOLOを選択するタイミング
YOLO 以下に最適YOLO :
- 高スループット動画解析:固定NVIDIA GPU 上で高FPS動画ストリームを処理し、バッチ1スループットを主要指標とする。
- 産業用製造ライン:専用ハードウェア上でGPU 厳しい制約があるシナリオ。例:組立ラインにおけるリアルタイム品質検査。
- ニューラルアーキテクチャ探索研究:自動化されたアーキテクチャ探索(MAE-NAS)と効率的な再パラメータ化バックボーンが検出性能に及ぼす影響の検討。
YOLOv10を選択すべき時
YOLOv10 以下に推奨YOLOv10 :
- NMSリアルタイム検出:ノンマキシマム抑制なしのエンドツーエンド検出により、導入の複雑さを軽減するアプリケーション。
- 速度と精度のバランスの取れたトレードオフ:様々なモデル規模において、推論速度と検出精度との強力なバランスを必要とするプロジェクト。
- 一貫したレイテンシを必要とするアプリケーション:予測可能な推論時間が極めて重要な展開シナリオ(例:ロボティクスや自律システム)。
Ultralytics YOLO26)を選択すべきタイミング
ほとんどの新規プロジェクトにおいて、Ultralytics パフォーマンスと開発者体験の最適な組み合わせを提供します:
- NMSデプロイメント:ノンマキシマムサプレッション(NMS)後処理の複雑さを伴わずに、一貫した低遅延推論を必要とするアプリケーション。
- CPU: GPU を持たないデバイスにおいて、YOLO26のCPU 決定的な優位性を提供する。
- 小型物体検出: ドローン航空写真やIoTセンサー解析といった困難なシナリオにおいて、ProgLossとSTALが微小物体の精度を大幅に向上させる。
次世代:Ultralytics の登場
YOLOv10 NMSの基盤をYOLOv10 一方で、この技術は急速に進化を遂げています。現代のアプリケーションにおいて、Ultralytics モデルは比類のない性能と使いやすさを提供し、前世代の優れた点を継承しつつ、実運用向けに洗練されています。
YOLO26は厳密にネイティブなエンドツーエンド設計を採用し、エッジデバイス全体でのデプロイメントパイプラインを簡素化するため、NMS 排除しています。さらに、分布焦点損失(DFL)の除去により、低電力エッジAIハードウェアとの互換性が劇的に向上しました。
トレーニング面では、YOLO26は大規模言語モデル(LLM)のトレーニング手法に着想を得たハイブリッド方式であるMuSGDオプティマイザーを導入。これによりトレーニングの安定性と収束速度が向上した。ProgLoss + STAL損失関数と組み合わせることで、YOLO26は野生生物保護や ドローン運用において重要な機能である微小物体認識において顕著な改善を示している。
重要な点として、YOLO26は単なる物体検出器ではありません。タスク固有の改善を包括的に提供し、インスタンスセグメンテーション、残差対数尤度推定(RLE)を用いた姿勢推定、および方向付き境界ボックス(OBB)向けの専用角度損失をネイティブにサポートします。前世代モデルと比較して最大43CPU を実現し、俊敏なエンジニアリングチームにとって決定的な選択肢です。
YOLO26モデルの集中管理、アノテーション、クラウドトレーニングのために、Ultralytics 直感的なインターフェースを提供し、コンピュータビジョンのライフサイクル全体を効率化します。
他の最近の進歩を探求したい開発者は、以下も評価できます Ultralytics YOLO11 またはトランスフォーマーベースの RT-DETR フレームワークを評価することも可能です。