YOLO-NAS är toppen av objektdetekteringsmodeller i YOLO-serien. Men varför anses den vara den bästa?

Efter YOLOv8 finns det ännu en ny och bättre toppmodern objektdetekteringsmodell, YOLO-NAS. Det är en objektdetekteringsalgoritm utvecklad av Deci AI för att ta itu med begränsningarna hos de tidigare YOLO-modellerna (You Only Look Once).

Modellen är byggd från AutoNAC, en sökmotor för neural arkitektur. Det överträffar hastigheten och prestandan hos SOTA-modeller, vilket ger ett stort steg i objektdetektering genom att förbättra avvägningarna för noggrannhet-latency och kvantiseringsstöd.

Den här artikeln kommer att diskutera styrkorna och funktionerna hos YOLO-NAS, och utforska varför det är den bästa objektdetekteringsmodellen i YOLO-serien.

Förstå hur YOLO-NAS fungerar

Decis AutoNAC (Automated Neural Architecture Construction) genererar YOLO-NAS arkitektur. AutoNAC är en sömlös process som ger en prestandahöjning till befintliga djupa neurala nätverk.

AutoNAC-pipelinen tar ett användarutbildat djupt neuralt nätverk som en indata, en datauppsättning och tillgång till ett inferenssystem. Det användartränade djupa neurala nätverket genomgår sedan omdesign med hjälp av pipeline. En optimerad arkitektur med lägre latens uppnås då utan att kompromissa med noggrannheten.

instagram viewer

YOLO-NAS använder RepVGG. RepVGG gör det tillgängligt för optimering efter träning genom omparameterisering eller Kvantisering efter träning. Det är en typ av neural nätverksarkitektur baserad på VGG. Den använder regleringstekniker utformade för att förbättra djupinlärningsmodellers generaliseringsförmåga.

Arkitekturens design är mer effektiv i hastighet och minne. RepVGG genomgår utbildning med en multi-branch-arkitektur för att uppnå en snabbare slutledning. Den konverteras sedan till en enda gren med hjälp av omparameterisering.

Denna funktion gör YOLO-NAS mycket användbar för produktionsinstallation. Detta eftersom det är möjligt att träna och optimera modellen med fullständig precision för slutledningshastighet och minnesanvändning.

Nyckelfunktioner hos YOLO-NAS

YOLO-NAS nyckelfunktioner inkluderar följande:

  • Kvantiseringsmedveten utbildning: Modellen använder QSP och QCI (kvantiseringsmedvetna moduler) för att minska noggrannhetsförlusten under efterträningskvantisering genom att kombinera omparametriseringen av 8-bitars kvantisering.
  • Automatisk arkitekturdesign: AutoNAC, Decis egenutvecklade NAS-teknik söker efter en optimal modellarkitektur som integrerar de grundläggande YOLO-modellernas arkitekturer för att komma fram till en optimerad modell.
  • Hybrid kvantiseringsteknik: Standardkvantiseringsmetoden påverkar hela modellen. Däremot kvantiserar hybridkvantiseringstekniken en sektion av en modell för att balansera modellens latens och noggrannhet.
  • Använd unika metoder för att förbereda modellen för träning genom att använda automatiskt märkta data. Modellen lär sig sedan av sina förutsägelser och kommer åt stora mängder data.

Jämförande analys: YOLO-NAS vs andra YOLO-modeller

Nedan är en jämförelse mellan olika modeller i YOLO-serien.

YOLO-NAS är bättre än redan existerande objektdetekteringsmodeller, men det kommer med sina nackdelar. Här är en lista över fördelarna och nackdelarna med YOLO-NAS:

Fördelar

  • Det är öppen källkod.
  • Den är 10-20 % snabbare än de redan existerande YOLO-modellerna.
  • Det är mer exakt jämfört med de redan existerande YOLO-modellerna.
  • Den använder en bättre arkitektur, AutoNAC. Detta sätter ett nytt rekord i objektdetektering, vilket ger den bästa precision och latensavvägningsprestanda.
  • Sömlöst stöd för inferensmotorer som NVIDIA. Denna funktion gör den till en produktionsklar modell.
  • Den har bättre minneseffektivitet och ökade slutledningshastigheter.

Nackdelar

  • Den är ännu inte stabil eftersom tekniken fortfarande är ny och inte har använts vilt i produktionen.

Implementering av YOLO-NAS

Du kommer att använda Google Colab att skriva och köra koderna i denna implementering. Ett alternativ för Google Colab skulle vara att skapa en virtuell miljö och använd en IDE på din lokala dator.

Modellen är mycket resurskrävande. Se till att du har minst 8 GB RAM innan du kör det på din maskin. Ju större videostorlek, desto mer minne använder den.

Installera beroenden

Installera YOLO-NAS-beroendet, supergradienter med kommandot nedan:

pip installera super-gradienter==3.1.2

Efter en lyckad installation kommer du nu att kunna träna YOLO-NAS-modellen.

Modellutbildning

För att träna modellen, kör kodblocket nedan:

från super_gradients.training importera modeller
yolo_nas_l = models.get("yolo_nas_l", förtränade_vikter="kokospalm")

Du importerar träningsmodellen från det installerade SuperGradients-biblioteket i den här koden. Du använder då de förtränade modellvikterna från COCO-datauppsättningen.

Modellinferens

Modellinferensen har potentiella tillämpningar för bilddetektering, klassificering och segmenteringsuppgifter.

I det här fallet kommer du att fokusera på objektdetekteringsuppgift för videor och bilder. För att upptäcka ett objekt i en bild, kör kodblocket nedan:

url = "img_path"
yolo_nas_l.predict (url, conf=0.25).show()

Se till att du använder den korrekta sökvägen till din bild. I det här fallet laddar du upp bilden i Google Colab-miljön och kopierar sedan bildens sökväg.

Förväntad utgång:

För att upptäcka objekt i en video, kör kodblocket nedan:

importera fackla

input_video_path = "sökväg_till_video"
output_video_path = "upptäckt.mp4"
enhet = 'cuda'om torch.cuda.is_available() annan"cpu"
yolo_nas_l.to (device).predict (input_video_path).save (output_video_path)

Liksom bilddata, ladda upp videon du vill att dess objekt ska upptäckas till Google Colab-miljön och kopiera sökvägen till videovariabeln. Den förutsedda videon kommer att vara tillgänglig från Google Colab-miljön med namnet upptäckt.mp4. Ladda ner videon till din lokala dator innan du avslutar din session.

Förväntad utgång:

YOLO-NAS stöder även modellfinjustering och träning på anpassade data. Dokumentationen finns tillgänglig på Deci’s finjustera start-anteckningsbok.

Real-World-applikationer av YOLO-NAS

YOLO-NAS källkod är tillgänglig under Apache License 2.0, som är tillgänglig för icke-kommersiellt bruk. För kommersiellt bruk bör modellen genomgå omskolning från grunden för att få anpassade vikter.

Det är en mångsidig modell vars tillämpning är möjlig inom flera områden, såsom:

Autonoma fordon och robotik

YOLO-NAS kan förbättra uppfattningsförmågan hos autonoma fordon, vilket gör det möjligt för dem att upptäcka och spåra objekt snabbare och mer exakt i realtid. Denna förmåga hjälper till att säkerställa trafiksäkerhet och en smidig körupplevelse.

Övervaknings- och säkerhetssystem

Modellen kan ge snabb, exakt och realtidsobjektdetektering för övervakning och säkerhet system, som hjälper till att identifiera potentiella hot eller misstänkta aktiviteter, vilket resulterar i bättre säkerhet system

Detaljhandel och lagerhantering

Modellen kan ge snabba och exakta objektdetekteringsmöjligheter som möjliggör effektiv och automatiserad lagerhantering i realtid, lagerspårning och hylloptimering. Denna modell hjälper till att minska driftskostnaderna och öka vinsten.

Hälsovård och medicinsk bildbehandling

Inom sjukvården kan YOLO-NAS hjälpa till med effektiv upptäckt och analys av sjukdomsavvikelser eller specifika intresseområden. Modellen kan hjälpa läkare att korrekt diagnostisera sjukdomar och övervaka patienter och på så sätt förbättra sjukvårdssektorn.

YOLO-NAS Takeaway

YOLO-NAS är en ny modell för objektdetektering som banar väg för ett nytt sätt att utföra objektdetektering. Det är bättre än SOTA-modellerna. Dess prestanda vid objektdetektering är ett stort steg för datorseendeprojekt.