Andersons vinkel
Hur man håller smartphones svala när de kör maskinlärningsmodeller

Forskare från University of Austin och Carnegie Mellon har föreslagit en ny metod för att köra beräkningskrävande maskinlärningsmodeller på mobila enheter som smartphones och på lägre presterande edge-enheter, utan att utlösa termisk bromsning – en vanlig skyddsmekanism i professionella och konsumentenheter, som är avsedd att sänka temperaturen på värdenheten genom att sakta ner dess prestanda, tills acceptabla driftstemperaturer uppnås igen.
Den nya metoden kan hjälpa mer komplexa ML-modeller att köra inferens och olika typer av uppgifter utan att hota stabiliteten hos exempelvis värdenheten.
Den centrala idén är att använda dynamiska nätverk, där vikterna i en modell kan nås av både en ‘lågtrycks’- och ‘fullintensitets’-version av den lokala maskinlärningsmodellen.
I fall där driften av den lokala installationen av en maskinlärningsmodell skulle orsaka att temperaturen på enheten stiger kritiskt, skulle modellen dynamiskt växla till en mindre krävande modell tills temperaturen stabiliseras, och sedan växla tillbaka till den fullständiga versionen.

Testuppgifterna bestod av ett bildklassificeringsjobb och en fråge-svar-naturalspråksinferensuppgift (QNLI) – båda typer av operationer som sannolikt engagerar mobila AI-applikationer. Källa: https://arxiv.org/pdf/2206.10849.pdf
Forskarna genomförde bevisför-tester för datorseende- och naturalspråksbehandlingsmodeller (NLP) på en smartphone av modell Honor V30 Pro från 2019 och en Raspberry Pi 4B 4GB.
Från resultaten (för smartphonen) kan vi se i bilden nedan att temperaturen på värdenheten stiger och sjunker med användning. De röda linjerna representerar en modell som körs utan Dynamisk växling.

Även om resultaten kan se ganska lika ut, är de inte: det som orsakar att temperaturen fluktuerar för de blå linjerna (dvs med den nya metoden) är växlingen fram och tillbaka mellan enklare och mer komplexa modellversioner. Vid inget tillfälle under driften utlöses termisk bromsning.
Det som orsakar att temperaturen stiger och sjunker i fallet med de röda linjerna är den automatiska aktiveringen av termisk bromsning i enheten, som saktar ner modellens drift och ökar dess latens.
I termer av hur användbar modellen är, kan vi se i bilden nedan att latensen för den oassisterade modellen är betydligt högre medan den utsätts för termisk bromsning:

Samtidigt visar bilden ovan att det nästan inte finns någon variation i latens för modellen som hanteras av Dynamisk växling, som förblir responsiv under hela tiden.
För slutanvändaren kan hög latens betyda ökad väntetid, vilket kan leda till att uppgiften överges och att användaren blir missnöjd med appen som värd.
I fallet med NLP-system (i stället för datorseende) kan höga svarstider vara ännu mer besvärande, eftersom uppgifterna kan bero på snabba svar (såsom automatisk översättning eller verktyg för att hjälpa funktionshindrade användare).
För verkligen tidskritiska applikationer – som realtids-VR/AR – skulle hög latens i princip döda modellens kärnnytta.
Forskarna påpekar:
‘Vi hävdar att termisk bromsning utgör ett allvarligt hot mot mobila ML-applikationer som är latenskritiska. Till exempel under realtidsvisning för videoströmning eller spel, skulle en plötslig ökning av bearbetningslatens per bildruta ha en betydande negativ effekt på användarupplevelsen. Dessutom tillhandahåller moderna mobila operativsystem ofta specialtjänster och applikationer för synskadade personer, som VoiceOver på iOS och TalkBack på Android. ‘
‘Användaren interagerar vanligtvis med mobila telefoner genom att förlita sig helt på tal, så kvaliteten på dessa tjänster är starkt beroende av applikationens responsivitet eller latens.’

Graf som visar prestandan för BERT w50 d50 oassisterad (röd) och med Dynamisk växling (blå). Observera jämnheten i latens med Dynamisk växling (blå).
Artikeln heter Play It Cool: Dynamisk växling förhindrar termisk bromsning och är ett samarbete mellan två forskare från UoA, en från Carnegie Mellon och en som representerar båda institutionerna.
CPU-baserad mobil AI
Även om Dynamisk växling och multi-skalearkitekturer är ett etablerat och aktivt forskningsområde, har de flesta initiativen koncentrerats på högpresterande enheter, och fokus ligger för närvarande på intensiv optimering av lokala (dvs enhetsbaserade) neuronnät, vanligtvis för inferens snarare än träning, och förbättring av dedikerad mobil hårdvara.
Testerna som utfördes av forskarna genomfördes på CPU-snabbhet i stället för GPU. Trots växande intresse för att utnyttja lokala GPU-resurser i mobila maskinlärningsapplikationer (och till och med träning direkt på mobila enheter, vilket kan förbättra kvaliteten på den färdiga modellen), drar GPU:er vanligtvis mer ström, en kritisk faktor i AI:s strävan att vara oberoende (av molntjänster) och användbar i en enhet med begränsade resurser.
Testning av viktdelning
De nätverk som testades för projektet var slimmade nätverk och DynaBERT, som representerar datorseende- respektive NLP-baserade uppgifter.
Även om det har funnits olika initiativ för att skapa iterationer av BERT som kan köras effektivt och ekonomiskt på mobila enheter, har vissa av försöken kritiserats som omständliga lösningar, och forskarna i den nya artikeln påpekar att användning av BERT i den mobila miljön är en utmaning, och att ‘BERT-modeller i allmänhet är för beräkningskrävande för mobila telefoner’.
DynaBERT är ett kinesiskt initiativ för att optimera Googles kraftfulla NLP/NLU-ramverk i en resursfattig miljö, men även denna implementation av BERT visade sig vara mycket krävande enligt forskarna.
Forskarna genomförde två experiment på både smartphonen och Raspberry PI-enheten. I datorseende-experimentet bearbetades en enda, slumpmässigt vald bild kontinuerligt och upprepat i ResNet50 som en klassificeringsuppgift, och kunde köras stabilt och utan att utlösa termisk bromsning under hela den timme som experimentet pågick.
Artikeln påpekar:
‘Även om det kan offra någon noggrannhet, har den föreslagna Dynamiska växlingen en snabbare inferenshastighet. Viktigast är att vår Dynamiska växlingsmetod har en konsekvent inferens.’

Körning av ResNet50 oassisterad och med Dynamisk växling mellan Slimmable ResNet50 x1.0 och x0.25-versionen på en kontinuerlig bildklassificeringsuppgift, under sextio minuter.
För NLP-testerna ställde forskarna in experimentet för att växla mellan de två minsta modellerna i DynaBERT-sviten, men fann att vid 1,4 gånger latens, BERT bromsar vid cirka 70°. De ställde därför in nedväxlingen för att ske när den operativa temperaturen nådde 65°.
BERT-experimentet bestod i att låta installationen köra inferens kontinuerligt på ett fråge-svar-par från GLUE’s ONLI-dataset.
Latens- och noggrannhetsutbytet var mer allvarligt för den ambitiösa BERT-uppgiften än för datorseendeimplementeringen, och noggrannhet kom på bekostnad av ett större behov av att kontrollera enhetens temperatur, för att undvika bromsning:

Latens mot noggrannhet för forskarnas experiment över de två sektortuppgifterna.
Forskarna observerar:
‘Dynamisk växling kan i allmänhet inte förhindra att BERT-modeller utsätts för termisk bromsning på grund av modellens enorma beräkningsintensitet. Men under vissa begränsningar kan dynamisk växling fortfarande vara till hjälp när BERT-modeller distribueras på mobila telefoner.’
Forskarna fann att BERT-modeller orsakar att CPU-temperaturen på Honor V30-telefonen stiger till 80° på under 32 sekunder och utlöser termisk bromsning på under sex minuters aktivitet. Därför använde forskarna endast halvbredd-BERT-modeller.
Experimenten upprepades på Raspberry PI-uppsättningen, och tekniken kunde också i den miljön förhindra att termisk bromsning utlöstes. Forskarna påpekar dock att Raspberry PI inte utsätts för samma extrema termiska begränsningar som en tätt packad smartphone, och verkar ha lagt till denna serie experiment som en ytterligare demonstration av metodens effektivitet i modest utrustade bearbetningsmiljöer.
Publicerad första gången den 23 juni 2022.












