< Terug naar vorige pagina

Project

Applying Artificial Intelligence on Edge devices using Deep learninG with Embedded optimizations

In Deep Learning wordt een algoritme ontwikkeld op een grote set data, typisch op een rekenkrachtige server. Vervolgens wordt het getrainde netwerk in een applicatie geladen die met de echte data werkt. Deze stap wordt “inference” genoemd. Inference hoeft echter niet toegepast te worden op het computersysteem dat voor de training gebruikt werd. Hierdoor wordt het mogelijk om deep learning toe te passen op systemen die minder krachtig, meer energiezuinig, en minder afhankelijk van een netwerkzijn.In dit project zal men verschillende Deep Learning applicaties voor low-cost embedded systemen bestuderen, enerzijds op vlak van haalbaarheid voor dergelijke applicaties en anderzijds de toegevoegde waarde van de artificiële intelligentie in embedded systemen, zoals microcontrollers en systeemprocessoren.
Datum:1 mrt 2020 →  31 mei 2022
Trefwoorden:artificiële intelligentie, deep learning, microcontrollers, systeemprocessen
Disciplines:Artificiële intelligentie niet elders geclassificeerd, Andere computer ingenieurswetenschappen, informatietechnologie en mathematische ingenieurswetenschappen niet elders geclassificeerd
Project type:Samenwerkingsproject
Resultaten:Tijdens de exploratie van dit project werden verschillende tools geïdentificeerd waarmee Deep Learning algoritmes kunnen gebouwd worden. Het werd al snel duidelijk dat Tensorflow de meest gebruikte tool is binnen verschillende frameworks. Binnen het project werd voornamelijk Tensorflow gebruikt aangezien deze kant-en-klare functies heeft om het netwerk te optimaliseren voor embedded systemen. Tensorflow wordt ondersteund door verschillende programmeertalen, binnen dit project werd vooral gefocust op de uitwerking in Python. Bedrijven die Deep Learning willen toepassen hebben niet altijd de programmeurs of ervaring in-house om dit uit te voeren. Daarom werd ook onderzocht of er high-level tools bestaan om mee van start te gaan. Aan de hand van Edge Impulse, een online framework om AI toe te passen op embedded systemen, kan de volledige workflow om een AI-netwerk op een embedded systeem te krijgen uitgevoerd worden. Men gaat van start met datacaptatie, data-analyse, pre-processing, opbouw van een netwerk, validatie en optimalisatie tot het deployen op een ondersteund embedded systeem. Dit zonder één letter code te schrijven. Daarnaast bestaan er ook nog andere tools om Deep Learning op embedded systemen te krijgen (zoals oplossingen van STM), maar deze zijn niet gratis en dus minder toegankelijk voor bedrijven. Naast de high-level tools werden de verschillende uitgewerkte studies uitgewerkt in Python. De optimalisatietechnieken werden sterk bestudeerd en gebruikt in de workshops en gevalstudies zoals het kwantiseren van de modelparameters, het verkleinen van het model aan de hand van pruning en het optimaliseren van de compiler specifiek voor het embedded systeem. De drie proof-of-concepts die uitgewerkt zijn bestaan uit: 1) het detecteren van het schrijven van tekens met een pen waar een microcontroller met Inertial Measurement Unit (IMU) op bevestigd werd, 2) het detecteren van de bezettingsgraad van een lokaal aan de hand van bewegingssensoren bevestigd aan stoelen, en 3) het automatisch aansturen van een garagepoort door het detecteren met een camera van een wagen voor de poort. Deze academische gevalstudies evolueerden in drie hands-on workshops. De eerste workshop is een kennismaking met het framework Edge Impulse waar de schrijfdetectie case uitgewerkt wordt. In de tweede en derde workshop wordt de garage-detectie case toegepast op verschillende niveaus. Enerzijds laagdrempelig als STEM sessie aan de hand van het Edge Impulse framework, anderzijds als een low-level hands-on sessie waarbij programmeren in Python en C++ een must is. Voor deze workshops werd een handleiding uitgeschreven, daarnaast worden de workshops na het einde van het project nog verder georganiseerd. Tijdens de loopduur van het project werden vijf industriële gevalstudies uitgewerkt. De relevante gevalstudies werden gedestilleerd uit de voorstellen, interesse en vragen van de gebruikersgroep zodat deze voor alle gebruikers enige relevantie hebben. Deze gevalstudies hebben verschillende toepassingen zoals visie-gebaseerd met verschillende soorten camera’s als sensor-gebaseerd aan de hand van IMUs, touch sensoren, Time Of Flight (TOF) sensoren. Uit deze gevalstudies werd een handleiding met best-practices gegenereerd. Daarnaast werden de resultaten uit dit project werden ook op verschillende manieren gepubliceerd, via doctoraats-, master-, en bachelor-thesissen. Uiteindelijk werd het project afgesloten met een slotsymposium voor het brede publiek.