Штучний інтелект

YOLOv7: Найбільш Розроблений Алгоритм Виявлення Об’єктів?

mm

6 липня 2022 року буде відзначено як знаменний день в історії штучного інтелекту, оскільки саме в цей день був випущений YOLOv7. Від моменту його випуску YOLOv7 став найгарячішим темою в спільноті розробників комп’ютерного зору, і не без причини. YOLOv7 вже вважається етапом в галузі виявлення об’єктів.

Незабаром після публікації статті про YOLOv7 вона стала найшвидшою та найточнішою моделлю виявлення об’єктів в реальному часі. Але яким чином YOLOv7 перевершує своїх попередників? Що робить YOLOv7 так ефективним у виконанні завдань комп’ютерного зору?

У цій статті ми спробуємо проаналізувати модель YOLOv7 та спробувати знайти відповідь на питання, чому YOLOv7 став промисловим стандартом? Але перш ніж ми зможемо відповісти на це питання, нам потрібно розглянути коротку історію виявлення об’єктів.

Що таке виявлення об’єктів?

Виявлення об’єктів є галуззю комп’ютерного зору, яка ідентифікує та локалізує об’єкти на зображенні або відеофайлі. Виявлення об’єктів є основою багатьох застосунків, включаючи самоходні автомобілі, моніторинг підтримки, та навіть робототехніку.

Модель виявлення об’єктів можна класифікувати на два різних типи, одноступінчасті детектори, та багатоступінчасті детектори.

Виявлення об’єктів в реальному часі

Щоб真正 зрозуміти, як працює YOLOv7, нам потрібно зрозуміти основну мету YOLOv7, “Виявлення об’єктів в реальному часі“. Виявлення об’єктів в реальному часі є ключовим компонентом сучасного комп’ютерного зору. Моделі виявлення об’єктів в реальному часі намагаються ідентифікувати та локалізувати об’єкти інтересу в реальному часі.

Моделі виявлення об’єктів в реальному часі є суттєво кращими, ніж традиційні моделі виявлення зображень. Останні використовуються для відстеження об’єктів на відеофайлах, тоді як перші локалізують та ідентифікують об’єкти на нерухомих кадрах, таких як зображення.

В результаті, моделі виявлення об’єктів в реальному часі є дуже ефективними для відеоаналітики, автономних транспортних засобів, підрахунку об’єктів, відстеження декількох об’єктів та багатьох інших застосунків.

Що таке YOLO?

YOLO або “Переглянути лише один раз” є сім’єю моделей виявлення об’єктів в реальному часі. Концепція YOLO була вперше введена в 2016 році Джозефом Редмоном, і вона стала дуже популярною майже одразу, оскільки вона була значно швидшою та точнішою, ніж існуючі алгоритми виявлення об’єктів.

Основна концепція, яку пропонує алгоритм YOLO, полягає в тому, щоб використовувати нейронну мережу з використанням обмежувальних рамок та ймовірностей класів для прогнозування в реальному часі. YOLO відрізнявся від попередніх моделей виявлення об’єктів тим, що пропонував інший підхід до виконання виявлення об’єктів шляхом перепрофільованого класифікатора.

Зміна підходу спрацювала, оскільки YOLO незабаром став промисловим стандартом, оскільки розрив у продуктивності між ним та іншими алгоритмами виявлення об’єктів в реальному часі був суттєвим.

Як працює YOLO?

Є три кроки, які пояснюють, як працює алгоритм YOLO.

Переформулювання виявлення об’єктів як єдиний регресійний задача

Алгоритм YOLO намагається переформулювати виявлення об’єктів як єдиний регресійний задача, включаючи пікселі зображення, ймовірності класів та координати обмежувальних рамок. Отже, алгоритм повинен переглянути зображення лише один раз, щоб прогнозувати та локалізувати цільові об’єкти на зображенні.

Глобальне розуміння зображення

Крім того, коли алгоритм YOLO робить прогнози, він глобально розуміє зображення. Це відрізняється від регіональних пропозиційних та ковзних технік, оскільки алгоритм YOLO бачить все зображення під час навчання та тестування на наборі даних та能够 кодувати контекстну інформацію про класи та їх появу.

До YOLO один із найбільш популярних алгоритмів виявлення об’єктів був Fast R-CNN, який не міг бачити більший контекст зображення, оскільки він часто приймав фонові патчі на зображенні за об’єкт. У порівнянні з алгоритмом Fast R-CNN, YOLO на 50% точніше при виявленні помилок фону.

Генералізація представлення об’єктів

Нарешті, алгоритм YOLO також намагається генералізувати представлення об’єктів на зображенні. В результаті, коли алгоритм YOLO був запущений на наборі даних із природними зображеннями та протестований на результатах, YOLO перевершив існуючі моделі R-CNN на велику відстань.

YOLOv7: Що нового?

Тепер, коли ми маємо базове розуміння того, що таке моделі виявлення об’єктів в реальному часі, та що таке алгоритм YOLO, час розглянути алгоритм YOLOv7.

Оптимізація процесу навчання

Алгоритм YOLOv7 не тільки намагається оптимізувати архітектуру моделі, але також намагається оптимізувати процес навчання. Він намагається використовувати оптимізаційні модулі та методи для покращення точності виявлення об’єктів, посилення витрат на навчання, при збереженні витрат на інтерференцію.

Грубий до тонкого керівництво призначенням міток

Алгоритм YOLOv7 планує використовувати нове грубе до тонкого керівництво призначенням міток замість традиційного динамічного призначення міток.

Перепараметризація моделі

Перепараметризація моделі є важливою концепцією у виявленні об’єктів, і її використання часто супроводжується деякими проблемами під час навчання.

Розширення та складна масштабування

Алгоритм YOLOv7 також вводить методи розширення та складної масштабування для використання та ефективного використання параметрів та обчислень для виявлення об’єктів в реальному часі.

YOLOv7: Пов’язана робота

Виявлення об’єктів в реальному часі

YOLO зараз є промисловим стандартом, і більшість детекторів об’єктів в реальному часі використовують алгоритми YOLO та FCOS (Fully Convolutional One-Stage Object-Detection).

  • Більш сильна та швидша архітектура мережі.
  • Ефективний метод інтеграції функцій.
  • Точний метод виявлення об’єктів.
  • Стійка функція втрат.
  • Ефективний метод призначення міток.
  • Ефективний метод навчання.

Алгоритм YOLOv7 не використовує методи самонавчання та дистиляції, які часто вимагають великих обсягів даних.

Перепараметризація моделі

Техніки перепараметризації моделі вважаються ансамблевими техніками, які об’єднують декілька обчислювальних модулів на етапі інтерференції.

Масштабування моделі

Масштабування моделі є процесом масштабування існуючої моделі для генерації моделей різного масштабу для задоволення різних вимог до інтерференції.

На малюнку вище порівнюються розширені ефективні мережі агрегації шарів (E-ELAN) різних моделей.

Архітектура YOLOv7

Модель YOLOv7 використовує моделі YOLOv4, YOLO-R та Scaled YOLOv4 як базові.

Розширена ефективна мережа агрегації шарів (E-ELAN)

E-ELAN є основним будівельним блоком моделі YOLOv7 та походить від існуючих моделей мережевої ефективності, зокрема ELAN.

Тренувальна сумка безкоштовних речей

Тренувальна сумка безкоштовних речей є набором методів або технік, які можуть змінити стратегію навчання або витрати на навчання для підвищення точності моделі.

Планована перепараметризація свертання

Алгоритм YOLOv7 використовує шлях пропагації градієнта для визначення того, як ідеально поєднати мережу з перепараметризованим свертанням.

Грубий для допоміжного та тонкий для лідерського втрат

Глибоке наглядання є галуззю комп’ютерних наук, яка часто використовується під час навчання глибоких мереж.

Лідерське керівництво призначенням міток

Стратегія робить розрахунки на основі результатів прогнозування лідерської голови та ґрунтової правди, а потім використовує оптимізацію для генерації м’яких міток.

Інші тренувальні сумки безкоштовних речей

Крім вищезазначених, алгоритм YOLOv7 використовує додаткові тренувальні сумки безкоштовних речей, хоча вони не були запропоновані ними原本.

  • Нормалізація批 в технології Conv-Bn-Активація: Ця стратегія використовується для підключення шару свертання напряму до шару нормалізації批.
  • Неявний знання в YOLOR: Алгоритм YOLOv7 поєднує цю стратегію з картами функцій свертання.
  • Модель EMA: Модель EMA використовується як остаточна модель посилання в YOLOv7, хоча її основне використання полягає в методі вчителя-середнього.

YOLOv7: Експерименти

Експериментальна установка

Алгоритм YOLOv7 використовує набір даних Microsoft COCO для навчання та валідації моделі виявлення об’єктів.

Порівняння з моделями виявлення об’єктів

На малюнку вище показані результати порівняння YOLOv7 з моделями виявлення об’єктів для мобільних та загальних GPU.

Аналіз пропонованого складного методу масштабування

Пропонована планована перепараметризація моделі

Для верифікації загальності своєї пропонованої перепараметризованої моделі алгоритм YOLOv7 використовує її на моделях з залишковими з’єднаннями та моделях з конкатенацією для верифікації.

Пропонована допоміжна втрата для допоміжної голови

Для допоміжної втрати для допоміжної голови модель YOLOv7 порівнює незалежне призначення міток для допоміжної голови та лідерської голови.

Результати YOLOv7

На основі вищезазначених експериментів, ось результати продуктивності YOLOv7 у порівнянні з іншими алгоритмами виявлення об’єктів.

Висновок

YOLO або “Переглянути лише один раз” є сучасним алгоритмом виявлення об’єктів. Алгоритм YOLO відомий своєю високою точністю та ефективністю, і в результаті він знаходить широке застосування в галузі виявлення об’єктів в реальному часі.

Від моменту випуску першого алгоритму YOLO в 2016 році експерименти дозволили розробникам покращувати модель безперервно. Модель YOLOv7 є останнім доповненням до сім’ї YOLO, і це найпотужніший алгоритм YOLO на сьогодні.

Інженер за професією, письменник серцем. Kunal є технічним письменником з глибокою любов'ю та розумінням AI і ML, присвяченим спрощенню складних концепцій у цих галузях завдяки його цікавим та інформативним документам.