Sztuczna inteligencja
Jak zachować chłodne smartfony podczas uruchamiania modeli uczenia maszynowego

Badacze z Uniwersytetu w Austin i Carnegie Mellon zaproponowali nowy sposób uruchamiania obliczeniowo wymagających modeli uczenia maszynowego na urządzeniach mobilnych, takich jak smartfony, oraz na urządzeniach edge o niższej mocy, bez wyzwolenia obniżania mocy obliczeniowej – powszechnego mechanizmu ochronnego w profesjonalnych i konsumenckich urządzeniach, zaprojektowanego w celu obniżenia temperatury urządzenia hostującego przez spowolnienie jego wydajności, aż do osiągnięcia ponownie dopuszczalnych temperatur roboczych.
Nowe podejście może pomóc w uruchamianiu bardziej złożonych modeli ML do wykonywania inferencji i różnych innych typów zadań bez zagrażania stabilności hostującego smartfona.
Głównym pomysłem jest użycie dynamicznych sieci, w których wagi modelu mogą być dostępne zarówno dla wersji “niskiego ciśnienia”, jak i “pełnej intensywności” lokalnego modelu uczenia maszynowego.
W przypadkach, w których działanie lokalnej instalacji modelu uczenia maszynowego powinno spowodować wzrost temperatury urządzenia do krytycznego poziomu, model dynamicznie przełącza się na mniej wymagający model, aż do stabilizacji temperatury, a następnie przełącza się z powrotem na pełnowartościową wersję.

Testowe zadania składały się z zadania klasyfikacji obrazów i zadania inferencji językowej QNLI – oba rodzaje operacji, które mogą angażować aplikacje AI mobilne. Źródło: https://arxiv.org/pdf/2206.10849.pdf
Badacze przeprowadzili testy koncepcyjne dla modeli komputerowego widzenia i przetwarzania języka naturalnego (NLP) na smartfonie Honor V30 Pro z 2019 roku i Raspberry Pi 4B 4GB.
Z wyników (dla smartfona) można zobaczyć na poniższym obrazie, że temperatura urządzenia hostującego wzrasta i spada wraz z użyciem. Czerwone linie reprezentują model działający bez Dynamic Shifting.

Chociaż wyniki mogą wyglądać bardzo podobnie, nie są one takie same: to, co powoduje wahanie temperatury w przypadku niebieskich linii (tj. korzystających z nowej metody), jest przełączaniem się między prostszymi i bardziej złożonymi wersjami modelu. W żadnym momencie działania nie jest wyzwalane obniżanie mocy obliczeniowej.
To, co powoduje wzrost i spadek temperatury w przypadku czerwonych linii, jest automatycznym zaangażowaniem obniżania mocy obliczeniowej w urządzeniu, które spowalnia działanie modelu i zwiększa jego opóźnienie.
Jeśli chodzi o użyteczność modelu, można zobaczyć na poniższym obrazie, że opóźnienie dla niepomaganego modelu jest znacznie wyższe, gdy jest on obniżany:

W tym samym czasie powyższy obraz pokazuje prawie żadnych wahań opóźnienia dla modelu zarządzanego przez Dynamic Shifting, który pozostaje responsywny przez cały czas.
Dla użytkownika końcowego wysokie opóźnienie może oznaczać zwiększony czas oczekiwania, co może spowodować porzucenie zadania i niezadowolenie z aplikacją, która go hostuje.
W przypadku systemów NLP (a nie komputerowego widzenia) wysokie czasy odpowiedzi mogą być jeszcze bardziej niepokojące, ponieważ zadania mogą polegać na szybkiej odpowiedzi (takiej jak auto-tłumaczenie lub narzędzia pomagające osobom niepełnosprawnym).
Dla prawdziwie krytycznych aplikacji w czasie – takich jak VR/AR w czasie rzeczywistym – wysokie opóźnienie skutecznie zabiłoby podstawową użyteczność modelu.
Badacze stwierdzają:
‘Uważamy, że obniżanie mocy obliczeniowej stanowi poważne zagrożenie dla aplikacji ML mobilnych, które są krytyczne pod względem opóźnienia. Na przykład podczas renderowania wizualnego w czasie rzeczywistym dla transmisji wideo lub gier, nagły wzrost opóźnienia przetwarzania na klatkę będzie miał znaczący negatywny wpływ na doświadczenie użytkownika. Ponadto nowoczesne systemy operacyjne mobilne często zapewniają specjalne usługi i aplikacje dla osób niepełnosprawnych, takie jak VoiceOver w systemie iOS i TalkBack w systemie Android.
‘Użytkownik zwykle wchodzi w interakcję z telefonem komórkowym, polegając całkowicie na mowie, więc jakość tych usług jest w dużym stopniu zależna od responsywności lub opóźnienia aplikacji.’

Wykresy pokazujące wyniki BERT w50 d50 bez pomocy (czerwony), i z pomocą Dynamic Shifting (niebieski). Zwróć uwagę na równomierność opóźnienia w Dynamic Shifting (niebieski).
Artykuł ten nosi tytuł Play It Cool: Dynamic Shifting Prevents Thermal Throttling i jest współpracą między dwoma badaczami z UoA; jednym z Carnegie Mellon; i jednym reprezentującym obie instytucje.
Mobile AI oparty na CPU
Chociaż Dynamic Shifting i architektury wieloskalowe są ugruntowanym i aktywnym obszarem badań, większość inicjatyw koncentrowała się na wyższych urządzeniach obliczeniowych, a obecnie główny wysiłek jest podzielony między intensywną optymalizację lokalnych (tj. urządzeniowych) sieci neuronowych, zwykle do celów inferencji, a nie szkolenia, i poprawę dedykowanego sprzętu mobilnego.
Testy przeprowadzone przez badaczy zostały przeprowadzone na procesorach CPU, a nie GPU. Pomimo rosnącego zainteresowania wykorzystaniem lokalnych zasobów GPU w aplikacjach uczenia maszynowego (i nawet szkolenia bezpośrednio na urządzeniach mobilnych, co mogłoby poprawić jakość końcowego modelu), GPU zwykle pobierają więcej mocy, co jest krytycznym czynnikiem w wysiłkach AI, aby być niezależnym (od usług chmurowych) i użytecznym w urządzeniu o ograniczonych zasobach.
Testowanie udostępniania wag
Sieci testowane w ramach projektu były siecią slim i DynaBERT, reprezentującymi odpowiednio zadanie komputerowego widzenia i zadanie NLP.
Chociaż były różne inicjatywy, aby uczynić iteracje BERT, które mogą działać wydajnie i ekonomicznie na urządzeniach mobilnych, niektóre z tych prób zostały skrytykowane jako torturowane obejścia, a badacze nowego artykułu zauważają, że używanie BERT w przestrzeni mobilnej jest wyzwaniem, i że “modele BERT są ogólnie zbyt obliczeniowo intensywne dla telefonów komórkowych”.
DynaBERT to chińska inicjatywa, aby zoptymalizować potężną ramę NLP/NLU w kontekście środowiska pozbawionego zasobów; ale nawet ta implementacja BERT, badacze stwierdzili, że była bardzo wymagająca.
Niemniej jednak, na obu smartfonie i urządzeniu Raspberry PI, autorzy przeprowadzili dwa eksperymenty. W eksperymencie CV, jeden losowo wybrany obraz był przetwarzany ciągle i powtarzalnie w ResNet50 jako zadanie klasyfikacji, i mógł działać stabilnie i bez wyzwalania obniżania mocy obliczeniowej przez cały czas trwania eksperymentu.
Artykuł stwierdza:
‘Chociaż może to poświęcić nieco dokładności, proponowane Dynamic Shifting ma szybszą prędkość inferencji. Co najważniejsze, nasze Dynamic Shifting cieszy się stałą inferencją.’

Uruchamianie ResNet50 bez pomocy i z Dynamic Shifting między Slimmable ResNet50 x1.0 i wersją x0.25 na ciągłym zadaniu klasyfikacji obrazów, przez sześćdziesiąt minut.
Dla testów NLP, autorzy ustalili eksperyment, aby przełączać się między dwoma najmniejszymi modelami w zestawie DynaBERT, ale stwierdzili, że przy 1,4-krotnym opóźnieniu, BERT jest obniżany przy około 70°. Ustali więc, że przełączenie w dół następuje, gdy temperatura robocza osiąga 65°.
Eksperyment BERT obejmował uruchamianie inferencji ciągle na parze pytanie/odpowiedź z zestawu danych ONLI.
Kompromis między opóźnieniem a dokładnością był bardziej dotkliwy w przypadku zadania BERT niż w przypadku implementacji komputerowego widzenia, a dokładność przyszła kosztem bardziej dotkliwej potrzeby kontroli temperatury urządzenia, aby uniknąć obniżania mocy obliczeniowej:

Opóźnienie a dokładność dla eksperymentów badaczy w dwóch zadaniach.
Autorzy zauważają:
‘Dynamic Shifting ogólnie nie może zapobiec modelom BERT przed obniżaniem mocy obliczeniowej z powodu ogromnej intensywności obliczeniowej modelu. Jednak pod pewnymi ograniczeniami, dynamiczne przełączanie może nadal być pomocne przy wdrażaniu modeli BERT na telefonach komórkowych.’
Autorzy stwierdzili, że modele BERT powodują wzrost temperatury procesora telefonu Honor V30 do 80° w ciągu moins niż 32 sekund, i spowodują obniżanie mocy obliczeniowej w ciągu sześciu minut działania. Dlatego autorzy użyli tylko modeli BERT o połowie szerokości.
Eksperymenty zostały powtórzone na urządzeniu Raspberry PI, i technika była również w stanie zapobiec wyzwalaniu obniżania mocy obliczeniowej w tym środowisku. Jednak autorzy zauważają, że Raspberry PI nie działa pod takimi samymi ekstremalnymi ograniczeniami termicznymi, jak gęsto upakowany smartphone, i wydają się dodać ten zestaw eksperymentów jako dalszy dowód skuteczności metody w środowiskach przetwarzania o umiarkowanym wyposażeniu.
Pierwotnie opublikowane 23 czerwca 2022.












