コンテンツへスキップ

YOLO-NAS

概要

Deci AI によって開発されたYOLO-NAS は、画期的な物体検出の基盤モデルです。これは高度なニューラル・アーキテクチャー・サーチ技術の産物であり、従来のYOLO モデルの限界に対処するために綿密に設計されている。量子化サポートと精度とレイテンシのトレードオフの大幅な改善により、YOLO-NAS は物体検出における大きな飛躍を象徴しています。

モデル例 YOLO-NASの概要。 YOLO-NASは量子化を意識したブロックと選択的量子化を採用し、最適なパフォーマンスを実現。このモデルをINT8量子化バージョンに変換すると、精度の低下が最小限に抑えられ、他のモデルよりも大幅に改善されます。これらの進化は、前例のない物体検出能力と卓越した性能を備えた優れたアーキテクチャに結実している。

主な特徴

  • 量子化に適した基本ブロック: YOLO-NASは、量子化に適した新しい基本ブロックを導入し、従来のYOLO モデルの重大な制限のひとつに対処している。
  • 洗練されたトレーニングと量子化: YOLO-NASは、高度なトレーニングスキームとトレーニング後の量子化を活用してパフォーマンスを向上させる。
  • AutoNAC最適化と事前トレーニング: YOLO-NASはAutoNAC最適化を利用し、COCO、Objects365、Roboflow 100などの著名なデータセットで事前トレーニングされています。この事前学習により、本番環境における下流の物体検出タスクに非常に適しています。

訓練済みモデル

Ultralytics が提供する事前学習済みのYOLO-NAS モデルで、次世代の物体検出のパワーを体験してください。これらのモデルは、速度と精度の両面で一流のパフォーマンスを提供するように設計されています。お客様のニーズに合わせた様々なオプションからお選びください:

モデル マップ 待ち時間 (ms)
YOLO-NAS S 47.5 3.21
YOLO-NAS M 51.55 5.85
YOLO-NAS L 52.22 7.87
YOLO-NAS S INT-8 47.03 2.36
YOLO-NAS M INT-8 51.0 3.78
YOLO-NAS L INT-8 52.1 4.78

各モデルのバリエーションは、平均平均精度(mAP)とレイテンシのバランスを提供するように設計されており、性能と速度の両面から物体検出タスクを最適化するのに役立ちます。

使用例

Ultralytics は、YOLO-NAS モデルをPython アプリケーションに簡単に統合できるようにしました。 ultralytics python パッケージで提供される。このパッケージは、プロセスを合理化するためのユーザーフレンドリーなPython APIを提供する。

以下の例では、YOLO-NASモデルを ultralytics パッケージで推論と検証を行う:

推論と検証の例

この例では、YOLO-NAS-sをCOCO8データセットで検証する。

例

この例では、YOLO-NASの簡単な推論と検証コードを提供する。推論結果の処理については 予測する モードで使用できます。YOLO-NASとその他のモードの併用については、以下を参照のこと。 バル そして 輸出.YOLO-のNAS ultralytics パッケージはトレーニングをサポートしていない。

PyTorch じゅくれんした *.pt モデルファイルを NAS() クラスを使用して、python にモデルのインスタンスを作成します:

from ultralytics import NAS

# Load a COCO-pretrained YOLO-NAS-s model
model = NAS("yolo_nas_s.pt")

# Display model information (optional)
model.info()

# Validate the model on the COCO8 example dataset
results = model.val(data="coco8.yaml")

# Run inference with the YOLO-NAS-s model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

CLI コマンドでモデルを直接実行できる:

# Load a COCO-pretrained YOLO-NAS-s model and validate it's performance on the COCO8 example dataset
yolo val model=yolo_nas_s.pt data=coco8.yaml

# Load a COCO-pretrained YOLO-NAS-s model and run inference on the 'bus.jpg' image
yolo predict model=yolo_nas_s.pt source=path/to/bus.jpg

サポートされるタスクとモード

YOLO-NASモデルには3つのバリエーションがあります:スモール(s)、ミディアム(m)、ラージ(l)です。各バリエーションは、異なる計算とパフォーマンスのニーズに対応するように設計されています:

  • YOLO-NAS-s:計算リソースは限られているが、効率が重要な環境向けに最適化されている。
  • YOLO-NAS-m:より高い精度で汎用的な物体検出に適した、バランスの取れたアプローチを提供。
  • YOLO-NAS-l:計算機資源の制約が少なく、最高の精度が要求されるシナリオ向け。

以下は各モデルの詳細な概要で、事前に訓練された重みへのリンク、サポートするタスク、異なる動作モードとの互換性などが含まれる。

モデル・タイプ 事前に訓練されたウェイト 対応タスク 推論 バリデーション トレーニング 輸出
YOLO-NAS-s yolo_nas_s.pt 物体検出 ✅ ✅ ❌ ✅
YOLO-NAS-m yolo_nas_m.pt 物体検出 ✅ ✅ ❌ ✅
YOLO-NAS-l yolo_nas_l.pt 物体検出 ✅ ✅ ❌ ✅

引用と謝辞

研究開発でYOLO-NAS を使用する場合は、SuperGradients を引用してください:

@misc{supergradients,
      doi = {10.5281/ZENODO.7789328},
      url = {https://zenodo.org/record/7789328},
      author = {Aharon,  Shay and {Louis-Dupont} and {Ofri Masad} and Yurkova,  Kate and {Lotem Fridman} and {Lkdci} and Khvedchenya,  Eugene and Rubin,  Ran and Bagrov,  Natan and Tymchenko,  Borys and Keren,  Tomer and Zhilko,  Alexander and {Eran-Deci}},
      title = {Super-Gradients},
      publisher = {GitHub},
      journal = {GitHub repository},
      year = {2021},
}

Deci AI のSuperGradientsチームが、コンピュータビジョンコミュニティのためにこの貴重なリソースを作成し、維持してくれていることに感謝の意を表します。革新的なアーキテクチャと優れた物体検出能力を持つYOLO-NAS は、開発者や研究者にとって重要なツールになると信じています。

キーワードYOLO-NAS,Deci AI, オブジェクト検出, ディープラーニング, ニューラルアーキテクチャ検索,Ultralytics Python API,YOLO モデル, SuperGradients, 事前学習済みモデル, 量子化に適した基本ブロック, 高度な学習スキーム, 学習後の量子化, AutoNAC最適化, COCO, Objects365,Roboflow 100



Created 2023-11-12, Updated 2024-06-10
Authors: glenn-jocher (11)

コメント