Andersonin kulma

Videokooderi, joka on suunniteltu tekoälyanalyysiin

mm
Lisää Unite.AI suosikkilähteisiisi Google-palvelussa

Vaikka techno-thriller The Circle (2017) on enemmän kommentaari sosiaalisten verkostojen eettisistä vaikutuksista kuin ulkoisen videonanalytiikan käytännönasioista, epätodennäköisesti pieni ‘SeeChange’ -kamera juonen keskipisteenä on se, mikä todella työntää elokuvan ‘tieteiskirjallisuuden’ luokkaan.

The 'SeeChange' -valvontakamera techno-thrilleristä The Circle (2017).

‘SeeChange’ -valvontakamera techno-thrilleristä ‘The Circle’ (2017).

Langattoman ja vapaasti liikkuva laite, jonka koko on noin suuren marmelin kokoinen, ei ole epätodennäköinen johtuen siitä, että sille ei ole aurinkopaneeleja tai siitä, että se ei pysty käyttämään muuta ympäristön energiaa (kuten radioaallot), vaan siitä, että se joutuu pakkaamaan videota 24/7, millä tahansa voimavaralla, jonka se pystyy ylläpitämään.

Tällaisten halpojen anturien voimanlähteen kehittäminen on yksi tärkeimmistä tutkimusalueista tietokoneavusteisessa näkemisessä (CV) ja videonanalytiikassa, erityisesti ei-kaupunkimaisissa ympäristöissä, joissa anturin on pyrittävä saamaan maksimaalinen suorituskyky hyvin rajallisilla voimavaroilla (paristot, aurinko jne.).

Jos tällainen reunan IoT/CV -laite on lähetettävä kuvamateriaalia keskuspalvelimelle (usein perinteisten matkapuhelinverkkojen kautta), valinnat ovat vaikeat: joko laitteen on suoritettava jokin kevyt neuroverkko paikallisesti, jotta voidaan lähettää vain optimoidut osat relevantista datasta palvelimen puoleiseen prosessointiin; tai se on lähetettävä ‘tyhmä’ video, jotta pilvipalvelun voimavarat voivat arvioida sen.

Vaikka liikkeen aktivoiminen älykkäiden visiosensoreiden (SVS) kautta voi laskea tämän kulun, tämä aktivoiminen valvonta maksaa myös energiaa.

Kiinnipitäminen voimasta

Lisäksi, vaikka laite on harvoin aktiivinen (esim. lammaskin kulkee silloin tällöin näkyviin), laitteen voimavaroja ei ole riittävästi lähetettäväksi gigatavuille pakkaamattomia videoita; eikä laitteella ole riittävästi voimavaroja suorittamaan suosittuja videopakkauksen koodekkeja, kuten H.264/5, jotka odottavat laitetta, joka on joko kiinni tai ei ole kaukana seuraavasta latausistunnosta.

Videon analytiikka -putkistot kolmelle tyypilliselle tietokoneavusteiselle näkemistehtävälle. Videon pakkausarkkitehtuuri on koulutettava tehtävän mukaan, ja yleensä myös neuroverkon mukaan, joka vastaanottaa tiedot. Lähde: https://arxiv.org/pdf/2204.12534.pdf

Videon analytiikka -putkistot kolmelle tyypilliselle tietokoneavusteiselle näkemistehtävälle. Videon pakkausarkkitehtuuri on koulutettava tehtävän mukaan, ja yleensä myös neuroverkon mukaan, joka vastaanottaa tiedot. Lähde: https://arxiv.org/pdf/2204.12534.pdf

Vaikka laajalti levinnyt H.264 -koodekki kuluttaa vähemmän energiaa kuin sen seuraaja H.265, sillä on huono pakkaustehokkuus. Sen seuraajalla H.265 on parempi pakkaustehokkuus, mutta se kuluttaa enemmän energiaa. Google:n avoimen lähdekoodin VP9 -koodekki voittaa molemmat kummankin alueen, mutta se vaatii enemmän paikallista laskentaresursseja, mikä aiheuttaa lisää ongelmia edullisessa IoT -anturissa.

Jos tarkastellaan paikallista analyysiä: kun olet suorittanut jopa kevyimmän paikallisen neuroverkon, jotta voit määrittää, mitkä kehykset (tai kehysalueet) ovat arvokkaita lähettäväksi palvelimelle, olet usein kuluttanut saman verran energiaa kuin olisit lähettänyt kaikki kehykset.

Nautakarjan segmentointi anturilla, joka ei ole todennäköisesti kytketty verkkoon. Käyttääkö se rajoitettua voimakapasiteettiaan paikalliseen semanttiseen segmentointiin kevyellä neuroverkolla; lähettääkö se rajoitetun määrän tietoa palvelimelle jatkamista varten (jolloin syntyy viive); vai lähettääkö se 'tyhmiä' tietoja (hävittäen energian kaistanleveydellä)? Lähde: https://arxiv.org/pdf/1807.01972.pdf

Nautakarjan segmentointi anturilla, joka ei ole todennäköisesti kytketty verkkoon. Käyttääkö se rajoitettua voimakapasiteettiaan paikalliseen semanttiseen segmentointiin kevyellä neuroverkolla; lähettääkö se rajoitetun määrän tietoa palvelimelle jatkamista varten (jolloin syntyy viive); vai lähettääkö se ‘tyhmiä’ tietoja (hävittäen energian kaistanleveydellä)? Lähde: https://arxiv.org/pdf/1807.01972.pdf

On selvää, että ‘villissä’ tietokoneavusteisissa näkemishankkeissa tarvitaan omat videopakkauksen koodekit, jotka on optimoitu tiettyjen neuroverkkojen vaatimuksiin tiettyjen ja moninaisten tehtävien, kuten semanttisen segmentoinnin, avainpistekohtien havaitsemisen (ihmisen liikkeen analyysi) ja objektien havaitsemisen parissa.

Jos voit saavuttaa täydellisen tasapainon videon pakkaustehokkuuden ja vähäisen datasiirron välillä, olet lähempänä SeeChangea ja kykyä käyttää edullisia anturiverkkoja epäystävällisissä ympäristöissä.

AccMPEG

Chicagon yliopiston uusi tutkimus saattaa olla askel lähempänä tällaista koodekki, AccMPEG -muodossa – uusi videon koodaus- ja siirtorunko, joka toimii alhaisella viiveellä, korkealla tarkkuudella palvelimen puoleisille syvän neuroverkon (DNN) sovelluksille ja jolla on erittäin vähäiset paikalliset laskentavaatimukset.

AccMPEG -arkkitehtuuri. Lähde: https://arxiv.org/pdf/2204.12534.pdf

AccMPEG -arkkitehtuuri. Lähde: https://arxiv.org/pdf/2204.12534.pdf

Järjestelmä pystyy tekemään taloudellisia etuja aiempiin menetelmiin arvioimalla, kuinka paljon kunkin 16x16px makroblockin vaikuttaa palvelimen puoleisen DNN:n tarkkuuteen. Aikaisemmat menetelmät ovat yleensä arvioineet tämänkaltaista tarkkuutta jokaisen kuvapikselin perusteella tai suorittaneet sähköisesti kalliita paikallisia operaatioita, jotta voidaan arvioida, mitkä kuvan alueet ovat eniten mielenkiintoisia.

AccMPEG:ssä tämä tarkkuus arvioidaan mukautetussa AccGrad -moduulissa, joka mittaa, miten makroblockin koodauslaatu on todennäköisesti merkityksellinen lopputarkoituksen kannalta, kuten palvelimen puoleisessa DNN:ssä, joka yrittää laskea ihmisiä, suorittaa luurangon arviointia ihmisen liikkeestä tai muita yleisiä tietokoneavusteisia näkemistehtäviä.

Kun videon kehys saapuu järjestelmään, AccMPEG käsittelee sen aluksi edullisen laadun valitsijamallin, nimeltään AccModel, joka on koulutettu etukäteen. Kaikki alueet, jotka eivät todennäköisesti vaikuta palvelimen puoleisen DNN:n hyödyllisiin laskelmiin, ovat periaatteessa kuormaa, ja ne on merkittävä koodattaviksi alhaisimmalla mahdollisella laadulla, verrattuna merkityksellisiin alueisiin, jotka on lähetettävä paremmassa laadussa.

Tämä prosessi esittää kolme haastetta: voidaanko prosessi suorittaa tarpeeksi nopeasti saavuttaaksesi hyväksyttävän viiveen ilman energiaa kuluttavia paikallisia laskentaresursseja? Voidaanko optimaalinen suhde kehysnopeuden ja laadun välillä saavuttaa? Ja voidaanko malli kouluttaa nopeasti yksittäisen palvelimen puoleisen DNN:n vaatimusten mukaan?

Koulutuslogistiikka

Ideaali tietokoneavusteiselle näkemiskoodekille olisi, että se on koulutettu kiinni oleviin järjestelmiin tiettyjen neuroverkkojen tarkkuuden mukaan. AccGrad -moduuli voidaan kuitenkin johtaa suoraan DNN:stä vain kahdella eteenpäin propagaatiolla, jolloin säästetään kymmenen kertaa tavallista kulutusta.

AccMPEG kouluttaa AccGrad:in vain 15 epochin kolmella propagaatiolla kullekin lopulliselle DNN:lle, ja se voidaan potentiaalisesti kouluttaa uudelleen “elävänä” käyttäen nykyistä mallitilaa mallina, ainakin samankaltaisille CV -tehtäville.

AccModel käyttää esikoulutettua MobileNet-SSD -ominaisuusextractoria, jota yleensä käytetään edullisissa reunan laitteissa. 12 GFLOPS:n vaihdolla malli käyttää vain kolmanneksen tyypillisistä ResNet18 -lähestymistavoista. Lisäksi batch -normalisoinnista ja aktivaatiosta, arkkitehtuuri koostuu vain konvoluutio kerroksista, ja sen laskennan kulut ovat suhteessa kehyskooon.

AccGrad poistaa tarpeen lopullisen DNN -inferenssin tarpeen, parantaen käyttöönoton logistiikkaa.

AccGrad poistaa tarpeen lopullisen DNN -inferenssin tarpeen, parantaen käyttöönoton logistiikkaa.

Keveysnopeus

Arkkitehtuuri toimii optimaalisesti 10 kehysnopeudella, mikä tekisi siitä sopivan esimerkiksi maatalousvalvontaan, rakennuksen heikkenemisen valvontaan, korkean näkökulman liikenteen analyysiin ja edustavan luurangoinferenssin ihmisen liikkeestä; mutta hyvin nopeasti liikkuvat skenaariot, kuten matalan näkökulman liikenne (autoista tai ihmisistä), ja muut tilanteet, joissa korkeat kehysnopeudet ovat hyödyllisiä, eivät sovi tähän lähestymistapaan.

Osa menetelmän taloudellisuutta perustuu oletukseen, että vierekkäiset makroblockit ovat todennäköisesti samanarvoisia, kunnes makroblocki laskee arvioidun tarkkuuden. Alueet, jotka saadaan tällä tavoin, voidaan laskea nopeammin.

Suorituskyvyn parantaminen

Tutkijat testasivat järjestelmää 60 dollarin Jetson Nano -lautakortilla, jossa on yksi 128-ydin Maxwell GPU, ja muilla edullisilla vastineilla. OpenVINO:a käytettiin siirtämään osa energiaa vaativista paikallisista DNN:istä CPU:lle.

AccModel koulutettiin alun perin offline -palvelimella, jossa oli 8 GeForce RTX 2080S -GPU:ta. Vaikka tämä on merkittävä määrä laskentatehoa alkujaan mallin rakentamiseen, AccMPEG:n mahdollistama kevyt uudelleenkoulutus ja tapa, jolla malli voidaan mukauttaa tiettyihin sietokykyparametreihin eri DNN:ien kanssa, jotka käsittelevät samankaltaisia tehtäviä, tarkoittaa, että AccMPEG voidaan muodostaa osaksi järjestelmää, joka tarvitsee vähäistä valvontaa villissä.

 

Julkaistu ensimmäisen kerran 1. toukokuuta 2022.

Kirjailija tekoälystä, alan erikoisosaaja ihmisen kuvansynteesissä. Entinen tutkimussisällön johtaja Metaphysic.ai:ssa, kunnes se liitettiin DNEG:n Brahma.ai:hin.
Portfolio-sivu: martinanderson.ai
Ota yhteyttä: martin@martinanderson.ai