Modele și platforme AI
TinyML: Aplicații, Limitări și Utilizarea sa în Dispozitive IoT și Edge

În ultimii ani, Inteligența Artificială (IA) și Învățarea Automată (ML) au cunoscut o creștere meteorică a popularității și a aplicațiilor, atât în industrie, cât și în mediul academic. Cu toate acestea, modelele actuale de ML și IA au o limitare majoră: necesită o cantitate imensă de putere de calcul și procesare pentru a obține rezultatele și acuratețea dorite. Acest lucru le limitează adesea utilizarea la dispozitive cu capacitate de calcul ridicată.
Dar, având în vedere progresele realizate în tehnologia sistemelor înglobate și dezvoltarea substanțială a industriei Internetului Lucrurilor (IoT), este de dorit să se incorporeze utilizarea tehnicilor și conceptelor de ML în sisteme înglobate cu resurse limitate, pentru inteligență ubicuă. Dorința de a utiliza concepte de ML în sisteme înglobate și IoT este factorul principal motivator în spatele dezvoltării TinyML, o tehnică de ML înglobată care permite modele și aplicații de ML pe dispozitive multiple cu resurse limitate, cu putere limitată și ieftine.
Cu toate acestea, implementarea ML pe dispozitive cu resurse limitate nu a fost simplă, deoarece implementarea modelelor de ML pe dispozitive cu putere de calcul scăzută prezintă propriile sale provocări în ceea ce privește optimizarea, capacitatea de procesare, fiabilitatea, întreținerea modelelor și multe altele.
În acest articol, vom face o analiză mai profundă a modelului TinyML, vom învăța mai multe despre fundalul său, despre instrumentele care susțin TinyML și despre aplicațiile TinyML utilizând tehnologii avansate. Deci, să începem.
Introducere în TinyML: De ce lumea are nevoie de TinyML
Dispozitivele Internetului Lucrurilor (IoT) urmăresc să valorifice calculul la margine, un paradigma de calcul care se referă la o serie de dispozitive și rețele aproape de utilizator, pentru a permite procesarea în timp real a datelor de la milioane de senzori și dispozitive interconectate. Unul dintre principalele avantaje ale dispozitivelor IoT este că necesită o putere de calcul și procesare scăzută, deoarece pot fi desfășurate la marginea rețelei și, prin urmare, au o amprentă de memorie scăzută.
Mai mult, dispozitivele IoT se bazează puternic pe platformele de margine pentru a colecta și transmite datele, deoarece dispozitivele de margine colectează date senzoriale și le transmit apoi către o locație apropiată sau către platforme cloud pentru procesare. Tehnologia de calcul la margine stochează și efectuează calcule pe date și oferă, de asemenea, infrastructura necesară pentru a susține calculul distribuit.
Implementarea calculului la margine în dispozitivele IoT oferă
- Securitate, confidențialitate și fiabilitate eficientă pentru utilizatorii finali.
- Întârziere scăzută.
- Disponibilitate ridicată și răspuns la aplicații și servicii.
Mai mult, deoarece dispozitivele de margine pot desfășura o tehnică de colaborare între senzori și cloud, procesarea datelor poate fi efectuată la marginea rețelei, în loc de a fi efectuată pe platforma cloud. Acest lucru poate duce la o gestionare eficientă a datelor, persistență a datelor, livrare eficientă și caching de conținut. În plus, pentru a implementa IoT în aplicații care implică interacțiunea om-mașină și îngrijirea sănătății moderne, calculul la margine oferă o modalitate de a îmbunătăți semnificativ serviciile de rețea.
Cercetările recente în domeniul calculului la margine al IoT au demonstrat potențialul de a implementa tehnici de ML în mai multe cazuri de utilizare ale IoT. Cu toate acestea, problema majoră este că modelele tradiționale de ML necesită o putere de calcul și procesare puternică, precum și o capacitate de memorie ridicată, ceea ce limitează implementarea modelelor de ML în dispozitivele și aplicațiile IoT.
Mai mult, tehnologia de calcul la margine de astăzi suferă de o capacitate de transmisie scăzută și de economisire a energiei, ceea ce duce la sisteme eterogene, care este principalul motiv pentru care se necesită o infrastructură armonioasă și holistică, în special pentru actualizarea, instruirea și implementarea modelelor de ML. Arhitectura proiectată pentru dispozitive înglobate prezintă o altă provocare, deoarece aceste arhitecturi depind de cerințele de hardware și software care variază de la dispozitiv la dispozitiv. Este motivul principal pentru care este dificil să se construiască o arhitectură standard de ML pentru rețelele IoT.
De asemenea, în scenariul actual, datele generate de diferite dispozitive sunt trimise către platformele cloud pentru procesare, din cauza naturii computaționale intensive a implementărilor de rețea. În plus, modelele de ML sunt adesea dependente de învățarea profundă, rețele neuronale profunde, circuite integrate specializate (ASIC) și unități de procesare grafică (GPU) pentru procesarea datelor și au, de obicei, o putere și o memorie ridicată. Implementarea modelelor de ML complete pe dispozitive IoT nu este o soluție viabilă, din cauza lipsei evidente de putere de calcul și procesare, precum și a soluțiilor de stocare limitate.
Cererea de a miniaturiza dispozitive înglobate cu putere scăzută, împreună cu optimizarea modelelor de ML pentru a le face mai eficiente din punct de vedere al puterii și memoriei, a deschis calea pentru TinyML, care urmărește să implementeze modele și practici de ML pe dispozitive IoT și framework. TinyML permite procesarea semnalelor pe dispozitive IoT și oferă inteligență înglobată, eliminând astfel nevoia de a transmite date către platformele cloud pentru procesare. Implementarea cu succes a TinyML pe dispozitive IoT poate duce, în cele din urmă, la o creștere a confidențialității și eficienței, reducând, în același timp, costurile de operare. În plus, ceea ce face TinyML și mai atractiv este că, în caz de conectivitate inadecvată, poate oferi analize on-premise.
TinyML: Introducere și Prezentare Generală
TinyML este un instrument de ML care are capacitatea de a efectua analize pe dispozitiv pentru diferite modalități de detectare, cum ar fi audio, viziune și vorbire. Modelele de ML construite pe instrumentul TinyML au cerințe scăzute de putere, memorie și calcul, ceea ce le face potrivite pentru rețele și dispozitive înglobate care funcționează pe baterii. În plus, cerințele scăzute ale TinyML o fac o potrivire ideală pentru a implementa modele de ML pe framework-ul IoT.
În scenariul actual, sistemele de ML bazate pe cloud se confruntă cu câteva dificultăți, inclusiv probleme de securitate și confidențialitate, consum ridicat de energie, dependență și probleme de întârziere, ceea ce face ca modelele pe platforme de hardware și software să fie preinstalate. Senzorii colectează datele care simulează lumea fizică și sunt apoi procesate folosind un CPU sau MPU (unitate de procesare micro). MPU răspunde nevoilor de suport analitic ML activate de rețele și arhitecturi de margine. Arhitectura de ML de margine comunică cu cloud-ul de ML pentru transferul de date și implementarea TinyML poate duce la progrese semnificative în tehnologie.
Ar fi corect să spunem că TinyML este o combinație de software, hardware și algoritmi care lucrează împreună pentru a oferi performanța dorită. Calculul analogic sau de memorie poate fi necesar pentru a oferi o experiență de învățare mai bună și mai eficientă pentru dispozitivele hardware și IoT care nu susțin acceleratoare de hardware. În ceea ce privește software-ul, aplicațiile construite folosind TinyML pot fi implementate și desfășurate pe platforme precum Linux sau Linux înglobat și pe software-ul activat de cloud. În cele din urmă, aplicațiile și sistemele construite pe algoritmul TinyML trebuie să aibă sprijinul unor noi algoritmi care necesită modele cu dimensiuni mici de memorie pentru a evita consumul ridicat de memorie.
Pentru a rezuma, aplicațiile construite folosind instrumentul TinyML trebuie să optimizeze principiile și metodele de ML, împreună cu proiectarea software-ului compact, în prezența unor date de înaltă calitate. Aceste date trebuie apoi să fie flashate prin fișiere binare generate folosind modele instruite pe mașini cu capacitate și putere de calcul mult mai mare.
În plus, sistemele și aplicațiile care rulează pe instrumentul TinyML trebuie să ofere o acuratețe ridicată atunci când funcționează în condiții de constrângere mai stricte, deoarece se necesită software compact pentru un consum redus de energie care să susțină implicațiile TinyML. În plus, modulele sau aplicațiile TinyML pot depinde de puterea bateriei pentru a-și susține operațiunile pe sisteme înglobate de margine.
Cu toate acestea, aplicațiile TinyML au două cerințe fundamentale
- Capacitatea de a scala miliarde de sisteme înglobate ieftine.
- Stocarea codului pe RAM-ul dispozitivului cu o capacitate sub câteva KB.
Aplicații ale TinyML folosind Tehnologii Avansate
Una dintre principalele motive pentru care TinyML este un subiect de interes în industria IA și ML este potențialul său de aplicații, inclusiv aplicații bazate pe viziune și vorbire, diagnostic de sănătate, clasificare și comprimare de modele de date, interfață creier-calculator, calcul la margine, fenomică, mașini autonome și multe altele.
Aplicații Bazate pe Vorbire
Comunicații Vorbire
De obicei, aplicațiile bazate pe vorbire se bazează pe metode de comunicare convenționale, în care toate datele sunt importante și sunt transmise. Cu toate acestea, în ultimii ani, comunicarea semantică a apărut ca o alternativă la comunicarea convențională, deoarece în comunicarea semantică, se transmite doar sensul sau contextul datelor. Comunicarea semantică poate fi implementată în aplicații bazate pe vorbire folosind metodologii TinyML.
Unele dintre cele mai populare aplicații din industria comunicațiilor vocale de astăzi sunt detectarea vorbirii, recunoașterea vorbirii, învățarea online, predarea online și comunicarea orientată spre obiective. Aceste aplicații au, de obicei, un consum ridicat de energie și cerințe de date ridicate pe dispozitivul gazdă. Pentru a depăși aceste cerințe, a fost introdusă o nouă bibliotecă TinySpeech, care permite dezvoltatorilor să construiască o arhitectură de calcul redus, utilizând rețele neuronale profunde convoluționale pentru a crea o facilitate de stocare redusă.
Pentru a utiliza TinyML pentru îmbunătățirea vorbirii, dezvoltatorii au abordat mai întâi dimensiunea modelului de îmbunătățire a vorbirii, deoarece era supusă unor limitări și constrângeri de hardware. Pentru a aborda problema, a fost implementată o tehnica de tăiere structurată și cuantificare întreagă pentru modelul de îmbunătățire a vorbirii RNN (Rețea Neuronală Recurentă). Rezultatele au arătat că dimensiunea modelului a fost redusă cu aproximativ 12 ori, în timp ce operațiunile au fost reduse cu aproximativ 3 ori. În plus, este esențial ca resursele să fie utilizate eficient, în special atunci când sunt desfășurate pe aplicații cu resurse limitate care execută aplicații de recunoaștere a vorbirii.
Ca urmare, pentru a partitiona procesul, a fost propusă o metodă de co-proiectare pentru aplicații de voce și recunoaștere a vorbirii bazate pe TinyML. Dezvoltatorii au utilizat operațiunea de ferestre pentru a partitiona software-ul și hardware-ul într-un mod care să preproceseze datele brute de voce. Metoda a părut să funcționeze, deoarece rezultatele au indicat o scădere a consumului de energie pe hardware.
Mai mult, cercetările recente au propus utilizarea unui transductor bazat pe telefon pentru sisteme de recunoaștere a vorbirii și propunerea vizează înlocuirea predictorilor LSTM cu un strat Conv1D pentru a reduce nevoia de calcul pe dispozitive de margine. Când a fost implementată, propunerea a returnat rezultate pozitive, deoarece SVD (Descompunerea Valorilor Singulare) a comprimat modelul cu succes, în timp ce utilizarea decodării bazate pe WFST (Automat Finiț cu Stare și Tranzitie) a oferit mai multă flexibilitate în îmbunătățirea modelului.
Multe aplicații proeminente de recunoaștere a vorbirii, cum ar fi asistenții virtuali sau asistenții vocali, folosesc tehnici de ML pentru a funcționa. Asistenții vocali populari, cum ar fi Siri și Asistentul Google (GOOGL ), apelează platforma cloud de fiecare dată când primesc date, ceea ce creează preocupări semnificative legate de confidențialitate și securitate a datelor. TinyML este o soluție viabilă pentru această problemă, deoarece urmărește să efectueze recunoașterea vorbirii pe dispozitive și să elimine nevoia de a migra date către platforme cloud. Una dintre modalitățile de a obține recunoașterea vorbirii pe dispozitiv este de a utiliza Tiny Transducer, un model de recunoaștere a vorbirii care utilizează un strat DFSMN (Bloc de Memorie Secvențială Profundă) cuplat cu un strat Conv1D, în loc de straturile LSTM, pentru a reduce nevoia de calcul și parametrii rețelei.
Ajutoare pentru Auz
Pierderea auzului este o problemă majoră de sănătate la nivel global, iar capacitatea oamenilor de a auzi sunete slăbește, de obicei, odată cu vârsta, și este o problemă majoră în țările care se confruntă cu o populație în îmbătrânire, inclusiv China, Japonia și Coreea de Sud. Dispozitivele de ajutor pentru auz funcționează, în prezent, pe principiul simplu de amplificare a tuturor sunetelor de intrare din jur, ceea ce face dificil pentru persoană să distingă sau să diferențieze sunetul dorit, în special într-un mediu zgomotos.
TinyML poate fi o soluție viabilă pentru această problemă, deoarece utilizarea unui model TinyLSTM care utilizează un algoritm de recunoaștere a vorbirii pentru dispozitive de ajutor pentru auz poate ajuta utilizatorii să distingă între diferite sunete.
Aplicații Bazate pe Viziune
TinyML are potențialul de a juca un rol crucial în procesarea seturilor de date bazate pe viziune, deoarece, pentru a obține ieșiri mai rapide, aceste seturi de date trebuie procesate pe platforma de margine însăși. Pentru a obține acest lucru, modelul TinyML se confruntă cu provocări practice în timpul antrenării modelului folosind placa microcontrolerului OpenMV H7. Dezvoltatorii au propus, de asemenea, o arhitectură pentru a detecta limba americană a semnelor folosind un microcontroler ARM Cortex M7 care funcționează doar cu 496KB de RAM de cadru.
Implementarea TinyML pentru aplicații bazate pe viziune pe platforme de margine a necesitat ca dezvoltatorii să depășească provocarea majoră a rețelelor neuronale convoluționale (CNN) cu o eroare de generalizare ridicată și o acuratețe de antrenare și testare ridicată. Cu toate acestea, implementarea nu s-a generalizat eficient la imagini din noi cazuri de utilizare și din fundaluri cu zgomot. Când dezvoltatorii au utilizat metoda de interpolare a augmentării, modelul a returnat un scor de acuratețe de peste 98% pe datele de test și de aproximativ 75% în generalizare.

Mai mult, s-a observat că, atunci când dezvoltatorii au utilizat metoda de interpolare a augmentării, a existat o scădere a acurateței modelului în timpul cuantificării, dar, în același timp, a existat și o creștere a vitezei de inferență a modelului și a generalizării clasificării. Dezvoltatorii au propus, de asemenea, o metodă pentru a crește și mai mult acuratețea modelului de generalizare prin antrenarea pe date obținute dintr-o varietate de surse diferite și testarea performanței pentru a explora posibilitatea de a o implementa pe platforme de margine, cum ar fi ceasurile inteligente portabile.
Mai mult, studii suplimentare privind rețelele neuronale convoluționale (CNN) au indicat că este posibil să se obțină rezultate dorite cu arhitectura CNN pe dispozitive cu resurse limitate. Recent, dezvoltatorii au reușit să creeze un cadru pentru detectarea măștilor medicale pe un microcontroler ARM Cortex M7 cu resurse limitate, utilizând TensorFlow Lite cu amprentă de memorie minimă. Dimensiunea modelului după cuantificare a fost de aproximativ 138 KB, în timp ce viteza de inferență pe placa țintă a fost de aproximativ 30 de cadre pe secundă.
O altă aplicație a TinyML pentru aplicații bazate pe viziune este de a implementa un dispozitiv de recunoaștere a gesturilor care poate fi atașat la o cârjă pentru a ajuta persoanele cu deficiențe de vedere să navigheze prin viața de zi cu zi. Pentru a proiecta acest dispozitiv, dezvoltatorii au utilizat setul de date de gesturi și au antrenat modelul ProtoNN cu un algoritm de clasificare. Rezultatele obținute din această configurație au fost precise, proiectul a fost ieftin și a oferit rezultate satisfăcătoare.
O altă aplicație semnificativă a TinyML este în industria vehiculelor autonome și a mașinilor fără șofer, din cauza lipsei de resurse și a puterii de calcul la bord. Pentru a aborda această problemă, dezvoltatorii au introdus o metodă de învățare închisă, construită pe modelul TinyCNN, care a propus un model predictor online care capturează imaginea la runtime. Principala problemă cu care s-au confruntat dezvoltatorii atunci când au implementat TinyML pentru conducerea autonomă a fost că modelul de decizie, care a fost instruit să funcționeze pe date offline, nu a funcționat la fel de bine atunci când a fost confruntat cu date online. Pentru a maximiza pe deplin aplicațiile mașinilor autonome și ale vehiculelor fără șofer, modelul ar trebui să poată adapta în timp real.
Clasificare și Comprimare a Modelelor de Date
Una dintre cele mai mari provocări ale cadrului TinyML actual este de a permite să se adapteze la date de antrenare online. Pentru a aborda această problemă, dezvoltatorii au propus o metodă numită TinyOL (TinyML Online Learning), care permite antrenarea cu învățare online incrementală pe unități de control micro, permițând astfel modelului să se actualizeze pe dispozitive de margine IoT. Implementarea a fost realizată utilizând limbajul de programare C++ și s-a adăugat un strat suplimentar în arhitectura TinyOL.
Mai mult, dezvoltatorii au efectuat, de asemenea, auto-încodarea plăcii Arduino Nano 33 BLE și modelul instruit a fost capabil să clasifice noi modele de date. În plus, lucrul de dezvoltare a inclus proiectarea unor algoritmi eficienți și mai optimizați pentru rețelele neuronale, pentru a sprijini modelele de antrenare online pe dispozitive.
Cercetările în TinyOL și TinyML au indicat că numărul de straturi de activare a fost o problemă majoră pentru dispozitivele de margine IoT cu resurse limitate. Pentru a aborda această problemă, dezvoltatorii au introdus modelul TinyTL (Tiny Transfer Learning) pentru a face utilizarea memoriei pe dispozitivele de margine IoT mult mai eficientă, evitând utilizarea straturilor intermediare pentru scopuri de activare. În plus, dezvoltatorii au introdus, de asemenea, un nou modul de bias, numit “modul de reziduu ușor”, pentru a maximiza capacitățile de adaptare și, în același timp, pentru a permite extracția de caracteristici să descopere hărți de caracteristici reziduale.
Atunci când a fost comparat cu ajustarea fină a rețelei complete, rezultatele au fost în favoarea arhitecturii TinyTL, deoarece au arătat că TinyTL reduce suprasarcina de memorie de aproximativ 6,5 ori, cu o pierdere moderată de acuratețe. Atunci când a fost ajustat stratul final, TinyML a îmbunătățit acuratețea cu 34%, cu o pierdere moderată de acuratețe.
Mai mult, cercetările privind comprimarea datelor au indicat că algoritmii de comprimare a datelor trebuie să gestioneze datele colectate pe un dispozitiv portabil și, pentru a obține acest lucru, dezvoltatorii au propus TAC (Tiny Anomaly Compressor). TAC a reușit să depășească algoritmii SDT (Swing Door Trending) și DCT (Transformare Cosinus Discretă), și a obținut o rată de comprimare maximă de peste 98%, având, de asemenea, un raport semnal-zgomot superior față de cei doi algoritmi.
Diagnostic de Sănătate
Pandemia globală de COVID-19 a deschis noi oportunități pentru implementarea TinyML, deoarece este o practică esențială de a detecta în mod continuu simptome respiratorii legate de tuse și răceală. Pentru a asigura monitorizarea neîntreruptă, dezvoltatorii au propus un model CNN numit Tiny RespNet, care funcționează pe un FPGA Xilinx Artix-7 100t, care permite dispozitivului să proceseze informația în paralel, are o eficiență ridicată și un consum redus de energie. În plus, modelul TinyResp ia, de asemenea, vorbirea pacientului, înregistrări audio și informații demografice ca intrări pentru a clasifica simptomele legate de tuse ale unui pacient, utilizând trei seturi de date distincte.
Mai mult, dezvoltatorii au propus, de asemenea, un model capabil să ruleze calcule de învățare profundă pe dispozitive de margine, un model TinyML numit TinyDL, care poate fi implementat pe dispozitive de margine, cum ar fi ceasurile inteligente și dispozitivele purtabile, pentru diagnosticarea sănătății, și este, de asemenea, capabil să efectueze analize de performanță pentru a reduce lățimea de bandă, întârzierea și consumul de energie. Pentru a implementa TinyDL pe dispozitive portabile, a fost proiectat și instruit un model LSTM special pentru un dispozitiv purtabil, și i s-a furnizat datele colectate ca intrări. Modelul are un scor de acuratețe de aproximativ 75-80% și a fost capabil să funcționeze cu date de pe dispozitiv.
În cele din urmă, dezvoltatorii au propus, de asemenea, o altă aplicație pentru a monitoriza sănătatea persoanelor în vârstă, estimând și analizând pozițiile corpului lor. Modelul utilizează un cadru agnostic pe dispozitiv, care permite modelului să activeze validarea și încurajarea rapidă pentru a efectua adaptări. Modelul a implementat algoritmi de detectare a poziției corpului, împreună cu repere faciale, pentru a detecta poziții corpului spațio-temporale în timp real.
Calcul la Margine
Una dintre principalele aplicații ale TinyML este în domeniul calculului la margine, deoarece, odată cu creșterea utilizării dispozitivelor IoT pentru a conecta dispozitive din întreaga lume, este esențial să se stabilească dispozitive de margine care să poată efectua calcule de nivel înalt pe dispozitivul însuși, în loc de a se baza pe arhitectura cloud. Aceste dispozitive de margine vor avea centre de date individuale care să le permită să efectueze calcule pe dispozitiv, reducând astfel dependența de cloud, reducând întârzierea, îmbunătățind securitatea și confidențialitatea utilizatorilor și reducând lățimea de bandă.
Dispozitivele de margine care utilizează algoritmii TinyML vor ajuta la rezolvarea problemelor actuale legate de putere, calcul și cerințe de memorie și este discutat în imaginea de mai jos.

Mai mult, TinyML poate, de asemenea, să îmbunătățească utilizarea și aplicațiile vehiculelor fără pilot (UAV), abordând limitările actuale cu care se confruntă aceste mașini. Utilizarea TinyML poate permite dezvoltatorilor să implementeze un dispozitiv eficient din punct de vedere energetic, cu întârziere scăzută și putere de calcul ridicată, care să poată acționa ca un controlor pentru aceste UAV.
Interfață Creier-Calculator sau BCI
TinyML are aplicații semnificative în industria sănătății, și poate fi deosebit de benefică în diverse domenii, inclusiv detectarea cancerului și a tumorilor, predicția sănătății utilizând semnale ECG și EEG, și inteligență emoțională. Utilizarea TinyML poate permite stimulării creierului adaptive (aDBS) să se adapteze cu succes la adaptări clinice. Utilizarea TinyML poate, de asemenea, să permită aDBS să identificeice bio-marcaje și simptome legate de boală, utilizând înregistrări invazive ale semnalelor creierului.
Mai mult, industria sănătății implică adesea colectarea unei cantități mari de date ale unui pacient, și aceste date trebuie apoi procesate pentru a ajunge la soluții specifice pentru tratamentul pacientului în stadiile incipiente ale unei boli. Ca urmare, este esențial să se construiască un sistem care să fie nu numai foarte eficient, dar și foarte sigur. Atunci când combinăm aplicațiile IoT cu modelul TinyML, se naște un nou domeniu, numit Internetul Lucrurilor pentru Sănătate (H-IoT), și principalele aplicații ale H-IoT sunt diagnosticarea, monitorizarea, logistica, controlul răspândirii și sistemele de asistență. Dacă dorim să dezvoltăm dispozitive care să poată detecta și analiza starea de sănătate a unei persoane la distanță, este esențial să dezvoltăm un sistem care să aibă accesibilitate globală și întârziere scăzută.

Vehicule Autonome
În cele din urmă, TinyML poate avea aplicații extinse în industria vehiculelor autonome, deoarece aceste vehicule pot fi utilizate în diverse moduri, inclusiv urmărirea oamenilor, scopuri militare și aplicații industriale. Aceste vehicule au o cerință principală de a putea identifica eficient obiectele atunci când obiectul este căutat.
În prezent, conducerea autonomă și vehiculele fără șofer sunt o sarcină complexă, în special atunci când se dezvoltă vehicule mici sau miniaturale. Dezvoltările recente au arătat potențialul de a îmbunătăți aplicațiile conducerea autonomă pentru vehicule mici, utilizând o arhitectură CNN și implementând modelul pe GAP8 MCI.
Provocări
TinyML este un concept relativ nou în industria IA și ML, și, în ciuda progresului, nu este încă la nivelul la care ar trebui să fie pentru o implementare pe scară largă pe dispozitive de margine și IoT.
Cea mai mare provocare cu care se confruntă dispozitivele TinyML în prezent este consumul de energie. Ideal, dispozitivele înglobate de margine și IoT ar trebui să aibă o durată de viață a bateriei de peste 10 ani. De exemplu, în condiții ideale, un dispozitiv IoT care rulează pe o baterie de 2 Ah ar trebui să aibă o durată de viață a bateriei de peste 10 ani, presupunând că consumul de energie al dispozitivului este de aproximativ 12 μA. Cu toate acestea, în starea actuală, o arhitectură IoT cu un senzor de temperatură, o unitate de control micro și un modul Wi-Fi are un consum de curent de aproximativ 176,4 mA, și, la acest nivel de consum de energie, bateria va dura doar aproximativ 11 ore, în loc de 10 ani de viață a bateriei.
Restricții de Resurse
Pentru a menține coerența unui algoritm, este esențial să se mențină disponibilitatea puterii, și, în scenariul actual, disponibilitatea limitată de putere pentru dispozitivele TinyML este o provocare critică. În plus, limitările de memorie sunt, de asemenea, o provocare semnificativă, deoarece implementarea modelelor necesită adesea o cantitate mare de memorie pentru a funcționa eficient și cu acuratețe.
Restricții de Hardware
Restricțiile de hardware fac dificilă implementarea pe scară largă a algoritmilor TinyML, din cauza eterogenității dispozitivelor de hardware. Există mii de dispozitive, fiecare cu specificații și cerințe de hardware proprii, și, în consecință, un algoritm TinyML trebuie să fie ajustat pentru fiecare dispozitiv individual, ceea ce face implementarea pe scară largă o problemă majoră.
Restricții de Set de Date
Una dintre principalele probleme cu modelele TinyML este că nu susțin seturile de date existente. Este o provocare pentru toate dispozitivele de margine, deoarece colectează date utilizând senzori externi, și aceste dispozitive au adesea constrângeri de putere și energie. Prin urmare, seturile de date existente nu pot fi utilizate pentru a antrena eficient modelele TinyML.
Gânduri Finale
Dezvoltarea tehnicilor de ML a cauzat o revoluție și o schimbare de perspectivă în ecosistemul IoT. Integrarea modelelor de ML în dispozitivele IoT va permite acestor dispozitive de margine să ia decizii inteligente de unii singuri, fără niciun input uman extern. Cu toate acestea, în mod convențional, modelele de ML au cerințe ridicate de putere, memorie și calcul, ceea ce le face nepotrivite pentru dispozitivele de margine, care sunt adesea limitate din punct de vedere al resurselor.
Ca urmare, o ramură nouă în IA a fost dedicată utilizării ML pentru dispozitive IoT, și a fost numită TinyML. TinyML este un cadru de ML care permite chiar și dispozitivele cu resurse limitate să valorifice puterea IA și ML pentru a asigura o acuratețe, inteligență și eficiență mai ridicată.
În acest articol, am discutat despre implementarea modelelor TinyML pe dispozitive IoT cu resurse limitate, și această implementare necesită antrenarea modelelor, implementarea modelelor pe hardware și efectuarea tehnicilor de cuantificare. Cu toate acestea, având în vedere domeniul de aplicare actual, modelele de ML gata de a fi implementate pe dispozitive IoT și de margine au numeroase complexități și constrângeri, inclusiv probleme de compatibilitate hardware și cadru.












