Kunstig intelligens

YOLOv7: Den mest avancerede objektgenkendelsesalgoritme?

mm

6. juli 2022 vil blive markeret som en milepæl i AI-historien, da det var på denne dag, at YOLOv7 blev frigivet. Siden dens lancering har YOLOv7 været det hotteste emne i Computer Vision-udviklerfællesskabet, og det er ikke uden grund. YOLOv7 bliver allerede betragtet som en milepæl i objektgenkendelsesindustrien.

Kort efter, at YOLOv7-papiret blev offentliggjort, dukkede det op som den hurtigste og mest nøjagtige realtidsobjektgenkendelsesmodel. Men hvordan udgør YOLOv7 sine forgængere? Hvad gør YOLOv7 så effektiv til at udføre computer vision-opgaver?

I denne artikel vil vi forsøge at analysere YOLOv7-modellen og forsøge at finde svaret på, hvorfor YOLOv7 nu bliver branchestandard. Men før vi kan besvare det, må vi have et kig på den korte historie om objektgenkendelse.

Hvad er objektgenkendelse?

Objektgenkendelse er en gren af computer vision, der identificerer og lokaliserer objekter i et billede eller en video-fil. Objektgenkendelse er byggestenene for utallige anvendelser, herunder selvkørende biler, overvågning og selv robotter.

En objektgenkendelsesmodel kan klassificeres i to forskellige kategorier, single-shot-detectorer og multi-shot-detectorer.

Realtidsobjektgenkendelse

For at forstå, hvordan YOLOv7 fungerer, er det essentiel for os at forstå YOLOv7’s hovedformål, “Realtidsobjektgenkendelse”. Realtidsobjektgenkendelse er en nøglekomponent i moderne computer vision. Realtidsobjektgenkendelsesmodellerne forsøger at identificere og lokalisere objekter af interesse i realtid. Realtidsobjektgenkendelsesmodeller har gjort det meget effektivt for udviklere at spore objekter af interesse i en bevægelig ramme, som en video eller en live-overvågningsindtastning.

Realtidsobjektgenkendelsesmodeller er essentielt et skridt foran de konventionelle billedgenkendelsesmodeller. Mens den førstnævnte bruges til at spore objekter i video-filer, lokaliserer og identificerer den sidstnævnte objekter inden for en stationær ramme, som et billede.

Som følge heraf er realtidsobjektgenkendelsesmodeller meget effektive til videoanalyse, selvkørende køretøjer, objekt-tælling, multi-objekt-sporing og meget mere.

Hvad er YOLO?

YOLO eller “You Only Look Once” er en familie af realtidsobjektgenkendelsesmodeller. YOLO-konceptet blev første gang introduceret i 2016 af Joseph Redmon, og det var straks en sensation, da det var meget hurtigere og mere nøjagtigt end de eksisterende objektgenkendelsesalgoritmer. Det tog ikke lang tid, før YOLO-algoritmen blev en standard i computer vision-industrien.

Det grundlæggende koncept, som YOLO-algoritmen foreslår, er at bruge et end-to-end neuralt netværk med begrænsningsbokse og klasse-sandsynligheder til at gøre forudsigelser i realtid. YOLO var anderledes end den forrige objektgenkendelsesmodel, da den foreslog en anden tilgang til at udføre objektgenkendelse ved at ombruge klassificatorer.

Ændringen i tilgangen virkede, da YOLO snart blev branchestandarden, og performancesforskellen mellem sig selv og andre realtidsobjektgenkendelsesalgoritmer var betydelig. Men hvad var årsagen til, at YOLO var så effektiv?

Når det sammenlignes med YOLO, brugte objektgenkendelsesalgoritmerne på det tidspunkt Region Proposal Networks til at detektere mulige områder af interesse. Genkendelsesprocessen blev derefter udført på hvert område separat. Som følge heraf udførte disse modeller ofte multiple iterationer på samme billede, og derfor manglede nøjagtighed og havde en højere eksekveringstid. På den anden side bruger YOLO-algoritmen en enkelt fuldt forbundet lag til at udføre forudsigelsen på én gang.

Hvordan fungerer YOLO?

Der er tre skridt, der forklarer, hvordan en YOLO-algoritme fungerer.

Omdefinering af objektgenkendelse som et enkelt regressionproblem

YOLO-algoritmen forsøger at omdefinere objektgenkendelse som et enkelt regressionproblem, herunder billedpixels, til klasse-sandsynligheder og begrænsningsboks-koordinater. Derfor behøver algoritmen kun at se på billedet én gang for at forudsige og lokalisere målobjektet i billedet.

Begrundelse af billedet globalt

Desuden, når YOLO-algoritmen gør forudsigelser, begrunder den billedet globalt. Det er anderledes end region-proposal-baserede og glide-teknikker, da YOLO-algoritmen ser på det fulde billede under træning og testning på datasættet og kan kode kontekstuel information om klasserne og hvordan de optræder.

Før YOLO var Fast R-CNN en af de mest populære objektgenkendelsesalgoritmer, der ikke kunne se den større kontekst i billedet, da den brugte til at forveksle baggrundspunkter i et billede med et objekt. Når det sammenlignes med Fast R-CNN-algoritmen, er YOLO 50% mere nøjagtigt, når det kommer til baggrundfejl.

Generalisering af objektrepræsentationer

Til sidst forsøger YOLO-algoritmen også at generalisere repræsentationerne af objekter i et billede. Som følge heraf, når en YOLO-algoritme blev kørt på en datasæt med naturlige billeder og testet for resultaterne, overgik YOLO eksisterende R-CNN-modeller med et stort margin. Det er, fordi YOLO er højtydigt generaliserbar, og sandsynligheden for, at den bryder sammen, når den implementeres på uventede input eller nye domæner, er lille.

YOLOv7: Hvad er nyt?

Nu, hvor vi har en grundlæggende forståelse af, hvad realtidsobjektgenkendelsesmodeller er, og hvad YOLO-algoritmen er, er det tid til at diskutere YOLOv7-algoritmen.

Optimering af træningsprocessen

YOLOv7-algoritmen forsøger ikke kun at optimere modellens arkitektur, men den forsøger også at optimere træningsprocessen. Den forsøger at bruge optimeringsmoduler og -metoder til at forbedre nøjagtigheden af objektgenkendelse, styrke omkostningerne for træning, samtidig med at den opretholder interferensomkostningerne. Disse optimeringsmoduler kan henvises til som en trænbar pose af gratisvarer.

Groft til fin led-guideret mærkeafdeling

YOLOv7-algoritmen planlægger at bruge en ny groft til fin led-guideret mærkeafdeling i stedet for den konventionelle Dynamic Label Assignment. Det er, fordi med dynamisk mærkeafdeling, træning af en model med multiple output-lag påfører nogle problemer, det mest almindelige af dem er, hvordan man tildeler dynamiske mål for forskellige grene og deres output.

Model-reparametrisering

Model-reparametrisering er et vigtigt koncept i objektgenkendelse, og dets brug følges ofte med nogle problemer under træning. YOLOv7-algoritmen planlægger at bruge konceptet om gradient-propagationsvej til at analysere model-reparametriseringspolitikkerne, der er anvendelige på forskellige lag i netværket.

Udvidelse og sammensat skala

YOLOv7-algoritmen introducerer også udvidede og sammensatte skala-metoder til at udnytte og effektivt bruge parametre og beregninger til realtidsobjektgenkendelse.

YOLOv7: Relateret arbejde

Realtidsobjektgenkendelse

YOLO er nu branchestandarden, og de fleste realtidsobjektgenkendelsesmodeller deployer YOLO-algoritmer og FCOS (Fully Convolutional One-Stage Object-Detection). En state-of-the-art realtidsobjektgenkendelsesmodel har normalt følgende karakteristika

  • Stærkere og hurtigere netværksarkitektur.
  • En effektiv funktionssammensætningsmetode.
  • En nøjagtig objektgenkendelsesmetode.
  • En robust tab-funktion.
  • En effektiv mærkeafdelingsmetode.
  • En effektiv træningsmetode.

YOLOv7-algoritmen bruger ikke selv-supervised læring og destillationsmetoder, der ofte kræver store mængder data. I stedet bruger YOLOv7-algoritmen en trænbar pose af gratisvarer-metode.

Model-reparametrisering

Model-reparametriseringsteknikker betragtes som en ensemble-teknik, der kombinerer multiple beregningsmoduler i en interferens-fase. Teknikken kan yderligere deles op i to kategorier, model-niveau ensemble og modul-niveau ensemble.

For at opnå den endelige interferensmodel, bruger model-niveau reparametriseringsteknikken to praksisser. Den første praksis bruger forskellige træningsdata til at træne multiple identiske modeller og derefter gennemsnitligger vægtene af de trænede modeller. Alternativt bruger den anden praksis vægtene af modeller under forskellige iterationer.

Modul-niveau reparametrisering er ved at vinde stor popularitet, da den splitter en modul op i forskellige modul-grene eller forskellige identiske grene under træningsfasen og derefter integrerer disse forskellige grene i en ækvivalent modul under interferens.

Men reparametriseringsteknikker kan ikke anvendes på alle typer af arkitektur. Det er derfor, YOLOv7-algoritmen bruger nye model-reparametriseringsteknikker til at designe relaterede strategier, der er egnet for forskellige arkitekturer.

Model-skala

Model-skala er processen med at skala en eksisterende model op eller ned, så den passer til forskellige beregningsenheder. Model-skala bruger normalt en række faktorer som antallet af lag (dybde), størrelsen af input-billeder (opløsning), antallet af funktionspyramider (stadie) og antallet af kanaler (bredde). Disse faktorer spiller en afgørende rolle i at sikre en balanceret afvejning mellem netværksparametre, interferenshastighed, beregning og modellens nøjagtighed.

En af de mest almindeligt brugte skala-metoder er NAS eller Network Architecture Search, der automatisk søger efter passende skala-faktorer fra søgemaskiner uden nogen komplicerede regler. Den største ulempe ved at bruge NAS er, at det er en dyrekøbsmetode til at søge efter passende skala-faktorer.

Næsten hver model-reparametriseringsmodel analyserer individuelle og unikke skala-faktorer uafhængigt og optimerer derefter disse faktorer uafhængigt. Det er, fordi NAS-arkitekturen arbejder med ikke-korrelerede skala-faktorer.

Det er værd at bemærke, at konkateneringsbaserede modeller som VoVNet eller DenseNet ændrer input-bredde af nogle lag, når modellens dybde skalaeres. YOLOv7 arbejder på en foreslået konkateneringsbaseret arkitektur og bruger derfor en sammensat skala-metode.

Figuren ovenfor sammenligner udvidede effektive lag-aggregationsnetværk (E-ELAN) af forskellige modeller. Den foreslåede E-ELAN-metode opretholder gradient-transmissionsvejen af den originale arkitektur, men forsøger at øge kardinaliteten af de tilføjede funktioner ved hjælp af gruppe-konvolution. Processen kan forbedre funktionerne, der læres af forskellige kort, og kan yderligere gøre brugen af beregninger og parametre mere effektiv.

YOLOv7-arkitektur

YOLOv7-modellen bruger YOLOv4-, YOLO-R- og Scaled YOLOv4-modellerne som grundlag. YOLOv7 er resultatet af eksperimenterne, der er udført på disse modeller for at forbedre resultaterne og gøre modellen mere nøjagtig.

Udvidet effektiv lag-aggregationsnetværk eller E-ELAN

E-ELAN er den grundlæggende byggesten i YOLOv7-modellen og er afledt af allerede eksisterende modeller på netværks-effektivitet, primært ELAN.

De vigtigste overvejelser, når man designer en effektiv arkitektur, er antallet af parametre, beregnings-tæthed og mængden af beregning. Andre modeller overvejer også faktorer som indflydelsen af input/output-kanal-forhold, grene i arkitektur-netværket, netværks-interferenshastighed, antallet af elementer i tensorerne af konvolutionsnetværket og mere.

CSPVoNet-modellen overvejer ikke kun ovennævnte parametre, men analyserer også gradient-paden for at lære mere diverse funktioner ved at aktivere vægtene af forskellige lag. Tilgangen tillader interferenserne at være meget hurtigere og mere nøjagtige. ELAN-arkitekturen forsøger at designe et effektivt netværk til at kontrollere den korteste længste gradient-paden, så netværket kan være mere effektivt i læring og konvergering.

ELAN har allerede nået en stabil fase uanset antallet af stabile komponent-blokke og gradient-paden. Den stabile tilstand kan ødelægges, hvis komponent-blokke stablet ubegrænset, og parameter-udnyttelsesraten vil formindskes. Den foreslåede E-ELAN-arkitektur kan løse problemet, da den bruger udvidelse, ombytning og sammensætning af kardinalitet til at kontinuerligt forbedre netværkets lærings-evne, samtidig med at den opretholder den originale gradient-paden.

Desuden, når man sammenligner E-ELAN-arkitekturen med ELAN, er den eneste forskel i komponent-blokken, mens overgangslagets arkitektur er uændret.

E-ELAN foreslår at udvide kardinaliteten af komponent-blokke og udvide kanalen ved hjælp af gruppe-konvolution. Funktionen vil derefter blive beregnet og ombyttet i grupper efter gruppe-parametrene og derefter sammensat. Antallet af kanaler i hver gruppe vil forblive det samme som i den originale arkitektur. Til sidst vil grupperne af funktioner blive tilføjet for at udføre kardinalitet.

Model-skala for konkateneringsbaserede modeller

Model-skala hjælper med at justere attributter af modellerne, der hjælper med at generere modeller efter behov og i forskellige skalaer for at opfylde forskellige interferenshastigheder.

Figuren ovenfor diskuterer model-skala for forskellige konkateneringsbaserede modeller. Som du kan se i figur (a) og (b), øges output-bredde af komponent-blokken med en øgning i modellens dybde-skala. Resultatet er, at input-bredde af transmissions-lagene øges. Hvis disse metoder implementeres på konkateneringsbaseret arkitektur, udføres skala-processen i dybde, og det er afbildet i figur (c).

Det kan derfor konkluderes, at det ikke er muligt at analysere skala-faktorerne uafhængigt for konkateneringsbaserede modeller, og de skal derfor overvejes eller analyseres sammen. Derfor er det passende at bruge den tilsvarende sammensatte model-skala-metode for en konkateneringsbaseret model. Desuden, når dybde-faktoren skalaeres, skal output-kanalen af blokken også skalaeres.

Trænbar pose af gratisvarer

En pose af gratisvarer er en term, der bruges af udviklere til at beskrive en samling af metoder eller teknikker, der kan ændre træningsstrategien eller omkostningerne i et forsøg på at forbedre modellens nøjagtighed. Så hvad er disse trænbare poser af gratisvarer i YOLOv7? Lad os se.

Planlagt reparametriseret konvolution

YOLOv7-algoritmen bruger gradient-propagationsvej til at bestemme, hvordan man kombinerer en netværks-reparametriseret konvolution. Denne tilgang af YOLOv7 er et forsøg på at modstå RepConv-algoritmen, der selvom den har udført serenely på VGG-modellen, udfører dårligt, når den anvendes direkte på DenseNet- og ResNet-modellerne.

For at identificere forbindelserne i en konvolutionslag, kombinerer RepConv-algoritmen 3×3-konvolution og 1×1-konvolution.

Billedet ovenfor afbilder en planlagt reparametriseret model. Det kan ses, at YOLOv7-algoritmen fandt, at et lag i netværket med konkatenerings- eller residuelle forbindelser ikke skulle have en identitets-forbindelse i RepConv-algoritmen. Resultatet er, at det er acceptabelt at skifte med RepConvN uden identitets-forbindelse.

Groft for auxiliær og fin for led-forluster

Dybe supervision er en gren af datalogi, der ofte finder sin anvendelse i træningsprocessen af dybe netværk. Det grundlæggende princip i dyb supervision er, at det tilføjer en ekstra auxiliær-hoved i midten af netværket sammen med de flade netværks-vægte med assistent-tab som vejleder. YOLOv7-algoritmen henviser til hovedet, der er ansvarligt for den endelige output, som led-hoved, og auxiliær-hoved er hovedet, der assisterer i træningen.

Yderligere bruger YOLOv7 en anden metode til mærkeafdeling. Konventionelt er mærkeafdeling blevet brugt til at generere mærker ved at henviser direkte til grund-sandheden og på baggrund af en given sæt af regler. Imidlertid spiller fordelingen og kvaliteten af forudsigelses-input en vigtig rolle i at generere et pålideligt mærke. YOLOv7 genererer et blødt mærke for objektet ved at bruge forudsigelserne af begrænsningsboks og grund-sandhed.

Desuden bruger YOLOv7-algoritmens nye mærkeafdelingsmetode led-hovedets forudsigelses-resultater til at vejlede både led- og auxiliær-hoved. Mærkeafdelingsmetoden har to foreslåede strategier.

Led-hoved-vejledt mærkeafdelings-assigner

Strategien udfører beregninger på baggrund af led-hovedets forudsigelses-resultater og grund-sandheden og derefter bruger optimering til at generere bløde mærker. Disse bløde mærker bruges derefter som træningsmodel for både led-hoved og auxiliær-hoved.

Strategien fungerer på antagelsen af, at da led-hoved har en større lærings-evne, skal mærkerne, det genererer, være mere repræsentative og korrelerer mellem kilde- og mål.

Groft-til-fin led-hoved-vejledt mærkeafdelings-assigner

Denne strategi udfører også beregninger på baggrund af led-hovedets forudsigelses-resultater og grund-sandheden og derefter bruger optimering til at generere bløde mærker. Imidlertid er der en væsentlig forskel. I denne strategi er der to sæt af bløde mærker, groft niveau og fin mærke.

Det grofte mærke genereres ved at afslappe begrænsningerne for den positive prøve-tildegningsprocessen, der behandler flere gitter som positive mål. Det gøres for at undgå risikoen for at miste information på grund af auxiliær-hovedets svagere lærings-styrke.

Figuren ovenfor forklarer brugen af en trænbar pose af gratisvarer i YOLOv7-algoritmen. Det afbilder groft for auxiliær-hoved og fin for led-hoved. Når vi sammenligner en model med auxiliær-hoved (b) med en normal model (a), vil vi observere, at skemaet i (b) har et auxiliær-hoved, mens det ikke er i (a).

Figuren (c) afbilder den almindelige uafhængige mærkeafdelings-assigner, mens figur (d) og figur (e) henholdsvis repræsenterer led-vejledt assigner og groft-til-fin led-vejledt assigner, der bruges af YOLOv7.

Andre trænbare poser af gratisvarer

Ud over de ovennævnte bruger YOLOv7-algoritmen yderligere trænbare poser af gratisvarer, selvom de ikke blev foreslået af dem oprindeligt. De er

  • Batch-normalisering i Conv-Bn-Activation-teknologi: Denne strategi bruges til at tilslutte en konvolutionslag direkte til batch-normaliseringslaget.
  • Implicit viden i YOLOR: YOLOv7 kombinerer strategien med konvolutionsfunktionen.
  • EMA-model: EMA-modellen bruges som en slut-reference-model i YOLOv7, selvom dens primære brug er til at blive brugt i den gennemsnitlige lærer-metode.

YOLOv7: Eksperimenter

Eksperimentel opsætning

YOLOv7-algoritmen bruger Microsoft COCO-datasættet til træning og validering af deres objektgenkendelsesmodel, og ikke alle disse eksperimenter bruger en fortrænet model. Udviklerne brugte 2017-træningsdatasættet til træning og brugte 2017-valideringsdatasættet til at vælge hyperparametrene. Til sidst sammenlignes YOLOv7-objektgenkendelsesresultaterne med state-of-the-art-algoritmer for objektgenkendelse.

Udviklerne designede en basis-model for kant-GPU (YOLOv7-tiny), normal GPU (YOLOv7) og cloud-GPU (YOLOv7-W6). Desuden bruger YOLOv7-algoritmen også en basis-model til model-skala efter forskellige service-krav og får forskellige modeller. For YOLOv7-algoritmen udføres stak-skala på halsen, og foreslåede sammensatte er brugt til at skala op dybde og bredde af modellen.

Baseline

YOLOv7-algoritmen bruger tidligere YOLO-modeller og YOLOR-objektgenkendelsesalgoritmen som baseline.

Figuren ovenfor sammenligner baseline af YOLOv7-modellen med andre objektgenkendelsesmodeller, og resultaterne er ret åbenlyse. Når det sammenlignes med YOLOv4-algoritmen, bruger YOLOv7 ikke kun 75% færre parametre, men det bruger også 15% færre beregning og har 0,4% højere nøjagtighed. 

Sammenligning med state-of-the-art objektgenkendelsesmodeller

Figuren ovenfor viser resultaterne, når YOLOv7 sammenlignes med state-of-the-art objektgenkendelsesmodeller for mobile og generelle GPU’er. Det kan observeres, at metoden foreslået af YOLOv7-algoritmen har den bedste hastighed-nøjagtigheds-handel.

Ablationsstudie: Foreslået sammensat skala-metode

Figuren ovenfor sammenligner resultaterne af at bruge forskellige strategier til at skala op modellen. Skala-strategien i YOLOv7-modellen skalaer op dybden af komponent-blokken med 1,5 gange og skalaer bredde med 1,25 gange.

Når det sammenlignes med en model, der kun skalaer op dybden, udfører YOLOv7-modellen bedre med 0,5%, mens den bruger færre parametre og beregning. På den anden side, når det sammenlignes med modeller, der kun skalaer op dybden, forbedrer YOLOv7’s nøjagtighed med 0,2%, men antallet af parametre skal skalaeres med 2,9%, og beregning med 1,2%.

Foreslået planlagt reparametriseret model

For at verificere almenheden af dens foreslåede reparametriserede model, bruger YOLOv7-algoritmen den på residual-baserede og konkateneringsbaserede modeller til verificering. Til verificeringsprocessen bruger YOLOv7-algoritmen 3-stacked ELAN til konkateneringsbaseret model og CSPDarknet til residual-baseret model.

For konkateneringsbaseret model erstatter algoritmen 3×3-konvolutionslagene i 3-stacked ELAN med RepConv. Figuren nedenfor viser den detaljerede konfiguration af Planlagt RepConv og 3-stacked ELAN.

Desuden, når det kommer til residual-baseret model, bruger YOLOv7-algoritmen en omvendt mørk blok, da den originale mørke blok ikke har en 3×3-konvolutionsblok. Figuren nedenfor viser arkitekturen af den omvendte CSPDarknet, der omvender positionerne af 3×3- og 1×1-konvolutionslagene.

Forelagt assistent-tab for auxiliær-hoved

For assistent-tab for auxiliær-hoved sammenligner YOLOv7-modellen den uafhængige mærkeafdeling for auxiliær-hoved og led-hoved-metoder.

Figuren ovenfor indeholder resultaterne af studiet om den foreslåede auxiliær-hoved. Det kan ses, at den samlede præstation af modellen øger med en øgning i assistent-tab. Desuden udfører led-vejledt mærkeafdeling foreslået af YOLOv7-modellen bedre end uafhængige led-tildegningsstrategier.

YOLOv7-resultater

Basert på ovennævnte eksperimenter, her er resultaterne af YOLOv7’s præstation, når det sammenlignes med andre objektgenkendelsesalgoritmer.

Figuren ovenfor sammenligner YOLOv7-modellen med andre objektgenkendelsesalgoritmer, og det kan tydeligt ses, at YOLOv7 overgår andre objektgenkendelsesmodeller i forhold til Gennemsnitlig Præcision (AP) v/s batch-interferens.

Desuden sammenligner figuren nedenfor YOLOv7’s præstation med andre realtidsobjektgenkendelsesalgoritmer. Endnu en gang overgår YOLOv7 andre modeller i forhold til den samlede præstation, nøjagtighed og effektivitet.

Her er nogle yderligere observationer fra YOLOv7-resultater og -præstationer.

  1. YOLOv7-Tiny er den mindste model i YOLO-familien, med over 6 millioner parametre. YOLOv7-Tiny har en gennemsnitlig præcision på 35,2%, og det overgår YOLOv4-Tiny-modellerne med sammenlignelige parametre.
  2. YOLOv7-modellen har over 37 millioner parametre og overgår modeller med højere parametre som YOLov4.
  3. YOLOv7-modellen har den højeste mAP og FPS-rate i området fra 5 til 160 FPS.

Konklusion

YOLO eller You Only Look Once er den mest avancerede objektgenkendelsesmodel i moderne computer vision. YOLO-algoritmen er kendt for sin høje nøjagtighed og effektivitet og finder derfor udstrakt anvendelse i realtidsobjektgenkendelsesindustrien. Siden den første YOLO-algoritme blev introduceret tilbage i 2016, har eksperimenter gjort det muligt for udviklere at forbedre modellen kontinuerligt.

YOLOv7-modellen er den seneste tilføjelse til YOLO-familien og er den mest kraftfulde YOLO-algoritme til dato. I denne artikel har vi talt om grundlæggende principper for YOLOv7 og forsøgt at forklare, hvad der gør YOLOv7 så effektiv.

En ingeniør af profession, en forfatter af hjerte. Kunal er en teknisk forfatter med en dyb kærlighed og forståelse af AI og ML, dedikeret til at forenkle komplekse koncepter inden for disse felter gennem sin engagerende og informative dokumentation.