Andersons vinkel

En video-kodek designet for AI-analyse

mm
Legg til Unite.AI blant dine foretrukne kilder på Google

Selv om techno-thrilleren The Circle (2017) er mer en kommentar til de etiske implikasjonene av sosiale nettverk enn praktisiteten til eksterne videoanalyser, er det usannsynlig små ‘SeeChange’-kameraet i sentrum av handlingen som virkelig skyver filmen inn i ‘science fiction’-kategorien.

Det 'SeeChange'-kameraet/overvåkingsenheten fra techno-thrilleren 'The Circle' (2017).

Det ‘SeeChange’-kameraet/overvåkingsenheten fra techno-thrilleren ‘The Circle’ (2017).

Et trådløst og fritt-bevegelig apparat omtrent så stort som en stor kork, er det ikke mangelen på solceller eller ineffektiviteten ved å trekke kraft fra andre omgivelsesmessige kilder (slik som radiobølger) som gjør SeeChange til et usannsynlig prosjekt, men det faktum at det kommer til å måtte komprimere video 24/7, på hva som helst av knapp ladning det kan opprettholde.

Å strømme billig sensorer av denne typen er et sentralt forskningsområde i datavisjon (CV) og videoanalyse, spesielt i ikke-urbane miljøer hvor sensoren må trekke ut maksimal ytelse fra svært begrensede strømkilder (batterier, sol, osv.).

I tilfeller hvor slike edge IoT/CV-enheter av denne typen må sende bildeinnhold til en sentral server (ofte gjennom konvensjonelle celle-dekning nettverk), er valgene harde: enten må enheten kjøre en slags lett neuralt nettverk lokalt for å sende bare optimerte segmenter av relevant data for server-side prosessering; eller det må sende ‘dum’ video for de plugget-in skytjenestene å evaluere.

Selv om bevegelsesaktivering gjennom hendelsesbaserte Smart Vision Sensors (SVS) kan kutte ned denne overhodet, koster også denne aktiveringsovervåkingen energi.

Å klamre seg til kraft

Videre, selv med sjeldne aktivering (dvs. en sau kommer sjelden inn i syne), har enheten ikke nok kraft til å sende gigabyte med ukomprimert video; heller ikke har det nok kraft til å konstant kjøre populære video-komprimerte kodeker som H.264/5, som forventer maskinvare som er enten plugget inn eller ikke langt fra neste ladeøkt.

Videoanalyse-pipelines for tre typiske datavisjonsoppgaver. Video-kodek-arkitekturen må være trenet for oppgaven i hånden, og vanligvis for det neurale nettverket som mottar dataene. Kilde: https://arxiv.org/pdf/2204.12534.pdf

Videoanalyse-pipelines for tre typiske datavisjonsoppgaver. Video-kodek-arkitekturen må være trenet for oppgaven i hånden, og vanligvis for det neurale nettverket som mottar dataene. Kilde: https://arxiv.org/pdf/2204.12534.pdf

Selv om den vidt distribuerte H.264-kodeken har lavere energiforbruk enn sin etterfølger H.265, har den dårlig komprimerings-effektivitet. Dens etterfølger, H.265, har bedre komprimerings-effektivitet, men høyere strømforbruk. Mens Google’s åpne kildekode VP9-kodek slår dem begge i hver enkelt område, krever den høyere lokale beregningsressurser, som presenterer ytterligere problemer i en supposert billig IoT-sensor.

Så langt som å analysere strømmen lokalt: ved den tid du har kjørt selv den letteste lokale neurale nettverket for å bestemme hvilke rammeverk (eller områder av et ramme) som er verdt å sende til serveren, har du ofte brukt opp kraften du ville ha spart ved å bare sende alle rammeverkene.

Ekstrahering av maskerte representasjoner av kveg med en sensor som ikke er sannsynlig å være grid-tilkoblet. Bruker den sin begrensede kraftkapasitet på lokal semantisk segmentering med et lett neuralt nettverk; ved å sende begrenset informasjon til en server for videre instruksjoner (innfører forsinkelse); eller ved å sende 'dum' data (ødelegger energi på båndbredde)?

Ekstrahering av maskerte representasjoner av kveg med en sensor som ikke er sannsynlig å være grid-tilkoblet. Bruker den sin begrensede kraftkapasitet på lokal semantisk segmentering med et lett neuralt nettverk; ved å sende begrenset informasjon til en server for videre instruksjoner (innfører forsinkelse); eller ved å sende ‘dum’ data (ødelegger energi på båndbredde)? Kilde: https://arxiv.org/pdf/1807.01972.pdf

Det er klart at ‘i villmarken’ datavisjonsprosjekter trenger dedikerte video-komprimeringskodeker som er optimalisert for kravene til bestemte neurale nettverk over bestemte og mangfoldige oppgaver som semantisk segmentering, nøkkel-punkter-avgjørelse (menneske-bevegelses-analyse) og objekt-avgjørelse, blant andre mulige slutbruk.

Hvis du kan få den perfekte avveiningen mellom video-komprimerings-effektivitet og minimal dataoverføring, er du et skritt nærmere SeeChange, og evnen til å deployere billig sensor-nettverk i uvennlige miljøer.

AccMPEG

Ny forskning fra University of Chicago kan ha tatt et skritt nærmere en slik kodek, i form av AccMPEG – en ny video-kodek- og strømmeframtidsramme som opererer ved lav forsinkelse, høy nøyaktighet for server-side Deep Neural Networks (DNNs), og som har merkelig lav lokale beregningskrav.

Arkitektur av AccMPEG. Kilde: https://arxiv.org/pdf/2204.12534.pdf

Arkitektur av AccMPEG. Kilde: https://arxiv.org/pdf/2204.12534.pdf

Systemet kan gjøre økonomier over tidligere metoder ved å vurdere hvor mye hver 16x16px macroblock sannsynligvis vil påvirke nøyaktigheten av server-side DNN. Tidligere metoder har, isteden, vanligvis måttet vurdere denne typen nøyaktighet basert på hver piksel i et bilde eller utføre elektrisk dyre lokale operasjoner for å avgjøre hvilke områder av bildet som kan være av størst interesse.

I AccMPEG, estimeres denne nøyaktigheten i en tilpasset modul kalt AccGrad, som måler måtene hvorpå kodek-kvaliteten til macroblocken sannsynligvis vil være relevant for slutbrukssaken, som en server-side DNN som prøver å telle mennesker, utføre skjelett-estimering på menneske-bevegelse eller andre vanlige datavisjonsoppgaver.

Som et ramme av video ankommer systemet, prosesserer AccMPEG det først gjennom en billig kvalitetsvelgermodell, tittet AccModel. Alle områder som ikke sannsynligvis vil bidra til de nyttige beregningene av en server-side DNN, er essensielt ballast, og bør markeres for å kodek på lavest mulig kvalitet, i motsetning til betydningsfulle områder, som bør sendes på bedre kvalitet.

Dette prosessen presenterer tre utfordringer: kan prosessen utføres raskt nok til å oppnå akseptabel forsinkelse uten å bruke energi-drenerende lokale beregningsressurser? Kan en optimal relasjon mellom ramme-hastighet og kvalitet etableres? Og kan en modell raskt trenes for en enkelt server-side DNN?

Treningslogistikk

Ideelt sett, burde en datavisjonskodek være forhåndstrent på plugget-in systemer til de eksakte kravene til et bestemt neuralt nettverk. AccGrad-modulen kan, imidlertid, direkte avledes fra en DNN med bare to fremover-propagasjoner, med en besparelse av ti ganger standard-overhodet.

AccMPEG trener AccGrad for bare 15 epoker av tre propagasjoner hver gjennom den endelige DNN, og kan potensielt bli omtrukket ‘live’ ved å bruke sin nåværende modell-tilstand som en mal, i alle fall for lignende-spekket CV-oppgaver.

AccModel bruker den forhåndstrente MobileNet-SSD-funksjons-ekstraktor, vanlig i billig edge-enheter. Ved en omskiftning på 12 GFLOPS, bruker modellen bare en tredjedel av typiske ResNet18-tilnærmingene. Foruten batch-normalisering og aktivering, består arkitekturen bare av konvolusjonslag, og dens beregnings-overhodet er proporsjonalt med ramme-størrelsen.

AccGrad fjerner behovet for endelig DNN-inferens, og forbedrer deploy- logistikk.

AccGrad fjerner behovet for endelig DNN-inferens, og forbedrer deploy-logistikk.

Ramme-hastighet

Arkitekturen kjører optimalt på 10fps, hvilket ville gjøre det egnet for formål som landbruks-overvåking, bygning-degradering-overvåking, høy-utsikt trafikk-analyse og representativ skjelett-inferens i menneske-bevegelse; imidlertid, svært raskt-bevegelige scenarioer, som lav-utsikt trafikk (av biler eller mennesker), og andre situasjoner hvor høye ramme-hastigheter er fordelaktige, er ikke egnet for denne tilnærmingen.

En del av metoden sin sparsommelighet ligger i premisset at tilstøtende macroblocker sannsynligvis vil være av lignende verdi, inntil punktet hvor en macroblock faller under estimert nøyaktighet. Områdene som er oppnådd ved denne tilnærmingen, er mer tydelig avgrenset, og kan beregnes med større hastighet.

Ytelsesforbedring

Forskerne testet systemet på en $60 Jetson Nano-brikke med en enkelt 128-kjerne Maxwell-GPU, og andre billigere ekvivalenter. OpenVINO ble brukt til å offsette en del av energikravene til de svært sparsomme lokale DNN-ene til CPU-ene.

AccModel selv ble opprinnelig trenet offline på en server med 8 GeForce RTX 2080S-GPU-er. Selv om dette er en formidabel rekke av beregningskraft for en opprinnelig modell-bygging, gjør den lette om-treningen som systemet gjør mulig, og måten modellen kan justeres til bestemte toleranse-parametere over forskjellige DNN-er som angriper lignende oppgaver, at AccMPEG kan danne en del av et system som trenger minimal oppmerksomhet i villmarken.

 

Først publisert 1. mai 2022.

Forfatter innen maskinlæring, domenespesialist i menneskeskapesynthese. Tidligere sjef for forskningsinnhold i Metaphysic.ai, til det ble oppløst i DNEG's Brahma.ai.
Portfolio nettsted: martinanderson.ai
Kontakt: [email protected]