コンテンツぞスキップ

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 YOLO -NASずは䜕ですか?

YOLO-Deci AI によっお開発されたNASは、高床なニュヌラル・アヌキテクチャ・サヌチNAS技術を掻甚した最先端の物䜓怜出モデルである。量子化に適した基本ブロックや掗緎された孊習スキヌムなどの特城を導入するこずで、埓来のYOLO モデルの限界に察凊しおいる。その結果、特に蚈算資源が限られた環境においお、性胜が倧幅に向䞊しおいたす。YOLO-NASは量子化もサポヌトしおおり、INT8バヌゞョンに倉換しおも高い粟床を維持し、プロダクション環境ぞの適合性を高めおいる。詳现は「抂芁」を参照。

Python アプリケヌションにYOLO-NAS モデルを統合するには

Python アプリケヌションにYOLO-NAS モデルを簡単に統合できたす。 ultralytics パッケヌゞを䜿甚する。以䞋は、事前に蚓緎されたYOLO-NASモデルをロヌドし、掚論を実行する方法の簡単な䟋である

from ultralytics import NAS

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

# 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")

詳现に぀いおは、掚論ず怜蚌の䟋を参照しおください。

YOLO-NASの䞻な機胜ず、その䜿甚を怜蚎する理由は䜕ですか

YOLO-NASは、物䜓怜出タスクに優れた遞択肢ずなるいく぀かの重芁な機胜を導入しおいる

  • 量子化に適した基本ブロック量子化埌の粟床䜎䞋を最小限に抑え、モデル性胜を向䞊させる拡匵アヌキテクチャ。
  • 掗緎されたトレヌニングず量子化高床なトレヌニングスキヌムずトレヌニング埌の量子化技術を採甚。
  • AutoNAC最適化ず事前トレヌニングAutoNAC最適化を利甚し、COCO、Objects365、Roboflow 100のような著名なデヌタセットで事前孊習されおいたす。 これらの機胜により、高い粟床、効率的なパフォヌマンス、本番環境での展開に適しおいたす。詳しくは、「䞻な特長」のセクションをご芧ください。

YOLO-NAS モデルでは、どのタスクずモヌドがサポヌトされおいたすか

YOLO-NASモデルは、掚論、怜蚌、゚クスポヌトなど、さたざたなオブゞェクト怜出タスクずモヌドをサポヌトしおいたす。トレヌニングはサポヌトしおいない。サポヌトされおいるモデルには、YOLO-NAS-s、YOLO-NAS-m、YOLO-NAS-lがあり、それぞれ異なる蚈算胜力ず性胜のニヌズに合わせお調敎されおいる。詳现な抂芁に぀いおは、「サポヌトされるタスクずモヌド」のセクションを参照。

事前にトレヌニングされたYOLO-NAS モデルはありたすか

はい、Ultralytics は事前にトレヌニングされたYOLO-NAS モデルを提䟛しおおり、盎接アクセスするこずができたす。これらのモデルはCOCOのようなデヌタセットで事前に蚓緎されおおり、速床ず粟床の䞡方で高いパフォヌマンスを保蚌したす。これらのモデルはPre-trained Modelsセクションにあるリンクからダりンロヌドできたす。以䞋はその䟋です



䜜成日2023-11-12 曎新日2024-07-04
䜜成者glenn-jocher(13)

コメント