În acest articol vom analiza în detaliu provocările Edge ML și vom identifica zece factori cheie de care proiectanții de sisteme embedded ar trebui să țină cont.
De la întreținerea predictivă și recunoașterea imaginilor la monitorizarea de la distanță a activelor și controlul accesului, cererea de aplicații IoT industriale capabile să ruleze modele de învățare automată (ML) pe dispozitive locale, mai degrabă decât în cloud, este în creștere rapidă.
Pe lângă susținerea scenariilor în care datele de la senzori trebuie colectate departe de cloud, așa-numitele implementări “ML at the Edge” sau Edge ML oferă avantaje precum latență redusă, inferență în timp real, lățime de bandă de comunicații redusă, securitate îmbunătățită și costuri mai mici.
Desigur, implementarea Edge ML nu este lipsită de provocări – fie că este vorba de puterea de procesare și memoria limitate ale dispozitivelor, de disponibilitatea sau crearea seturilor de date adecvate, ori de faptul că majoritatea proiectanților de aplicații embedded nu au o pregătire în domeniul științei datelor.
Cu toate acestea, vestea bună este că există un ecosistem aflat în expansiune, format din hardware, software, instrumente de dezvoltare și asistență, care îi ajută pe dezvoltatori să facă față acestor provocări.
Ce înseamnă Edge ML?
Instrument esențial în livrarea inteligenței artificiale (AI), învățarea automată (ML) utilizează algoritmi pentru a face deducții atât din date în timp real, cât și din date istorice. Până în prezent, aplicațiile ML au fost implementate prin procesarea datelor, în cea mai mare parte, în cloud.
Edge ML reduce sau chiar elimină această dependență de cloud, permițând dispozitivelor IoT locale să analizeze datele, să construiască modele, să formuleze predicții și să ia decizii. În plus, sistemele pot să-și îmbunătățească constant eficiența și acuratețea în mod automat, cu o intervenție umană redusă sau chiar inexistentă.
Edge ML are potențialul de a impulsiona semnificativ Industria 4.0, deoarece procesarea în timp real a datelor la marginea rețelei îmbunătățește eficiența producției. În plus, aplicații din domenii precum automatizarea clădirilor, securitatea și supravegherea pot beneficia considerabil de această tehnologie.
Astfel, potențialul ML la marginea rețelei este uriaș, după cum arată un studiu recent realizat de ABI Research, care estimează că piața pentru tehnologiile Edge ML va depăși 5 miliarde USD până în 2027.
Totodată, deși ML era, în trecut, apanajul comunităților matematice și științifice, această tehnologie devine tot mai mult parte integrantă a procesului de inginerie și, în special, un element important al ingineriei sistemelor embedded.
Ca atare, provocările legate de implementarea Edge ML nu mai țin de “de unde începem?”, ci mai degrabă de “cum facem acest lucru rapid și rentabil?”. Cele zece considerații prezentate în continuare pot oferi răspunsuri utile la această întrebare.
-
Captarea datelor
Până în prezent, majoritatea implementărilor ML au fost realizate pe computere puternice sau servere cloud. Cu toate acestea, Edge ML trebuie implementat pe hardware cu constrângeri de spațiu și consum energetic.
Utilizarea unor senzori inteligenți care efectuează un anumit nivel de preprocesare încă din etapa de captare a datelor simplifică semnificativ organizarea și analiza acestora, deoarece senzorii preiau primele două etape din fluxul procesului ML (vezi Figura 1).
Un senzor inteligent poate genera unul dintre cele două tipuri de modele: fie modele antrenate pentru clasificări simple, fie modele antrenate pentru a rezolva probleme bazate pe regresie.
-
Interfețe
Modelele ML trebuie să poată fi implementate, iar acest lucru necesită existența unor interfețe între componentele software ale sistemului. Calitatea acestor interfețe determină cât de eficient funcționează sistemul și în ce măsură poate învăța în mod autonom.
Un model ML are granițe bine definite: intrări și ieșiri. Gestionarea tuturor caracteristicilor de intrare este relativ simplă. Mai dificilă este însă tratarea predicțiilor modelului, în special în cazul unui sistem nesupravegheat.
Desigur, interfețele vizează și conexiunile fizice dintre componentele hardware. Acestea pot fi la fel de simple precum interfețele pentru USB sau memorie externă, sau pot fi soluții mai avansate care suportă transmisii video și intrări specifice utilizatorului.
Prin definiție, aplicațiile Edge ML sunt limitate în ceea ce privește spațiul, consumul de energie și costurile, astfel încât este importantă selecția atentă a tipurilor de interfețe și a numărului minim necesar.
-
Crearea de seturi de date optimizate
Utilizarea seturilor de date comerciale (colecții de date deja organizate într-o anumită structură) este o modalitate eficientă de a accelera dezvoltarea unui proiect Edge ML. Setul de date trebuie optimizat în funcție de scopul specific al dispozitivului Edge ML.

Figura 2: În partea de sus, setul de date de intrare include date de antrenament. (Sursa imaginii: Microchip)
Să luăm, de exemplu, un scenariu de securitate în care comportamentul persoanelor trebuie monitorizat, iar acțiunile suspecte trebuie detectate automat. Dacă un dispozitiv local de monitorizare integrează tehnologie de viziune și capacitatea de a recunoaște acțiunile umane – de exemplu, dacă o persoană stă în picioare, se așează, merge, aleargă sau lasă o geantă ori o cutie nesupravegheată – deciziile pot fi luate direct la nivelul sursei datelor.
În loc să se antreneze dispozitivul de la zero, se poate utiliza un set de date de antrenament ca parte a datelor de intrare (vezi Figura 2), cum ar fi MPII Human Pose, care include aproximativ 25.000 de imagini extrase din videoclipuri online. Datele sunt etichetate, ceea ce le face potrivite pentru antrenarea prin învățare automată supravegheată.
-
Cerințe privind puterea de procesare
Puterea de calcul necesară pentru Edge ML variază în funcție de aplicație. De exemplu, procesarea imaginilor necesită mult mai multă putere de calcul decât o aplicație care interoghează un senzor sau condiționează un semnal de intrare.
Modelele ML implementate pe dispozitive inteligente funcționează cel mai bine atunci când sunt compacte, iar sarcinile care le sunt atribuite sunt simple. Pe măsură ce modelele cresc în dimensiune, iar sarcinile devin mai complexe, cerințele de procesare cresc exponențial. Dacă aceste cerințe nu sunt îndeplinite, performanța sistemului poate fi afectată – în special în ceea ce privește viteza și/sau precizia.
Totuși, posibilitatea de a utiliza cipuri mai mici pentru ML este susținută de progresele realizate în algoritmi, modele open-source (precum TinyML), framework-uri ML și medii moderne de dezvoltare (IDE-uri), care îi ajută pe ingineri să creeze proiecte mai eficiente.
-
Semiconductori și senzori inteligenți
Multe aplicații Edge ML necesită procesare locală pentru recunoașterea imaginilor și a sunetului. Microprocesoarele și FPGA-urile care pot gestiona procesarea în cloud pentru astfel de aplicații sunt disponibile de ceva timp, însă astăzi, disponibilitatea semiconductorilor cu consum redus de energie, care integrează această funcționalitate, face ca dezvoltarea aplicațiilor la marginea rețelei să fie mult mai simplă.

Figura 3: SAMA7G54 de la Microchip cu capabilități video și audio integrate. (Sursa imaginii: Microchip)
De exemplu, dispozitivul SAMA7G54 de 1 GHz de la Microchip (Figura 3) este primul microprocesor single-core din industrie cu interfață de cameră MIPI CSI-2 și funcții audio avansate. Acesta integrează subsisteme complete pentru imagistică și audio, suportă rezoluții de până la 8 megapixeli și 720p la 60 fps, până la patru interfețe I2S, un transmițător și un receptor SPDIF, precum și un convertor de rată de eșantionare audio cu 4 canale stereo.
În plus, nu mai este necesar un dispozitiv dedicat pentru a asigura procesare avansată la nivel local. Inginerii descoperă că progresele în tehnologiile semiconductorilor și în algoritmii ML converg, permițând chiar și microcontrolerelor comerciale pe 16 biți – sau chiar pe 8 biți – să fie opțiuni viabile pentru procesarea Edge ML.
Pentru multe aplicații, utilizarea unor astfel de dispozitive cu consum redus de energie și factor de formă redus este o condiție esențială pentru realizarea de sisteme IoT industriale Edge ML, alimentate de la baterie și bazate pe senzori.
-
Instrumente, modele, framework-uri și IDE-uri open-source
În orice proces de dezvoltare, disponibilitatea instrumentelor, modelelor, framework-urilor și mediilor de dezvoltare integrate open-source simplifică și accelerează etapele de proiectare, testare, prototipare și reduc semnificativ timpul – esențial – până la lansarea pe piață.
În cazul Edge ML, apariția conceptului “Tiny Machine Learning” sau TinyML este deosebit de importantă. Potrivit definiției oferite de tinyML Foundation, acesta este “un domeniu în creștere rapidă al tehnologiilor și aplicațiilor de învățare automată, care include hardware (circuite integrate dedicate), algoritmi și software capabil să analizeze datele provenite de la senzori (viziune, audio, IMU, biomedicale etc.) direct pe dispozitiv, cu un consum redus de energie – de regulă în domeniul miliwaților sau mai puțin – permițând o gamă largă de aplicații cu funcționare permanentă, destinate dispozitivelor alimentate de la baterii”.
Grație evoluției TinyML, în ultimii ani s-a înregistrat o creștere exponențială a disponibilității instrumentelor și a suportului care facilitează munca proiectanților de sisteme embedded.
Exemple relevante de astfel de instrumente sunt cele oferite de Edge Impulse și SensiML™. Furnizând “TinyML ca serviciu”, acestea permit aplicarea ML în spații de doar câțiva kilobiți și sunt pe deplin compatibile cu biblioteca TensorFlow™ Lite pentru implementarea modelelor pe dispozitive mobile, microcontrolere și alte platforme periferice.
Prin utilizarea acestor instrumente, dezvoltatorii pot implementa rapid funcționalități precum clasificarea, regresia și detectarea anomaliilor, pot simplifica colectarea datelor reale de la senzori, pot efectua procesarea semnalului în timp real – de la date brute la rețele neurale – și pot accelera testarea și implementarea pe dispozitivul țintă.
-
Kituri de dezvoltare
Disponibilitatea tot mai largă a kiturilor de dezvoltare este un alt factor care contribuie la accelerarea implementării aplicațiilor Edge ML. Multe produse comerciale sunt construite pe baza hardware-ului și firmware-ului din kiturile de dezvoltare pentru sisteme embedded – precum și a driverelor, modulelor software și algoritmilor care rulează pe acestea. Kituri adecvate pentru dezvoltarea de aplicații ML sunt disponibile de la o gamă largă de furnizori.
De exemplu, Raspberry Pi 4 Model B se bazează pe SoC-ul Broadcom® BCM2711 cu procesor Quad-core Cortex®-A72 pe 64 de biți (tactat la 1,5 GHz), integrează un GPU Broadcom VideoCore® VI și oferă opțiuni de 1, 2 sau 4 GB de memorie LPDDR4 RAM, asigurând o performanță de calcul între 13,5 și 32 GFLOPS.
Atunci când începeți un proiect, este util să acordați timp cercetării componentelor incluse în kiturile de dezvoltare, deoarece utilizarea aceluiași siliciu în aplicația finală poate aduce beneficii importante.
De exemplu, dacă aplicația ML implică viziune embedded, FPGA-urile PolarFire® SoC de la Microchip sunt ideale pentru procesarea vizuală intensivă la marginea rețelei, oferind suport pentru rezoluții de până la 4K, cu interfață SERDES de 12,37 Gbps, optimizată pentru consum redus de energie.
-
Securitatea datelor
Când vine vorba de securitate, vestea bună este că, datorită tehnologiei Edge ML, se transferă mult mai puține date către cloud – ceea ce înseamnă că riscurile cibernetice potențiale sunt semnificativ reduse.
Cu toate acestea, implementarea Edge ML aduce noi provocări, deoarece toate dispozitivele de tip edge – indiferent dacă sunt sau nu activate pentru ML – nu mai beneficiază de securitatea inerentă oferită de cloud și trebuie protejate separat, la fel ca orice alt dispozitiv IoT sau sistem embedded conectat la o rețea.
Printre aspectele de securitate care trebuie luate în considerare se numără:
- Cât de ușor pot fi manipulate datele? (cele introduse sau utilizate pentru antrenare, precum și modelul ML propriu-zis)
- Cât de bine sunt protejate datele? Pot fi accesate înainte de criptare? Nu uitați: criptarea necesită păstrarea în siguranță a cheilor – nu lăsate la vedere.
- Cât de sigură este rețeaua? Există riscul ca dispozitive neautorizate (sau care par autorizate) să se conecteze și să compromită sistemul?
- Poate fi clonat dispozitivul Edge ML?
Nivelul de securitate necesar va depinde, desigur, de aplicație (de exemplu, în cazul aplicațiilor critice pentru siguranță) și/sau de natura “sistemului extins” din care face parte dispozitivul Edge ML.
-
Capabilități la nivelul companiei
În cadrul unei echipe tipice de ingineri pot exista niveluri diferite de cunoștințe în domeniile ML și AI. Datorită instrumentelor open-source, kiturilor de dezvoltare și seturilor de date disponibile pe piață, proiectanții de sisteme embedded nu trebuie să aibă o cunoaștere aprofundată a științei datelor sau a rețelelor neurale de învățare profundă.
Totuși, atunci când este adoptată o nouă disciplină sau metodologie inginerească – sau când se investește în instrumente – timpul alocat instruirii poate duce, pe termen lung, la scurtarea ciclurilor de dezvoltare, reducerea numărului de modificări ale proiectului și creșterea eficienței per inginer.
Abundența de informații online despre ML – sub formă de tutoriale, cărți albe și webinarii – precum și organizarea de seminare și ateliere ML în cadrul târgurilor de inginerie, oferă numeroase oportunități pentru perfecționarea echipelor de dezvoltare.
Printre cursurile tradiționale se numără Professional Certificate Program in ML and AI de la MIT, în timp ce Imperial College London oferă un curs online care include un modul dedicat dezvoltării și optimizării modelelor ML cu ajutorul limbajului Python și al instrumentelor standard din industrie pentru evaluarea și îmbunătățirea performanței.
În final, capabilitățile unei echipe de ingineri pot fi extinse prin utilizarea instrumentelor generative de AI, care permit chiar și celor aflați la început de drum să dezvolte aplicații complexe. În plus, procesul de antrenare ML – în comparație cu programarea convențională – poate contribui la reducerea timpilor de dezvoltare, la diminuarea numărului de reluări și la obținerea unor rezultate mai bune.
-
Sprijin acordat de furnizori și parteneriate
Dezvoltarea unei aplicații bazate pe ML pentru un dispozitiv este mult mai ușoară atunci când beneficiază de sprijinul unor furnizori deja activi în acest domeniu.
De exemplu, pentru ML bazat pe cloud, AWS oferă programul său popular Machine Learning Competency Partners. În cazul specific al Edge ML, este recomandabil să priviți dincolo de produsul propriu-zis și să luați în considerare beneficiile potențiale oferite de colaborările furnizorului vostru.
Microchip, de exemplu, a investit resurse semnificative în stabilirea de relații cu parteneri care variază de la furnizori de senzori la furnizori de instrumente, permițând clienților săi accesul la tot ce au nevoie – de la consiliere și asistență de bază până la furnizarea de soluții complete, gata de implementat.
Concluzie
Deși fiecare dintre cele 10 puncte prezentate mai sus ar putea justifica, în sine, redactarea unui articol dedicat, scopul acestui material a fost de a ajuta proiectanții de sisteme embedded să identifice câțiva dintre principalii factori de care trebuie să țină cont înainte de a începe propriul lor proiect Edge ML.
Prin luarea în considerare a acestor aspecte încă din fazele inițiale, este posibilă elaborarea unei strategii care să conducă la dezvoltarea unor soluții optimizate – soluții care să îndeplinească cerințele privind dimensiunea, consumul de energie, costul și performanța, reducând totodată riscurile, reluările de proiect și timpul total de lansare pe piață.
1.) ABI Research Edge ML Enablement: Development Platforms, Tools and Solutions application analysis report, June 2022.
Despre autor:
Yann LeFaou este Director Asociat al unității de business Touch and Gesture din cadrul companiei Microchip. În această funcție, el coordonează o echipă care dezvoltă tehnologii tactile capacitive și conduce inițiativa companiei în domeniul învățării automate (ML) pentru microcontrolere și microprocesoare. Anterior, LeFaou a ocupat diverse poziții tehnice și de marketing la Microchip, inclusiv conducerea activităților globale de marketing pentru tehnologiile de interfață tactilă capacitivă, interfață om-mașină și electrocasnice. Deține o diplomă de inginer de la ESME Sudria, Franța.
Microchip Technology | https://www.microchip.com
Ce este regresia în învățarea automată (ML)?
Regresia este o tehnică fundamentală în învățarea automată utilizată pentru a prezice o valoare numerică continuă pe baza unor date de intrare.
Spre deosebire de clasificare, care atribuie o etichetă (de exemplu, spam sau non-spam), regresia estimează un rezultat cantitativ. Exemple:
- Estimarea temperaturii în funcție de ora din zi și nivelul de umiditate;
- Prezicerea nivelului de vibrații al unui motor industrial pe baza datelor senzorilor;
- Evaluarea consumului de energie într-un dispozitiv embedded în funcție de sarcină și temperatură.
În contextul Edge ML, regresia este utilă în aplicații de monitorizare predictivă, întreținere inteligentă sau control adaptiv, oferind rezultate precise în timp real direct pe dispozitiv.