Förminskad maskininlärningsdesign lindrar en flaskhals i minnesanvändningen på internet-of-things-enheter

Förminskad maskininlärningsdesign lindrar en flaskhals i minnesanvändningen på internet-of-things-enheter

Förminskad maskininlärningsdesign lindrar en flaskhals i minnesanvändningen på internet-of-things-enheter Lyssna på storyn

{Play}

Maskininlärning ger kraftfulla verktyg till forskare för att identifiera och förutsäga mönster och beteende, samt inlärning, optimering och utföra uppgifter. Detta sträcker sig från applikationer som sensorssystem på autonoma fordon eller sociala robotar till smarta termostater till bärbara och mobila enheter som smartwatches och appar som kan övervaka hälsoförändringar. Medan dessa algoritmer och deras arkitekturer blir mer kraftfulla och effektiva, kräver de vanligtvis enorma mängder minne, beräkning och data för att träna och dra slutsatser.

Samtidigt arbetar forskare för att minska storleken och komplexiteten hos de enheter som dessa algoritmer kan köras på, hela vägen ner till en mikrokontrollerenhet (MCU) som finns i miljarder IoT-enheter (Internet-of-Things). En MCU är minnesbegränsad minidator inrymd i kompakt integrerad krets som saknar operativsystem och kör enkla kommandon. Dessa relativt billiga edge-enheter kräver låg effekt, datoranvändning och bandbredd och erbjuder många möjligheter att injicera AI-teknik för att utöka sin användning, öka integriteten och demokratisera deras användning – ett område som kallas TinyML.

Förminskad maskininlärningsdesign

Nu har ett MIT-team som arbetar i TinyML i MIT-IBM Watson AI Lab och Song Han, biträdande professor vid Institutionen för elektroteknik och datavetenskap (EECS) och hans forskargrupp, utformat en teknik för att krympa mängden minne betydligt mer än vad som tidigare har varit möjligt. Samtidigt som dess prestanda på bildigenkänning i livevideor förbättras.

“Our new technique can do a lot more and paves the way for tiny machine learning on edge devices,”, säger Han, designer för TinyML-programvara och hårdvara.

För att öka TinyML-effektiviteten analyserade Han och hans kollegor från EECS och MIT-IBM Watson AI Lab hur minne används på mikrokontroller som kör olika konvolutionella neurala nätverk (CNN). CNN är biologiskt inspirerade modeller efter nervceller i hjärnan och används ofta för att utvärdera och identifiera visuella funktioner i bilder, som t ex en person som går ut igenom en videoram.

I sin studie upptäckte de en obalans i minnesutnyttjandet, vilket orsakade front-loading på datorchipet som skapar en flaskhals. Genom att utveckla en ny inferensteknik och neural arkitektur lindrade teamet problemet och minskade minnesanvändningen med fyra till åtta gånger. Vidare distribuerade teamet det på sitt eget tinyML-sensorsystem, utrustat med en kamera och kapabel till mänsklig och objektdetektering, vilket skapade nästa generation, kallad MCUNetV2. Jämfört med andra maskininlärningsmetoder som körs på mikrokontroller överträffade MCUNetV2 dem med hög noggrannhet vid detektion, vilket öppnade dörrarna till ytterligare sensorapplikationer som inte var möjliga tidigare.

Resultaten kommer att presenteras i en uppsats på konferensen om neurala informationsbehandlingssystem (NeurIPS). I teamet ingår Han, huvudförfattaren och doktoranden Ji Lin, postdoktorn Wei-Ming Chen, doktoranden Han Cai och MIT-IBM Watson AI Lab Research Scientist Chuang Gan.

Designen för minneseffektivitet och omfördelning TinyML erbjuder många fördelar jämfört med djup maskininlärning som sker på större enheter, som fjärrservrar och smartphones. Dessa, noterar Han, inkluderar sekretess, eftersom data inte överförs till molnet för databehandling utan bearbetas på den lokala enheten; robusthet, eftersom datoranvändningen är snabb och latensen är låg; och låg kostnad, eftersom IoT-enheter kostar ungefär $1 till $2.

Dessutom kan vissa större, mer traditionella AI-modeller släppa ut så mycket kol som fem bilar under sin livstid, kräva många GPU:er och kosta miljarder dollar att träna.

“Så vi tror att sådana TinyML-tekniker kan göra det möjligt för oss att gå utanför nätet för att spara koldioxidutsläppen och göra AI:n grönare, smartare, snabbare och även mer tillgänglig för alla – för att demokratisera AI”, säger Han.

Men litet MCU-minne och digital lagring begränsar AI-applikationer, så effektivitet är en central utmaning. McUs innehåller bara 256 kilobyte minne och 1 megabyte lagring. I jämförelse kan mobil AI på smartphones och molntjänster, motsvarande, ha 256 gigabyte och terabyte lagringsutrymme, samt 16 000 och 100 000 gånger mer minne. Som en värdefull resurs ville teamet optimera användningen, så de profilerade MCU-minnesanvändningen av CNN-mönster – en uppgift som hade förbisetts hittills, säger Lin och Chen.

Deras resultat visade att minnesanvändningen toppade av de första fem konvolutionerande blocken av cirka 17. Varje block innehåller många anslutna konvolutionerande lager, som hjälper till att filtrera efter förekomsten av specifika funktioner i en indatabild eller video, vilket skapar en funktionskarta som utdata. Under det inledande minnesintensiva stadiet fungerade de flesta blocken utöver minnesbegränsningen 256KB, vilket gav gott om utrymme för förbättringar. För att minska toppminnet utvecklade forskarna ett patchbaserat inferens schema, som endast fungerar på en liten del, ungefär 25 procent, av lagrets funktionskarta på en gång, innan de går vidare till nästa kvartal, tills hela lagret är klart. Den här metoden sparade fyra till åtta gånger av minnet jämfört med den tidigare beräkningsmetoden lager för lager, utan fördröjning.

“Som en illustration, säg att vi har en pizza. Vi kan dela upp den i fyra bitar och bara äta en bit i taget, så du sparar ungefär tre fjärdedelar. Det här är den patchbaserade slutledningsmetoden, säger Han. “Men det här var ingen gratis lunch.”

Liksom fotoreceptorer i det mänskliga ögat kan de bara ta in och undersöka en del av en bild i taget; Det här receptiva fältet är en korrigeringsfil för den totala bilden eller synfältet. När storleken på dessa mottagliga fält (eller pizzaskivor i denna analogi) växer blir det ökande överlappning, vilket innebär redundant beräkning som forskarna fann vara cirka 10 procent. Forskarna föreslog att även omfördela det neurala nätverket över blocken, parallellt med den patchbaserade inferensmetoden, utan att förlora någon av noggrannheten i sensorsystemet. Frågan kvarstod dock om vilka block som behövde den patchbaserade slutledningsmetoden och vilka som kunde använda den ursprungliga lager-för-lager-metoden, tillsammans med omfördelningsbesluten; manuell justering av alla dessa knoppar var arbetsintensivt och bättre utförda av AI.

“Vi vill automatisera denna process genom att göra en gemensam automatiserad sökning efter optimering, inklusive både neural nätverksarkitektur, som antalet lager, antal kanaler, kärnstorleken och även slutledningsschemat inklusive antal patchar, antal lager för patchbaserad slutledning och andra optimeringsknoppar,” säger Lin, “så att icke-maskininlärningsexperter kan ha en tryckknappslösning för att förbättra beräkningseffektiviteten men också förbättra den tekniska produktiviteten,  för att kunna distribuera detta neurala nätverk på mikrokontroller.”

En ny horisont för små sensorsystem

Samdesignen av nätverksarkitekturen med neural nätverkssökningsoptimering och inferensplanering gav betydande vinster och antogs till MCUNetV2. Det överträffade andra sensorsystem i toppminnesanvändning och identifiering och klassificering av bilder och objekt. MCUNetV2-enheten har en liten skärm, en kamera, och är ungefär lika stor som en öronsnäcka. Jämfört med den första versionen behövde den nya versionen fyra gånger mindre minne för samma noggrannhet, säger Chen. När MCUNetV2 placerades mot andra tinyML-lösningar kunde den upptäcka förekomsten av objekt i bildramar, som mänskliga ansikten, med en förbättring på nästan 17 procent.

Dessutom satte den ett rekord för noggrannhet, på nästan 72 procent, för en klassificering av tusenklassbilder på ImageNet-data uppsättningen, med hjälp av 465KB minne. Forskarna testade det som kallas visuella väckningsord, hur väl deras MCU-visionsmodell kunde identifiera närvaron av en person i en bild, och även med det begränsade minnet av endast 30KB uppnådde den större än 90 procent noggrannhet och slog den tidigare toppmoderna metoden. Detta innebär att metoden är tillräckligt exakt och kan distribueras för att hjälpa till i till exempel smarta hem-applikationer. Med hög noggrannhet och låg energiförbrukning och kostnad låser MCUNetV2:s prestanda upp nya IoT-program. På grund av deras begränsade minne, säger Han, ansågs sensorsystem på IoT-enheter tidigare bara vara bra för grundläggande bildklassificeringsuppgifter, men deras arbete har bidragit till att utöka möjligheterna för TinyML-användning.

Vidare föreställer sig forskargruppen det inom många områden, från övervakning av sömn och rörelse inom hälso- och sjukvårdsindustrin till sportcoaching och rörelser som en golfsving till växtidentifiering inom jordbruket, liksom i smartare tillverkning, från att identifiera muttrar och bultar till att upptäcka funktionsfel i maskiner.

“We really push forward for these larger-scale, real-world applications,” says Han. “Without GPUs or any specialized hardware, our technique is so tiny it can run on these small cheap IoT devices and perform real-world applications like these visual wake words, face mask detection, and person detection. This opens the door for a brand-new way of doing tiny AI and mobile vision.”

Denna forskning sponsrades av MIT-IBM Watson AI Lab, Samsung och Woodside Energy och National Science Foundation.


Lär mer om vår lärplattform för interaktiva böcker


Nya böcker i vår webbutik BiQStore

En fransman i Stockholm  Matresan genom Småland

Är Du en matentusiast? Om ja, så är detta communityt för dig!Skapa blogg poster, diskutera på forumet, skapa interaktiva böcker om matkultur och välmående.

Öppnar i ny tab