Modele i platformy AI

YOLOv7: Najbardziej Zaawansowany Algorytm Wykrywania ObiektÃģw?

mm
Dodaj Unite.AI do preferowanych ÅšrÃģdeł w Google

6 lipca 2022 roku zostanie zapamiętany jako kamień milowy w historii sztucznej inteligencji, poniewaÅž tego dnia wydano YOLOv7. Od momentu jego premiery YOLOv7 jest najgorętszym tematem w społeczności deweloperÃģw wizji komputerowej, i to ze słusznych powodÃģw. YOLOv7 jest juÅž uwaÅžany za kamień milowy w branÅžy wykrywania obiektÃģw. 

KrÃģtko po opublikowaniu artykułu o YOLOv7, okazało się, Åže jest to najszybszy i najdokładniejszy model wykrywania obiektÃģw w czasie rzeczywistym. Ale jak YOLOv7 wyprzedza swoich poprzednikÃģw? Co sprawia, Åže YOLOv7 jest tak wydajny w wykonywaniu zadań związanych z wizją komputerową? 

W tym artykule sprÃģbujemy przeanalizować model YOLOv7 i znaleŚć odpowiedÅš na pytanie, dlaczego YOLOv7 staje się standardem branÅžowym? Ale zanim będziemy mogli odpowiedzieć na to pytanie, musimy przyjrzeć się krÃģtkiej historii wykrywania obiektÃģw. 

Co to jest wykrywanie obiektÃģw?

Wykrywanie obiektÃģw jest gałęzią wizji komputerowej, ktÃģra identyfikuje i lokalizuje obiekty w obrazie lub pliku wideo. Wykrywanie obiektÃģw jest podstawą wielu aplikacji, w tym samochodÃģw autonomicznych, monitorowanych systemÃģw nadzoru i nawet robotyki. 

Model wykrywania obiektÃģw moÅžna sklasyfikować na dwa rÃģÅžne typy, wykrywacze jednego strzału, i wykrywacze wielu strzałÃģw. 

Wykrywanie obiektÃģw w czasie rzeczywistym

Aby naprawdę zrozumieć, jak działa YOLOv7, konieczne jest zrozumienie głÃģwnego celu YOLOv7, „Wykrywanie obiektÃģw w czasie rzeczywistym”. Wykrywanie obiektÃģw w czasie rzeczywistym jest kluczowym składnikiem nowoczesnej wizji komputerowej. Modele wykrywania obiektÃģw w czasie rzeczywistym prÃģbują identyfikować i lokalizować obiekty zainteresowania w czasie rzeczywistym. Modele wykrywania obiektÃģw w czasie rzeczywistym sprawiły, Åže dla deweloperÃģw było naprawdę wydajne śledzenie obiektÃģw zainteresowania w filmie lub na Åžywo. 

Modele wykrywania obiektÃģw w czasie rzeczywistym są zasadniczo o krok do przodu w porÃģwnaniu z konwencjonalnymi modelami wykrywania obrazÃģw. Podczas gdy pierwsze są uÅžywane do śledzenia obiektÃģw w plikach wideo, drugie lokalizuje i identyfikuje obiekty w stacjonarnym kadrze, takim jak obraz. 

W rezultacie modele wykrywania obiektÃģw w czasie rzeczywistym są naprawdę wydajne dla analizy wideo, pojazdÃģw autonomicznych, liczenia obiektÃģw, śledzenia wielu obiektÃģw i wielu innych. 

Co to jest YOLO?

YOLO lub „Patrzysz tylko raz” to rodzina modeli wykrywania obiektÃģw w czasie rzeczywistym. Koncept YOLO został po raz pierwszy wprowadzony w 2016 roku przez Josepha Redmona, i stał się natychmiast gorącym tematem, poniewaÅž był znacznie szybszy i dokładniejszy niÅž istniejące algorytmy wykrywania obiektÃģw. Nie minęło duÅžo czasu, zanim algorytm YOLO stał się standardem w branÅžy wizji komputerowej. 

Podstawowa koncepcja, ktÃģrą proponuje algorytm YOLO, polega na uÅžyciu sieci neuronowej końca do końca z prostokątnymi ramkami i prawdopodobieństwami klasy do dokonywania prognoz w czasie rzeczywistym. YOLO rÃģÅžnił się od poprzednich modeli wykrywania obiektÃģw, poniewaÅž proponował inny sposÃģb wykrywania obiektÃģw, zmieniając klasyfikatory. 

Zmiana podejścia sprawiła, Åže YOLO szybko stał się standardem branÅžowym, poniewaÅž rÃģÅžnica w wydajności między nim a innymi modelami wykrywania obiektÃģw w czasie rzeczywistym była znacząca. Ale co sprawiło, Åže YOLO był tak wydajny? 

PorÃģwnując YOLO z algorytmami wykrywania obiektÃģw z tamtego czasu, moÅžna zauwaÅžyć, Åže te modele często wykonywały wiele iteracji na tym samym obrazie, co skutkowało brakiem dokładności i wyÅžszym czasem wykonania. Z drugiej strony, algorytm YOLO uÅžywa jednej warstwy w pełni połączonej do dokonywania prognoz na raz. 

Jak działa YOLO?

Istnieją trzy kroki, ktÃģre wyjaśniają, jak działa algorytm YOLO. 

Przeformułowanie wykrywania obiektÃģw jako pojedynczy problem regresji

Algorytm YOLO prÃģbuje przeformułować wykrywanie obiektÃģw jako pojedynczy problem regresji, w tym piksele obrazu, prawdopodobieństwa klasy i wspÃģłrzędne prostokątnej ramki. Dlatego algorytm musi spojrzeć na obraz tylko raz, aby przewidzieć i zlokalizować cele w obrazie. 

Uzasadnienie obrazu globalnie

Ponadto, kiedy algorytm YOLO dokonuje prognoz, uzasadnia obraz globalnie. RÃģÅžni się to od podejścia opartego na regionie i technice przesuwania, poniewaÅž algorytm YOLO widzi cały obraz podczas treningu i testowania na zbiorze danych i jest w stanie zakodować informacje kontekstowe o klasach i ich pojawieniu się. 

Przed YOLO, Fast R-CNN był jednym z najpopularniejszych algorytmÃģw wykrywania obiektÃģw, ktÃģry nie mÃģgł zobaczyć szerszego kontekstu w obrazie, poniewaÅž mylił tło w obrazie z obiektem. PorÃģwnując algorytm YOLO z algorytmem Fast R-CNN, YOLO jest o 50% bardziej dokładny, jeśli chodzi o błędy tła. 

UogÃģlnienie reprezentacji obiektÃģw

Wreszcie, algorytm YOLO rÃģwnieÅž dÄ…Åžy do uogÃģlnienia reprezentacji obiektÃģw w obrazie. W rezultacie, kiedy algorytm YOLO został uruchomiony na zbiorze danych z naturalnymi obrazami i przetestowany na wynikach, YOLO przewyÅžszył istniejące modele R-CNN o duŞą przewagę. To dlatego, Åže YOLO jest bardzo ogÃģlny, szansa na to, Åže zawiedzie przy wdroÅženiu na nieoczekiwanych danych wejściowych lub nowych domenach, była niewielka. 

YOLOv7: Co nowego?

Teraz, gdy mamy podstawowe zrozumienie tego, czym są modele wykrywania obiektÃģw w czasie rzeczywistym, i czym jest algorytm YOLO, czas omÃģwić algorytm YOLOv7. 

Optymalizacja procesu treningu

Algorytm YOLOv7 nie tylko prÃģbuje zoptymalizować architekturę modelu, ale rÃģwnieÅž dÄ…Åžy do zoptymalizowania procesu treningu. DÄ…Åžy do uÅžycia modułÃģw optymalizacji i metod, aby poprawić dokładność wykrywania obiektÃģw, wzmocnić koszt treningu, przy jednoczesnym utrzymaniu kosztu interferencji. Te moduły optymalizacji moÅžna nazwać workiem darmowych rzeczy. 

Przewodnictwo gruboziarniste do drobnoziarnistego

Algorytm YOLOv7 planuje uÅžyć nowego przewodnictwa gruboziarnistego do drobnoziarnistego zamiast konwencjonalnego dynamicznego przypisania etykiet. Jest to dlatego, Åže z dynamicznym przypisaniem etykiet, trening modelu z wieloma warstwami wyjściowymi powoduje pewne problemy, najczęstszym z nich jest to, jak przypisać dynamiczne cele dla rÃģÅžnych gałęzi i ich wyjść. 

Przypisanie parametrÃģw modelu

Przypisanie parametrÃģw modelu jest waÅžną koncepcją w wykrywaniu obiektÃģw, a jego uÅžycie jest zwykle poprzedzone pewnymi problemami podczas treningu. Algorytm YOLOv7 planuje uÅžyć koncepcji ścieÅžki propagacji gradientu, aby przeanalizować polityki przypisania parametrÃģw modelu stosowane do rÃģÅžnych warstw w sieci. 

Rozszerzone i złoÅžone skalowanie

Algorytm YOLOv7 wprowadza rÃģwnieÅž metody rozszerzonego i złoÅžonego skalowania, aby wykorzystać i efektywnie uÅžyć parametrÃģw i obliczeń do wykrywania obiektÃģw w czasie rzeczywistym. 

YOLOv7: Powiązane prace

Wykrywanie obiektÃģw w czasie rzeczywistym

YOLO jest obecnie standardem branÅžowym, a większość modeli wykrywania obiektÃģw w czasie rzeczywistym wdroÅžonych w YOLO i FCOS (Fully Convolutional One-Stage Object-Detection). Model wykrywania obiektÃģw w czasie rzeczywistym na poziomie stanu sztuki zwykle ma następujące cechy

  • Silniejsza i szybsza architektura sieci. 
  • Skuteczna metoda integracji cech. 
  • Dokładna metoda wykrywania obiektÃģw. 
  • Wydajna funkcja straty. 
  • Skuteczna metoda przypisania etykiet. 
  • Wydajna metoda treningu. 

Algorytm YOLOv7 nie uÅžywa samouczącego się uczenia i destylacji, ktÃģre często wymagają duÅžych ilości danych. Zamiast tego algorytm YOLOv7 uÅžywa metody worka darmowych rzeczy. 

Przypisanie parametrÃģw modelu

Techniki przypisania parametrÃģw modelu są uwaÅžane za technikę ensemble, ktÃģra łączy wiele modułÃģw obliczeniowych w fazie interferencji. Technika ta moÅžna podzielić na dwie kategorie, ensemble na poziomie modelu, i ensemble na poziomie modułu. 

Teraz, aby uzyskać ostateczny model interferencji, technika ensemble na poziomie modelu uÅžywa dwÃģch praktyk. Pierwsza praktyka uÅžywa rÃģÅžnych danych treningowych do treningu wielu identycznych modeli, a następnie średniej waÅžonych modeli treningowych. Zamiast tego, inna praktyka średniej waÅžonych modeli w rÃģÅžnych iteracjach. 

Przypisanie parametrÃģw modelu na poziomie modułu zyskuje coraz większą popularność, poniewaÅž dzieli moduł na rÃģÅžne gałęzie modułu lub rÃģÅžne identyczne gałęzie podczas fazy treningu, a następnie łączy te rÃģÅžne gałęzie w jeden moduł podczas interferencji. 

Jednak techniki przypisania parametrÃģw modelu nie mogą być stosowane do wszystkich typÃģw architektur. Jest to powodem, dla ktÃģrego algorytm YOLOv7 uÅžywa nowych technik przypisania parametrÃģw modelu, aby zaprojektować powiązane strategie dostosowane do rÃģÅžnych architektur. 

Skalowanie modelu

Skalowanie modelu jest procesem skalowania istniejącego modelu, aby pasował do rÃģÅžnych urządzeń obliczeniowych. Skalowanie modelu zwykle uÅžywa rÃģÅžnych czynnikÃģw, takich jak liczba warstw (głębokość), rozmiar wejściowych obrazÃģw (rozdzielczość), liczba piramid cech (etap), i liczba kanałÃģw (szerokość). Te czynniki odgrywają kluczową rolę w zapewnieniu wywaÅžonego kompromisu między parametrami sieci, prędkością interferencji, obliczeniami i dokładnością modelu. 

Jedną z najczęściej uÅžywanych metod skalowania jest wyszukiwanie architektury sieci (NAS), ktÃģre automatycznie wyszukuje odpowiednie czynniki skalowania z silnikÃģw wyszukiwania bez skomplikowanych reguł. GłÃģwną wadą uÅžywania NAS jest to, Åže jest to kosztowne podejście do wyszukiwania odpowiednich czynnikÃģw skalowania. 

Prawie kaÅždy model przypisania parametrÃģw analizuje indywidualne i unikalne czynniki skalowania niezaleÅžnie, a dodatkowo optymalizuje te czynniki niezaleÅžnie. Jest to dlatego, Åže architektura NAS działa z niezaleÅžnymi czynnikami skalowania. 

Warto zauwaÅžyć, Åže modele oparte na łączeniu, takie jak VoVNet lub DenseNet, zmieniają szerokość wejściową kilku warstw, gdy głębokość modelu jest skalowana. YOLOv7 opiera się na proponowanej architekturze łączenia, a zatem uÅžywa metody skalowania złoÅžonego. 

PowyÅžszy rysunek porÃģwnuje rozszerzone efektywne agregacje warstw (E-ELAN) rÃģÅžnych modeli. Metoda E-ELAN proponowana przez E-ELAN utrzymuje ścieÅžkę transmisji gradientu oryginalnej architektury, ale dÄ…Åžy do zwiększenia liczby cech dodanych za pomocą konwolucji grupowej. Proces ten moÅže poprawić cechy nauczone przez rÃģÅžne mapy i moÅže dodatkowo wykorzystać obliczenia i parametry w sposÃģb bardziej efektywny. 

Architektura YOLOv7

Model YOLOv7 uÅžywa modeli YOLOv4, YOLO-R i YOLOv4-Scaled jako podstawy. YOLOv7 jest wynikiem eksperymentÃģw przeprowadzonych na tych modelach w celu poprawy wynikÃģw i uczynienia modelu bardziej dokładnym. 

Rozszerzona efektywna agregacja warstw (E-ELAN)

E-ELAN jest podstawowym budulcem modelu YOLOv7 i jest pochodną istniejących modeli efektywności sieci, głÃģwnie ELAN. 

GłÃģwne rozwaÅžania przy projektowaniu efektywnej architektury są liczbą parametrÃģw, gęstością obliczeniową i ilością obliczeń. Inne modele rÃģwnieÅž biorą pod uwagę czynniki takie jak wpływ stosunku kanałÃģw wejściowych i wyjściowych, gałęzi w sieci, prędkości interferencji, liczby elementÃģw w tensorach sieci konwolucyjnej i więcej. 

Model CSPVoNet nie tylko bierze pod uwagę powyÅžsze parametry, ale rÃģwnieÅž analizuje ścieÅžkę gradientu, aby nauczyć się bardziej rÃģÅžnorodnych cech, umoÅžliwiając wagom rÃģÅžnych warstw. Podejście pozwala na interferencję, ktÃģra jest znacznie szybsza i dokładniejsza. Architektura ELAN dÄ…Åžy do zaprojektowania efektywnej sieci w celu kontrolowania najkrÃģtszej najdłuÅžszej ścieÅžki gradientu, aby sieć mogła być bardziej skuteczna w nauce i zbieÅžności. 

ELAN osiągnął juÅž stabilny stan, niezaleÅžnie od liczby blokÃģw obliczeniowych i długości ścieÅžki gradientu. Stan stabilny moÅže zostać zniszczony, jeśli bloki obliczeniowe są stosowane nieograniczenie, a wskaÅšnik wykorzystania parametrÃģw zmniejszy się. Proponowana architektura E-ELAN moÅže rozwiązać ten problem, uÅžywając rozszerzenia, przestawiania i łączenia kardynalności, aby ciągle poprawiać zdolność uczenia się sieci, przy zachowaniu oryginalnej ścieÅžki gradientu. 

Ponadto, porÃģwnując architekturę E-ELAN z ELAN, jedyna rÃģÅžnica jest w bloku obliczeniowym, podczas gdy architektura warstwy przejściowej pozostaje niezmieniona. 

E-ELAN proponuje rozszerzenie kardynalności blokÃģw obliczeniowych i rozszerzenie kanału za pomocą konwolucji grupowej. Mapa cech jest następnie obliczana i przestawiana w grupy zgodnie z parametrem grupy, a następnie łączona. Liczba kanałÃģw w kaÅždej grupie pozostaje taka sama jak w oryginalnej architekturze. Na koniec grupy map cech są dodawane w celu wykonania kardynalności. 

Skalowanie modelu dla modeli opartych na łączeniu

Skalowanie modelu pomaga w dostosowaniu atrybutÃģw modelu, co pomaga w generowaniu modeli zgodnie z wymaganiami i w rÃģÅžnych skalach, aby spełnić rÃģÅžne prędkości interferencji. 

PowyÅžszy rysunek dotyczy skalowania modelu dla rÃģÅžnych modeli opartych na łączeniu. Jak widać na rysunku (a) i (b), szerokość wyjściowa bloku obliczeniowego zwiększa się wraz ze zwiększeniem głębokości modelu. W rezultacie szerokość wejściowa warstw transmisyjnych jest zwiększona. Jeśli te metody są stosowane w architekturze opartej na łączeniu, proces skalowania jest wykonywany w głębokości, a jest to przedstawione na rysunku (c). 

MoÅžna zatem stwierdzić, Åže nie jest moÅžliwe analizowanie czynnikÃģw skalowania niezaleÅžnie dla modeli opartych na łączeniu, a raczej muszą być one rozwaÅžane razem. Dlatego dla modelu opartego na łączeniu naleÅžy uÅžyć odpowiedniej metody skalowania złoÅžonego. Dodatkowo, gdy czynnik głębokości jest skalowany, kanał wyjściowy bloku musi być rÃģwnieÅž skalowany. 

Worki darmowych rzeczy

Worki darmowych rzeczy to termin, ktÃģry deweloperzy uÅžywają do opisania zbioru metod lub technik, ktÃģre mogą zmienić strategię treningu lub koszt, aby poprawić dokładność modelu. Co to są worki darmowych rzeczy w YOLOv7? Zobaczmy. 

Planiowane przypisanie parametrÃģw konwolucji

Algorytm YOLOv7 uÅžywa ścieÅžek propagacji gradientu, aby określić, jak idealnie połączyć sieć z przypisanymi parametrÃģw konwolucji. Podejście YOLOv7 jest prÃģbą przeciwdziałania algorytmowi RepConv, ktÃģry chociaÅž działał dobrze na modelu VGG, działał słabo, gdy zastosowano go bezpośrednio do modeli DenseNet i ResNet. 

Aby zidentyfikować połączenia w warstwie konwolucyjnej, algorytm RepConv łączy konwolucję 3×3 i konwolucję 1×1. Jeśli przeanalizujemy algorytm, jego wydajność i architekturę, zobaczymy, Åže RepConv niszczy połączenie w DenseNet i resztę w ResNet. 

PowyÅžszy obraz przedstawia zaplanowany model z przypisanymi parametrÃģw. MoÅžna zobaczyć, Åže algorytm YOLOv7 stwierdził, Åže warstwa w sieci z połączeniami lub resztą nie powinna mieć połączenia toÅžsamościowego w algorytmie RepConv. W związku z tym jest dopuszczalne, aby zamienić go na RepConvN bez połączeń toÅžsamościowych. 

Gruboziarniste dla pomocniczego i drobnoziarniste dla wiodącego straty

Głębokie nadzorowanie to gałąŚ informatyki, ktÃģra często znajduje zastosowanie w procesie treningu głębokich sieci. Podstawowa zasada głębokiego nadzorowania polega na tym, Åže dodaje dodatkową głowę pomocniczą w środkowych warstwach sieci wraz z płytkimi wagami sieci z pomocniczą stratą jako przewodnikiem. Algorytm YOLOv7 odnosi się do głowy odpowiedzialnej za ostateczne wyjście jako głowa wiodąca, a głowa pomocnicza jest głową, ktÃģra pomaga w treningu. 

Przechodząc dalej, YOLOv7 uÅžywa innej metody przypisania etykiet. Konwencjonalnie, przypisanie etykiet było uÅžywane do generowania etykiet, odwołując się bezpośrednio do danych rzeczywistych i na podstawie danego zestawu reguł. Jednak w ostatnich latach, dystrybucja i jakość danych wejściowych odgrywają waÅžną rolę w generowaniu niezawodnej etykiety. YOLOv7 generuje miękką etykietę obiektu, uÅžywając prognoz pudełka i danych rzeczywistych. 

Ponadto, nowa metoda przypisania etykiet YOLOv7 uÅžywa prognoz głowy wiodącej, aby kierować zarÃģwno głową wiodącą, jak i pomocniczą. Metoda przypisania etykiet ma dwie proponowane strategie. 

Przewodnik głowy wiodącej

Strategia wykonuje obliczenia na podstawie wynikÃģw prognoz głowy wiodącej i danych rzeczywistych, a następnie uÅžywa optymalizacji, aby wygenerować miękkie etykiety. Te miękkie etykiety są następnie uÅžywane jako model treningowy zarÃģwno dla głowy wiodącej, jak i pomocniczej. 

Strategia opiera się na załoÅženiu, Åže poniewaÅž głowa wiodąca ma większą zdolność uczenia się, etykiety, ktÃģre generuje, powinny być bardziej reprezentatywne i skorelowane między ÅšrÃģdłem a celem. 

Gruboziarniste do drobnoziarnistego przewodnik głowy wiodącej

Ta strategia rÃģwnieÅž wykonuje obliczenia na podstawie wynikÃģw prognoz głowy wiodącej i danych rzeczywistych, a następnie uÅžywa optymalizacji, aby wygenerować miękkie etykiety. Istnieje jednak kluczowa rÃģÅžnica. W tej strategii istnieją dwa zestawy miękkich etykiet, poziom gruboziarnisty, i etykieta drobnoziarnista. 

Etykieta gruboziarnista jest generowana przez relaksację ograniczeń procesu przypisania prÃģbek pozytywnych, co traktuje więcej siatek jako cele pozytywne. Robi się to, aby uniknąć ryzyka utraty informacji z powodu słabszej siły uczenia się głowy pomocniczej. 

PowyÅžszy rysunek wyjaśnia uÅžycie worka darmowych rzeczy w algorytmie YOLOv7. Przedstawia gruboziarniste dla głowy pomocniczej i drobnoziarniste dla głowy wiodącej. PorÃģwnując model z głową pomocniczą (b) z modelem normalnym (a), zobaczymy, Åže schemat w (b) ma głowę pomocniczą, podczas gdy w (a) jej nie ma. 

Rysunek (c) przedstawia wspÃģlny niezaleÅžny przypisujący etykiety, podczas gdy rysunek (d) i (e) odpowiednio reprezentują przewodnik głowy wiodącej i gruboziarnisty do drobnoziarnistego przewodnika uÅžywanego przez YOLOv7.  

Inne worki darmowych rzeczy

Ponadto, algorytm YOLOv7 uÅžywa dodatkowych workÃģw darmowych rzeczy, chociaÅž nie zostały one pierwotnie zaproponowane przez nich. Są to

  • Normalizacja batch w technologii Conv-Bn-Aktivacja: Ta strategia jest uÅžywana do połączenia warstwy konwolucyjnej bezpośrednio z warstwą normalizacji batch. 
  • Wiedza niejawna w YOLOR: Algorytm YOLOv7 łączy tę strategię z mapą cech konwolucyjnej. 
  • Model EMA: Model EMA jest uÅžywany jako ostateczny model referencyjny w YOLOv7, chociaÅž jego podstawowe zastosowanie jest w metodzie nauczyciela średniego. 

YOLOv7: Eksperymenty

Ustawienia eksperymentalne

Algorytm YOLOv7 uÅžywa zbioru danych Microsoft (MSFT ) COCO do treningu i walidacji modelu wykrywania obiektÃģw, a nie wszystkie z tych eksperymentÃģw uÅžywają wstępnie wytrenowanego modelu. Deweloperzy uÅžyli zbioru danych treningowych z 2017 roku do treningu, a następnie uÅžyli zbioru danych walidacyjnych z 2017 roku do wyboru hiperparametrÃģw. Na koniec wyniki wykrywania obiektÃģw YOLOv7 są porÃģwnywane z algorytmami stanu sztuki dla wykrywania obiektÃģw. 

Deweloperzy zaprojektowali podstawowy model dla brzegowego GPU (YOLOv7-tiny), zwykłego GPU (YOLOv7) i chmury GPU (YOLOv7-W6). Ponadto, algorytm YOLOv7 uÅžywa rÃģwnieÅž podstawowego modelu do skalowania modelu zgodnie z rÃģÅžnymi wymaganiami usługowymi i uzyskuje rÃģÅžne modele. Dla algorytmu YOLOv7 skalowanie stosu jest wykonywane na szyi, a proponowane związki są uÅžywane do skalowania głębokości i szerokości modelu. 

Punkty odniesienia

Algorytm YOLOv7 uÅžywa poprzednich modeli YOLO i algorytmu wykrywania obiektÃģw YOLOR jako punktÃģw odniesienia.

PowyÅžszy rysunek porÃģwnuje punkt odniesienia modelu YOLOv7 z innymi modelami wykrywania obiektÃģw, a wyniki są dość oczywiste. PorÃģwnując go z algorytmem YOLOv4, YOLOv7 uÅžywa 75% mniej parametrÃģw, uÅžywa 15% mniej obliczeń i ma o 0,4% wyÅžszą dokładność. 

PorÃģwnanie z modelem wykrywania obiektÃģw stanu sztuki

PowyÅžszy rysunek pokazuje wyniki, gdy YOLOv7 jest porÃģwnywany z modelem wykrywania obiektÃģw stanu sztuki dla mobilnych i ogÃģlnych GPU. MoÅžna zobaczyć, Åže metoda zaproponowana przez algorytm YOLOv7 ma najlepszy wynik handlu między szybkością a dokładnością. 

Studium ablacjne: Proponowana metoda skalowania złoÅžonego

PowyÅžszy rysunek porÃģwnuje wyniki uÅžywania rÃģÅžnych strategii do skalowania modelu. Strategia skalowania w modelu YOLOv7 skaluje głębokość bloku obliczeniowego o 1,5 razy, a skaluje szerokość o 1,25 razy. 

PorÃģwnując go z modelem, ktÃģry skaluje tylko głębokość, model YOLOv7 działa lepiej o 0,5%, przy uÅžyciu mniej parametrÃģw i mocy obliczeniowej. Z drugiej strony, porÃģwnując go z modelem, ktÃģry skaluje tylko głębokość, dokładność YOLOv7 jest poprawiona o 0,2%, ale liczba parametrÃģw musi być skalowana o 2,9%, a obliczenia o 1,2%. 

Proponowany planowany model z przypisanymi parametrÃģw

Aby zweryfikować powszechność swojego proponowanego modelu z przypisanymi parametrÃģw, algorytm YOLOv7 uÅžywa go na modelach opartych na resztach i modelach opartych na łączeniu do weryfikacji. Do weryfikacji algorytm YOLOv7 uÅžywa 3-stacked ELAN dla modelu opartego na łączeniu, a CSPDarknet dla modelu opartego na resztach. 

Dla modelu opartego na łączeniu algorytm YOLOv7 zastępuje warstwy konwolucyjne 3×3 w 3-stacked ELAN z RepConv. PoniÅžszy rysunek pokazuje szczegÃģłową konfigurację planowanego RepConv i 3-stacked ELAN. 

Ponadto, przy pracy z modelem opartym na resztach, algorytm YOLOv7 uÅžywa odwrÃģconego bloku ciemnego, poniewaÅž oryginalny blok ciemny nie ma warstwy konwolucyjnej 3×3. PoniÅžszy rysunek pokazuje architekturę odwrÃģconego CSPDarknet, ktÃģry odwraca połoÅženie warstw konwolucyjnych 3×3 i 1×1. 

Proponowany asystent straty dla głowy pomocniczej

Dla asystenta straty dla głowy pomocniczej model YOLOv7 porÃģwnuje niezaleÅžne przypisanie etykiet dla głowy pomocniczej i głowy wiodącej. 

PowyÅžszy rysunek zawiera wyniki studium proponowanego asystenta głowy pomocniczej. MoÅžna zobaczyć, Åže ogÃģlna wydajność modelu wzrasta wraz ze wzrostem asystenta straty. Ponadto, przypisanie etykiet przewodzone przez głowę wiodącą zaproponowane przez algorytm YOLOv7 działa lepiej niÅž niezaleÅžne strategie przypisania etykiet. 

Wyniki YOLOv7

Na podstawie powyÅžszych eksperymentÃģw, poniÅžej przedstawiono wyniki wydajności YOLOv7 w porÃģwnaniu z innymi algorytmami wykrywania obiektÃģw. 

PowyÅžszy rysunek porÃģwnuje model YOLOv7 z innymi algorytmami wykrywania obiektÃģw, a moÅžna wyraÅšnie zobaczyć, Åže model YOLOv7 przewyÅžsza inne modele wykrywania obiektÃģw pod względem średniej precyzji (AP) w stosunku do interferencji wsadowej. 

Ponadto, poniÅžszy rysunek porÃģwnuje wyniki YOLOv7 z innymi algorytmami wykrywania obiektÃģw w czasie rzeczywistym. Ponownie, YOLOv7 przewyÅžsza inne modele pod względem ogÃģlnej wydajności, dokładności i wydajności. 

PoniÅžej przedstawiono dodatkowe obserwacje z wynikÃģw YOLOv7 i wynikÃģw. 

  1. YOLOv7-Tiny jest najmniejszym modelem w rodzinie YOLO, z ponad 6 milionami parametrÃģw. YOLOv7-Tiny ma średnią precyzję 35,2%, i przewyÅžsza model YOLOv4-Tiny o porÃģwnywalnych parametrach. 
  2. Model YOLOv7 ma ponad 37 milionÃģw parametrÃģw i przewyÅžsza modele o wyÅžszych parametrach, takie jak YOLov4. 
  3. Model YOLOv7 ma najwyŞszy wskaŚnik mAP i FPS w zakresie od 5 do 160 FPS. 

Podsumowanie

YOLO lub „Patrzysz tylko raz” to stan sztuki modelu wykrywania obiektÃģw w nowoczesnej wizji komputerowej. Algorytm YOLO jest znany ze swojej wysokiej dokładności i wydajności, i w związku z tym znajduje szerokie zastosowanie w branÅžy wykrywania obiektÃģw w czasie rzeczywistym. Od momentu wprowadzenia pierwszego algorytmu YOLO w 2016 roku, eksperymenty pozwoliły deweloperom na ciągłe ulepszanie modelu. 

Model YOLOv7 jest najnowszym dodatkiem do rodziny YOLO, i jest najpotęŞniejszym algorytmem YOLO do tej pory. W tym artykule omÃģwiliśmy podstawy YOLOv7 i prÃģbowaliśmy wyjaśnić, co sprawia, Åže YOLOv7 jest tak wydajny. 

"InÅžynier z zawodu, pisarz z serca". Kunal jest technicznym pisarzem z głęboką miłością i zrozumieniem AI i ML, poświęconym uproszczeniu złoÅžonych pojęć w tych dziedzinach poprzez swoje angaÅžujące i informacyjne dokumentacje.