YOLO-NAS е върхът на моделите за откриване на обекти в серията YOLO. Но защо се смята за най-доброто?
След YOLOv8 има още нов и по-добър модел за откриване на обекти, YOLO-NAS. Това е алгоритъм за откриване на обекти, разработен от Deci AI, за да се справи с ограниченията на предишните модели YOLO (You Only Look Once).
Моделът е изграден от AutoNAC, търсачка за невронна архитектура. Той надминава скоростта и производителността на SOTA моделите, което представлява голям скок в откриването на обекти чрез подобряване на компромисите на точността, латентността и поддръжката на квантуване.
Тази статия ще обсъди силните страни и характеристиките на YOLO-NAS, изследвайки защо това е най-добрият модел за откриване на обекти в серията YOLO.
Разбиране как работи YOLO-NAS
AutoNAC (Automated Neural Architecture Construction) на Deci генерира архитектурата на YOLO-NAS. AutoNAC е безпроблемен процес, който осигурява повишаване на производителността на съществуващите дълбоки невронни мрежи.
Тръбопроводът AutoNAC приема обучена от потребител дълбока невронна мрежа като вход, набор от данни и достъп до система за изводи. След това обучената от потребителите дълбока невронна мрежа претърпява редизайн с помощта на тръбопровода. След това се постига оптимизирана архитектура с по-ниска латентност, без да се прави компромис с точността.
YOLO-NAS използва RepVGG. RepVGG го прави достъпен за оптимизиране след обучение чрез повторно параметризиране или квантуване след обучение. Това е тип архитектура на невронна мрежа, базирана на VGG. Той използва техники за регулиране, предназначени да подобрят способността за обобщаване на моделите за дълбоко обучение.
Дизайнът на архитектурата е по-ефективен по отношение на скоростта и паметта. RepVGG се подлага на обучение с помощта на многоклонова архитектура, за да се постигне по-бърз извод. След това се преобразува в един клон с помощта на повторно параметризиране.
Тази функция прави YOLO-NAS много полезен за производствено внедряване. Това е така, защото е възможно да се обучи и оптимизира моделът с пълна прецизност за скорост на извод и използване на паметта.
Основни характеристики на YOLO-NAS
Ключовите характеристики на YOLO-NAS включват следното:
- Обучение за квантуване: Моделът използва QSP и QCI (модули за квантуване), за да намали загубата на точност по време на квантуване след обучение чрез комбиниране на повторно параметризиране на 8-битово квантуване.
- Автоматично проектиране на архитектура: AutoNAC, патентованата NAS технология на Deci търси оптимална моделна архитектура, която интегрира основните архитектури на YOLO модели, за да излезе с оптимизиран модел.
- Хибридна техника на квантуване: Стандартният метод на квантуване засяга целия модел. За разлика от това, техниката на хибридно квантуване квантува част от модела, за да балансира латентността и точността на модела.
- Използвайте уникални подходи, за да подготвите модела за обучение, като използвате автоматично етикетирани данни. След това моделът се учи от своите прогнози и получава достъп до големи количества данни.
Сравнителен анализ: YOLO-NAS срещу други модели на YOLO
По-долу е дадено сравнение между различните модели от серията YOLO.
YOLO-NAS е по-добър от вече съществуващите модели за откриване на обекти, но идва със своите недостатъци. Ето списък на предимствата и недостатъците на YOLO-NAS:
Професионалисти
- Той е с отворен код.
- Той е с 10-20% по-бърз от предишните модели YOLO.
- Той е по-точен в сравнение с вече съществуващите модели YOLO.
- Той използва по-добра архитектура, AutoNAC. Това поставя нов рекорд в откриването на обекти, осигурявайки най-добрата точност и компромисна производителност при забавяне.
- Безпроблемна поддръжка за машини за изводи като NVIDIA. Тази функция го прави готов за производство модел.
- Има по-добра ефективност на паметта и увеличени скорости на извод.
минуси
- Все още не е стабилен, тъй като технологията е все още нова и не е използвана масово в производството.
Внедряване на YOLO-NAS
Ще използвате Google Colab за писане и изпълнение на кодовете в тази реализация. Алтернатива на Google Colab би била създайте виртуална среда и използвайте IDE на вашата локална машина.
Моделът е много ресурсоемък. Уверете се, че имате поне 8 GB RAM, преди да го стартирате на вашата машина. Колкото по-голям е размерът на видеото, толкова повече памет използва.
Инсталиране на зависимости
Инсталирайте зависимостта YOLO-NAS, супер-градиенти използвайки командата по-долу:
pip инсталирайте супер-градиенти==3.1.2
След успешна инсталация вече ще можете да обучите модела YOLO-NAS.
Модел обучение
За да обучите модела, изпълнете кодовия блок по-долу:
от super_gradients.training импортиране модели
yolo_nas_l = models.get("yolo_nas_l", pretrained_weights="коко")
Вие импортирате тренировъчния модел от инсталираната библиотека SuperGradients в този код. След това използвате предварително обучените тегла на модела от набора от данни COCO.
Извод на модела
Изводът на модела има потенциални приложения за откриване на изображения, класифициране и задачи за сегментиране.
В този случай ще се съсредоточите върху задача за откриване на обекти за видео и изображения. За да откриете обект в изображение, изпълнете кодовия блок по-долу:
url = "img_path"
yolo_nas_l.predict (url, conf=0.25).покажи()
Уверете се, че използвате точния път до вашето изображение. В този случай качете изображението в средата на Google Colab, след което копирайте пътя на изображението.
Очакван резултат:
За да откриете обекти във видео, изпълнете кодовия блок по-долу:
импортиране факла
input_video_path = "път_към_видео"
изходен_видео_път = "открит.mp4"
устройство = 'cuda'ако torch.cuda.is_available() друго"процесор"
yolo_nas_l.to (устройство).predict (input_video_path).save (output_video_path)
Подобно на данните за изображението, качете видеоклипа, чиито обекти искате да бъдат открити, в средата на Google Colab и копирайте пътя до видеопроменливата. Прогнозираният видеоклип ще бъде достъпен от средата на Google Colab с помощта на името открит.mp4. Изтеглете видеоклипа на вашата локална машина, преди да приключите сесията си.
Очакван резултат:
YOLO-NAS също така поддържа фина настройка на модела и обучение по персонализирани данни. Документацията е достъпна на на Деци начален лаптоп за фина настройка.
Приложения в реалния свят на YOLO-NAS
Изходният код на YOLO-NAS е достъпен под Apache License 2.0, който е достъпен за некомерсиална употреба. За комерсиална употреба, моделът трябва да премине преквалификация от нулата, за да получи персонализирани тежести.
Това е универсален модел, чието приложение е възможно в няколко области, като например:
Автономни превозни средства и роботика
YOLO-NAS може да подобри възможностите за възприятие на автономните превозни средства, като им позволява да откриват и проследяват обекти по-бързо и по-точно в реално време. Тази способност помага да се осигури безопасност на пътя и безпроблемно шофиране.
Системи за наблюдение и сигурност
Моделът може да осигури бързо, точно и в реално време откриване на обекти за наблюдение и сигурност системи, което помага за идентифициране на потенциални заплахи или подозрителни дейности, което води до по-добра сигурност системи
Търговия на дребно и управление на инвентара
Моделът може да осигури бързи и точни възможности за откриване на обекти, които позволяват ефективно и автоматизирано управление на инвентара в реално време, проследяване на запасите и оптимизиране на рафтовете. Този модел помага за намаляване на оперативните разходи и увеличаване на печалбите.
Здравеопазване и медицинска образна диагностика
В здравеопазването YOLO-NAS е в състояние да помогне за ефективното откриване и анализ на болестни аномалии или специфични области на интерес. Моделът може да помогне на лекарите да диагностицират точно заболяванията и да наблюдават пациентите, като по този начин подобряват сектора на здравеопазването.
YOLO-NAS За вкъщи
YOLO-NAS е нов модел за откриване на обекти, пионер в нов начин за извършване на откриване на обекти. По-добър е от SOTA моделите. Неговата производителност при откриване на обекти е голям скок за проектите за компютърно зрение.