Mogelijk bent u TensorFlow Lite tegengekomen tijdens het doorlopen van Edge AI-ontwikkelborden of AI-versnellingsprojecten.
TensorFlow Lite is een raamwerk van softwarepakketten dat ML-training lokaal op de hardware mogelijk maakt. Dankzij deze verwerking en computergebruik op het apparaat kunnen ontwikkelaars hun modellen op gerichte hardware draaien. De hardware omvat ontwikkelborden, hardwaremodules, embedded en IoT-apparaten.
Overzicht van het TensorFlow Lite Framework
TensorFlow is een populaire term in deep learning, aangezien veel ML-ontwikkelaars dit raamwerk voor verschillende gebruiksscenario's gebruiken. Het biedt het gemak van implementatie machine learning-modellen en gevolgtrekkingen voor AI-toepassingen.
Maar TensorFlow Lite is een diepgaand leerraamwerk voor lokale inferentie, met name voor de low-computationele hardware. Het maakt machine learning op het apparaat mogelijk door ontwikkelaars te helpen hun modellen uit te voeren op compatibele hardware en IoT-apparaten.
Afhankelijk van de use case moet een ontwikkelaar een geschikt model selecteren. Het raamwerk biedt ook de mogelijkheid om het bestaande model opnieuw te trainen op een aangepaste dataset. Omdat het protocolbuffermodel van TensorFlow een groot formaat heeft en geavanceerde rekenkracht vereist, maakt het de conversie van het TensorFlow-model naar het TensorFlow Lite-model mogelijk.
De aanpassing van optimaliserings- en kwantiseringsparameters maakt het mogelijk de modelgrootte en latentie te verminderen.
Afgezien van de latentie- en groottevoordelen van TensorFlow Lite, biedt het framework de beveiliging van gegevens aangezien de training lokaal op het apparaat plaatsvindt. Bovendien is er geen internetverbinding nodig. De inzet van applicaties is dus niet beperkt tot specifieke gebieden met connectiviteit.
Deze factoren verminderen uiteindelijk de belasting van het energieverbruik van het apparaat door de connectiviteitsfactor te elimineren en de efficiëntie van de deep learning-inferentie te vergroten.
Modellen van het TensorFlow Lite-framework bestaan in een platformonafhankelijk formaat dat bekend staat als FlatBuffers. Het is een serialisatiebibliotheek die hiërarchische gegevens opslaat in een platte binaire buffer, zodat directe toegang mogelijk is zonder uitpakken. U kunt ook de extensie ".tflite" bekijken voor de TensorFlow Lite-modellen. Deze representatietechniek maakt optimalisaties in berekeningen mogelijk en vermindert de geheugenvereisten. Daarom is het veel beter dan TensorFlow-modellen
TinyML op TensorFlow Lite Micro
Omdat TensorFlow Lite compatibel is met verschillende platforms voor Edge AI-toepassingen, was het noodzakelijk om de bibliotheek verder te convergeren. Daarom kwam de organisatie met een subsetbibliotheek van de TensorFlow Lite, bekend als TensorFlow Lite Micro. TensorFlow Lite Micro voert specifiek machine learning-modellen lokaal uit op microcontrollers met minimale geheugenvereisten van ongeveer een paar kilobytes.
De kernlooptijd van de procedure integreert met 16 KB op een Arm Cortex M3 en kan op verschillende modellen werken. Het framework vereist geen aanvullende OS-ondersteuning of andere taalbibliotheken op hoog niveau als afhankelijkheden voor het uitvoeren van de inferentie op het apparaat.
De ontwikkeling van de TensorFlow Lite Micro is gebaseerd op C ++ 11, die 32-bits architectuur nodig heeft voor compatibiliteit. Meer gesproken over de architecturen, de bibliotheek werkt prima op een robuuste reeks processors op basis van de Arm Cortex-M-serie architectuur naar andere ontwerparchitecturen zoals ESP32.
Workflow voor TensorFlow Lite Micro Use Cases
Het trainingsproces van het neurale netwerk vereist computerhardware. Het is dus getraind op de generaal TensorFlow-model. Training is echter alleen vereist als een aangepaste dataset past in een deep learning-model, terwijl vooraf getrainde modellen op het framework ook voor de applicaties kunnen worden gebruikt.
Uitgaande van een custom use case met de applicatiespecifieke dataset, traint de gebruiker het model op het algemene TensorFlow-framework met een hoge verwerkingscapaciteit en architectuur. Zodra de training voorbij is, verifieert de modelevaluatie met behulp van testtechnieken de nauwkeurigheid en betrouwbaarheid van het model. Verder wordt het proces gevolgd door het TensorFlow-model om te zetten naar een hardware-compatibel TensorFlow Lite-model in het .tflite-formaat.
Het .tflite-formaat is een plat bufferbestand dat veel voorkomt in het TensorFlow Lite-framework en compatibele hardware. Het model kan verder worden gebruikt voor inferentietraining over de real-time gegevens die op het model zijn ontvangen. De inferentietraining optimaliseerde de modellen voor robuuste use-cases. Daarom is de optie van inferentietraining cruciaal voor edge AI-toepassingen.
De meeste firmware van de microcontroller ondersteunt het native bestandssysteem niet voor het rechtstreeks insluiten van het platte bufferformaat van het TensorFlow Lite-model. Daarom is de conversie van het .tflite-bestand nodig naar een array-structuurformaat dat compatibel is met de microcontrollers.
Het programma opnemen in de C-array gevolgd door normale compilatie is een gemakkelijke techniek voor een dergelijke conversie. Het resulterende formaat fungeert als een bronbestand en bestaat uit een tekenreeks die compatibel is met de microcontrollers.
Apparaten die TensorFlow Lite Micro ondersteunen
TensorFlow Lite is geschikt voor krachtige apparaten, maar heeft als nadeel dat de processor zwaarder belast wordt. Hoewel de TensorFlow Lite Micro kleine bestanden heeft die vatbaar zijn voor onvoldoende aanpassing, optimaliseert de bestandsgrootte dat past in het geheugen kan de output aanzienlijk verbeteren voor hardware met een laag stroomverbruik en weinig verwerking, zoals microcontrollers.
Hier is de lijst met ontwikkelborden uit de officiële TensorFlow-documentatie die TensorFlow Lite Micro ondersteunt:
- Arduino Nano 33 BLE Sense
- SparkFun Edge
- STM32F746 Ontdekkingsset
- Adafruit EdgeBadge
- Adafruit TensorFlow Lite voor Microcontrollers Kit
- Adafruit Circuit Playground Bluefruit
- Espressif ESP32-DevKitC
- Espressif ESP-EYE
- Wio-terminal: ATSAMD51
- Himax WE-I Plus EVB Endpoint AI Development Board
De TensorFlow Lite Micro is ook beschikbaar als Arduino-bibliotheek voor uitgebreide ondersteuning voor microcontrollers. Het kan ook projecten bouwen voor hardware-ontwikkelomgevingen die vergelijkbaar zijn met Mbed.
TensorFlow Lite biedt veel
Het deep learning-framework van TensorFlow Lite opent de mogelijkheden voor een aantal geavanceerde AI-toepassingen. Omdat het framework open-source is voor AI-enthousiastelingen, maakt de community-ondersteuning het nog populairder voor gebruiksscenario's van machine learning. Het algehele platform van TensorFlow Lite verbetert de omgeving voor de groei van edge-applicaties voor embedded en IoT-apparaten
Bovendien zijn er verschillende voorbeelden voor beginners om hen te helpen met praktische gebruiksscenario's op het raamwerk. Enkele van deze voorbeelden zijn persoonsdetectie, afhankelijk van de gegevens die zijn verzameld door de beeldsensor van het ontwikkelbord en het standaard hello world-programma voor alle ontwikkelborden. De voorbeelden omvatten ook toepassingen zoals gebarendetectie en spraakherkenning voor specifieke ontwikkelborden.
Voor meer informatie over de TensorFlow Lite en TensorFlow Lite Microkunt u de officiële documentatiepagina van de organisatie bezoeken. Er zijn veel conceptuele en zelfstudiegedeelten voor een beter begrip van het raamwerk.
Aan de slag met beeldherkenning? Dankzij Tensorflow en een Raspberry Pi kun je direct aan de slag.
Lees Volgende
- Technologie verklaard
- Kunstmatige intelligentie
- Machine leren
- Google TensorFlow
Abonneer op onze nieuwsbrief
Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!
Nog een stap…!
Bevestig uw e-mailadres in de e-mail die we u zojuist hebben gestuurd.