Taula de continguts[Amaga][Espectacle]
Els models d'aprenentatge automàtic estan a tot arreu ara mateix. Durant el dia, probablement utilitzeu aquests models molt més del que us penseu. Els models d'aprenentatge automàtic s'utilitzen en tasques habituals, com ara navegar per les xarxes socials, fotografiar i comprovar el temps.
És possible que un algorisme d'aprenentatge automàtic us hagi recomanat aquest bloc. Tots hem sentit parlar del temps que requereix entrenar aquests models. Tots hem sentit que entrenar aquests models requereix molt de temps.
Tanmateix, fer inferències sobre aquests models sovint és costoso computacionalment.
Necessitem sistemes informàtics que siguin prou ràpids per gestionar la velocitat a la qual estem utilitzant els serveis d'aprenentatge automàtic. Com a resultat, la majoria d'aquests models s'executen en centres de dades massius amb clústers de CPU i GPU (fins i tot TPU en alguns casos).
Quan fas una foto, vols màquina d'aprenentatge per millorar-lo a l'instant. No voleu haver d'esperar que la imatge es transfereixi a un centre de dades, es processi i us torni. En aquest cas, el model d'aprenentatge automàtic s'ha d'executar localment.
Quan dius "Hola Siri" o "D'acord, Google", vols que els teus gadgets responguin immediatament. Esperant que la teva veu sigui transmesa als ordinadors, on s'avaluarà i s'obtindran dades.
Això requereix temps i té un efecte perjudicial en l'experiència de l'usuari. En aquest cas, voleu que el model d'aprenentatge automàtic també funcioni localment. Aquí és on entra TinyML.
En aquesta publicació, analitzarem TinyML, com funciona, els seus usos, com començar-hi i molt més.
Què és TinyML?
TinyML és una disciplina d'avantguarda que aplica el potencial revolucionari de l'aprenentatge automàtic als límits de rendiment i potència de petits dispositius i sistemes integrats.
El desplegament reeixit en aquesta indústria requereix un coneixement exhaustiu de les aplicacions, algorismes, maquinari i programari. És un subgènere d'aprenentatge automàtic que utilitza models d'aprenentatge profund i d'aprenentatge automàtic en sistemes integrats que utilitzen microcontroladors, processadors de senyal digital o altres processadors especialitzats de baix consum.
Els dispositius incrustats habilitats per TinyML estan pensats per executar un algorisme d'aprenentatge automàtic per a una feina específica, normalment com a part del dispositiu. informàtica de vora.
Per funcionar durant setmanes, mesos o fins i tot anys sense recàrrega ni substitució de la bateria, aquests sistemes encastats han de tenir un consum d'energia inferior a 1 mW.
Com funciona?
L'únic marc d'aprenentatge automàtic que es pot utilitzar amb microcontroladors i ordinadors és TensorFlow Lite. És un conjunt d'eines que permeten als desenvolupadors executar els seus models en dispositius mòbils, incrustats i de punta, permetent l'aprenentatge automàtic sobre la marxa.
La interfície del microcontrolador s'utilitza per recollir dades dels sensors (com ara micròfons, càmeres o sensors integrats).
Abans d'enviar-se al microcontrolador, les dades s'incorporen a un model d'aprenentatge automàtic basat en núvol. L'entrenament per lots en mode fora de línia s'utilitza habitualment per entrenar aquests models. Les dades del sensor que s'utilitzaran aprenentatge i inferència ja s'ha determinat per a l'aplicació específica.
Si el model s'està entrenant per detectar una paraula d'activació, per exemple, ja està configurat per gestionar un flux d'àudio continu des d'un micròfon.
Tot ja es fa amb l'ajut d'una plataforma en núvol com Google Colab en el cas de TensorFlow Lite, inclosa la selecció de conjunts de dades, la normalització, l'ajustament insuficient o el sobreajust del model, la regularització, l'augment de dades, la formació, la validació i les proves.
Un model totalment entrenat finalment es transforma i es transfereix al microcontrolador, microordinador o processador de senyal digital després de l'entrenament per lots fora de línia. El model no té formació addicional després de ser traslladat a un dispositiu incrustat. En canvi, només utilitza dades en temps real de sensors o dispositius d'entrada per aplicar el model.
Com a resultat, un model d'aprenentatge automàtic TinyML ha de ser excepcionalment durador i capaç de ser reciclat després d'anys o mai més. S'ha d'investigar tota la subadaptació i sobreadaptació potencial del model perquè el model segueixi sent rellevant durant un període de temps prolongat, idealment indefinidament.
Però, per què utilitzar TinyML?
TinyML va començar com un esforç per eliminar o reduir la dependència de l'IoT dels serveis al núvol per a la petita escala bàsica. màquina d'aprenentatge operacions. Això va requerir l'ús de models d'aprenentatge automàtic als propis dispositius de punta. Proporciona els següents avantatges principals:
- Baixa potència consum: una aplicació TinyML hauria d'utilitzar preferiblement menys d'1 miliWatt de potència. Amb un consum d'energia tan baix, un dispositiu pot continuar extraient conclusions de les dades del sensor durant mesos o anys, fins i tot si està alimentat amb una bateria de moneda.
- menor cost: Està dissenyat per funcionar amb microcontroladors o DSP de 32 bits de baix cost. Aquests microcontroladors solen costar uns quants cèntims cadascun, i el sistema incrustat total desenvolupat amb ells és inferior a 50 dòlars. Aquesta és una opció molt rendible per executar petits programes d'aprenentatge automàtic a gran escala, i és especialment beneficiosa en aplicacions IoT on s'ha d'aplicar l'aprenentatge automàtic.
- Menor latència: Les seves aplicacions tenen una latència baixa ja que no necessiten transportar ni intercanviar dades a través de la xarxa. Totes les dades del sensor es registren localment i s'extreuen conclusions mitjançant un model que ja s'ha entrenat. Els resultats de les inferències es poden enviar a un servidor o núvol per al registre o processament addicional, tot i que això no és essencial perquè el dispositiu funcioni. Això minimitza la latència de la xarxa i elimina la necessitat que les operacions d'aprenentatge automàtic es realitzin en un núvol o servidor.
- intimitat: És una preocupació important a Internet i amb l'Internet de les coses. El treball d'aprenentatge automàtic a les aplicacions TinyML es realitza de manera local, sense emmagatzemar ni enviar dades del sensor/usuari a un servidor/núvol. Com a resultat, encara que estiguin enllaçades a una xarxa, aquestes aplicacions són segures d'utilitzar i no comporten cap risc de privadesa.
Aplicacions
- Agricultura – Quan els agricultors fan una foto d'una planta, l'aplicació de TensorFlow Lite detecta malalties en ella. Funciona en qualsevol dispositiu i no requereix connexió a Internet. El procediment protegeix els interessos agrícoles i és una necessitat fonamental per als agricultors rurals.
- Manteniment mecànic – TinyML, quan s'utilitza en dispositius de poca potència, pot identificar contínuament defectes en una màquina. Implica un manteniment basat en prediccions. Ping Services, una start-up australiana, ha introduït un gadget IoT que controla les turbines eòliques connectant-se a l'exterior de la turbina. Avisa a les autoritats sempre que detecti qualsevol possible problema o mal funcionament.
- Hospitals – Els Solar Scare és un projecte. Mosquito utilitza TinyML per aturar la propagació de malalties com el dengue i la malària. S'alimenta amb energia solar i detecta les condicions de reproducció de mosquits abans de senyalitzar l'aigua per inhibir la reproducció de mosquits.
- Vigilància del trànsit – Per aplicant TinyML als sensors que recullen dades de trànsit en temps real, podem utilitzar-los per dirigir millor el trànsit i reduir els temps de resposta dels vehicles d'emergència. Swim.AI, per exemple, utilitza aquesta tecnologia en la transmissió de dades per augmentar la seguretat dels passatgers alhora que redueix la congestió i les emissions mitjançant l'encaminament intel·ligent.
- Llei: TinyML es pot utilitzar en l'aplicació de la llei per identificar accions il·legals com ara disturbis i robatoris mitjançant l'aprenentatge automàtic i el reconeixement de gestos. També es pot utilitzar un programa similar per protegir els caixers automàtics dels bancs. En observar el comportament de l'usuari, un model TinyML pot predir si l'usuari és un consumidor real que completa una transacció o un intrús que intenta piratejar o destruir el caixer automàtic.
Com començar amb TinyML?
Per començar amb TinyML a TensorFlow Lite, necessitareu una placa de microcontrolador compatible. TensorFlow Lite per a microcontroladors és compatible amb els microcontroladors que s'indiquen a continuació.
- Terminal Wio: ATSAMD51
- Himax WE-I Plus EVB Endpoint AI Development Board
- STM32F746 Kit de descobriment
- Adafruit EdgeBadge
- Plataforma de desenvolupament de programari Synopsys DesignWare ARC EM
- Sony Spresense
- Arduino Nano 33 BLE Sentit
- SparkFun Edge
- Kit Adafruit TensorFlow Lite per a microcontroladors
- Adafruit Circuit Playground Bluefruit
- Espressif ESP32-DevKitC
- Espressif ESP-EYE
Es tracta de microcontroladors de 32 bits que tenen prou memòria flash, RAM i freqüència de rellotge per executar un model d'aprenentatge automàtic. Les plaques també tenen una sèrie de sensors integrats capaços d'executar qualsevol programa incrustat i aplicar models d'aprenentatge automàtic a l'aplicació de destinació. A construir un model d'aprenentatge automàtic, necessitareu un ordinador portàtil o ordinador a més d'una plataforma de maquinari.
Cada plataforma de maquinari té les seves pròpies eines de programació per crear, entrenar i portar models d'aprenentatge automàtic, que utilitzen el paquet TensorFlow Lite for Microcontrollers. TensorFlow Lite és gratuït d'utilitzar i modificar perquè ho és de codi obert.
Per començar amb TinyML i TensorFlow Lite, tot el que necessiteu és una de les plataformes de maquinari incrustat esmentades anteriorment, un ordinador/ordinador portàtil, un cable USB, un convertidor USB a sèrie i el desig de practicar l'aprenentatge automàtic amb sistemes integrats. .
Challenges
Tot i que el progrés de TinyML ha donat molts resultats positius, la indústria de l'aprenentatge automàtic encara s'enfronta a obstacles considerables.
- Diversitat de programari: codificació manual, la generació de codi i els intèrprets de ML són opcions per desplegar models als dispositius TinyML, i cadascun requereix una quantitat de temps i esforç diferent. Com a resultat d'això poden sorgir diferents actuacions.
- Diversitat de maquinari: allà hi ha diverses opcions de maquinari disponibles. Les plataformes TinyML poden ser qualsevol cosa, des de microcontroladors de propòsit general fins a processadors neuronals d'avantguarda. Això provoca problemes amb el desplegament de models a diferents arquitectures.
- Resolució de problemes/depuració: quan un model ML funciona malament al núvol, és senzill mirar les dades i esbrinar què passa. Quan un model es distribueix per milers de dispositius TinyML, sense que cap flux de dades torni al núvol, la depuració es fa difícil i pot necessitar un mètode diferent.
- Restriccions de memòria - Tradicional plataformes, com ara telèfons intel·ligents i ordinadors portàtils, necessiten gigabytes de memòria RAM, mentre que els dispositius TinyML utilitzen kilobytes o megabytes. Com a resultat, la mida del model que es pot desplegar és limitada.
- Formació de model – Encara que Hi ha diversos avantatges per desplegar models ML en dispositius TinyML, la majoria dels models ML encara estan entrenats al núvol per repetir i millorar contínuament la precisió del model.
Futur
TinyML, amb la seva petita empremta, el baix consum de la bateria i la manca o la dependència limitada de la connectivitat a Internet, té un potencial enorme en el futur, ja que la majoria dels estrets intel·ligència artificial s'implementarà en dispositius perifèrics o gadgets integrats independents.
Farà que les aplicacions IoT siguin més privades i segures aprofitant-les. Encara que TensorFlow Lite és actualment l'únic marc d'aprenentatge automàtic per a microcontroladors i microordinadors, hi ha altres marcs comparables com el sensor i el CMSIS-NN d'ARM.
Tot i que TensorFlow Lite és un projecte de codi obert en curs que va tenir un bon començament amb l'equip de Google, encara necessita el suport de la comunitat per entrar al corrent principal.
Conclusió
TinyML és un enfocament nou que combina sistemes integrats amb aprenentatge automàtic. A mesura que la intel·ligència artificial estreta arriba a un màxim en molts sectors i dominis, la tecnologia pot emergir com un subcamp destacat en l'aprenentatge automàtic i la intel·ligència artificial.
Proporciona una solució a nombrosos reptes als quals s'enfronten ara el sector IoT i els professionals que apliquen l'aprenentatge automàtic a moltes disciplines específiques del domini.
El concepte d'utilitzar l'aprenentatge automàtic a dispositius de punta amb una petita informàtica La petjada i el consum d'energia tenen el potencial de transformar significativament la manera com es construeixen els sistemes integrats i la robòtica.
Deixa un comentari