Modele i platformy AI
YOLOv7: Najbardziej Zaawansowany Algorytm Wykrywania ObiektÃģw?

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.Â
- 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.Â
- Model YOLOv7 ma ponad 37 milionÃģw parametrÃģw i przewyÅžsza modele o wyÅžszych parametrach, takie jak YOLov4.Â
- 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.Â












