AI-modeller och plattformar
Livslång inlärning på enheten närmare med ny träningsteknik

Ett team av forskare vid MIT och MIT-IBM Watson AI Lab har utvecklat en ny teknik som möjliggör träning på enheten med mindre än en kvarts megabyte minne. Den nya utvecklingen är en imponerande prestation eftersom andra träningslösningar vanligtvis kräver mer än 500 megabyte minne, vilket överstiger den 256-kilobyte kapacitet som de flesta mikrokontroller har.
Genom att träna en maskinlärningsmodell på en intelligent edge-enhet kan den anpassa sig till nya data och göra bättre förutsägelser. Det ska dock sägas att träningsprocessen vanligtvis kräver mycket minne, så den utförs ofta med datorer i ett datacenter innan modellen distribueras på en enhet. Denna process är betydligt dyrare och väcker integritetsproblem jämfört med den nya tekniken som utvecklats av teamet.
Forskarna utvecklade algoritmerna och ramverket på ett sätt som minskar den mängd beräkningar som behövs för att träna en modell, vilket gör processen snabbare och mer minneseffektiv. Tekniken kan hjälpa till att träna en maskinlärningsmodell på en mikrokontroller på bara några minuter.
Den nya tekniken hjälper också till med integritet eftersom den håller data på enheten, vilket är viktigt när känsliga data är inblandade. Samtidigt förbättrar ramverket modellens noggrannhet jämfört med andra tillvägagångssätt.
Song Han är en biträdande professor i avdelningen för elektroteknik och datavetenskap (EECS), en medlem i MIT-IBM Watson AI Lab och senior författare till forskningsartikeln.
“Vår studie möjliggör för IoT-enheter att inte bara utföra inferens utan också kontinuerligt uppdatera AI-modellerna med nyinsamlade data, vilket banar väg för livslång inlärning på enheten”, sa Han. “Den låga resursanvändningen gör djupinlärning mer tillgänglig och kan ha en bredare räckvidd, särskilt för strömsnåla edge-enheter.”
Den artikeln hade gemensamma huvudförfattare i EECS-doktoranderna Ji Lin och Ligeng Zhu. Övriga författare var MIT-postdoktorerna Wei-Ming Chen och Wei-Chen Wang. Den innehöll också Chuang Gan, en huvudforskningsmedarbetare vid MIT-IBM Watson AI Lab.
Att göra träningsprocessen mer effektiv
För att göra träningsprocessen mer effektiv och mindre minneskrävande förlitade sig teamet på två algoritmiska lösningar. Den första kallas sparse update, som använder en algoritm som identifierar de viktigaste vikterna att uppdatera under varje träningsomgång. Algoritmen fryser vikterna en i taget tills noggrannheten sjunker till en viss tröskel, vid vilken punkt den slutar. De återstående vikterna uppdateras sedan och aktiveringarna som motsvarar de frusna vikterna behöver inte lagras i minnet.
“Att uppdatera hela modellen är mycket dyrt eftersom det finns mycket aktivering, så människor tenderar att bara uppdatera den sista lagret, men som du kan föreställa dig, skadar detta noggrannheten”, sa Han. “För vår metod väljer vi att uppdatera de viktigaste vikterna och ser till att noggrannheten är fullständigt bevarad.”
Den andra lösningen som utvecklats av teamet innefattar kvantiserad träning och förenkling av vikterna. En algoritm rundar först av vikterna till bara åtta bitar genom en kvantiseringsprocess som också minskar mängden minne för träning och inferens, där inferens är processen att applicera en modell på en dataset och generera en förutsägelse. Algoritmen förlitar sig sedan på en teknik som kallas kvantiseringsmedveten skalning (QAS), som fungerar som en multiplikator för att justera förhållandet mellan vikt och gradient. Detta hjälper till att undvika eventuell förlust av noggrannhet som kan uppstå på grund av kvantiserad träning.
Forskarna utvecklade ett system som kallas en liten träningsmotor, som kör algoritmiska innovationer på en enkel mikrokontroller som saknar operativsystem. För att slutföra mer arbete i kompileringsskedet, före distributionen av modellen på edge-enheten, ändrar systemet ordningen på stegen i träningsprocessen.
“Vi flyttar en stor del av beräkningarna, som auto-differentiering och grafoptimering, till kompileringstiden. Vi beskär också aggressivt de redundanta operatorerna för att stödja sparse uppdateringar. När vi väl är i drift har vi mycket mindre arbete att göra på enheten”, säger Han.
Mycket effektiv teknik
Medan traditionella tekniker som är utformade för lätt träning vanligtvis skulle behöva runt 300 till 600 megabyte minne, behövde teamets optimering bara 157 kilobyte för att träna en maskinlärningsmodell på en mikrokontroller.
Ramverket testades genom att träna en datorseende-modell för att upptäcka människor i bilder, och den lärde sig att slutföra denna uppgift på bara 10 minuter. Metoden kunde också träna en modell mer än 20 gånger snabbare än andra metoder.
Forskarna kommer nu att försöka tillämpa teknikerna på språkmodeller och olika typer av data. De vill också använda den förvärvade kunskapen för att minska större modeller utan förlust av noggrannhet, vilket också kan hjälpa till att minska koldioxidavtrycket från träning av stora maskinlärningsmodeller.












