AI: hoe laag kun je gaan?

Update: 10 december 2023

 

AI: hoe laag kun je gaan?

AI: hoe laag kun je gaan?

Markten zijn onderhevig aan rages en de embedded control-sector is er verre van immuun voor. In de jaren 1990 leek fuzzy logic de weg vooruit te zijn en leveranciers van microcontrollers (MCU's) haastten zich om ondersteuning in hun aanbod te stoppen, maar zagen het uitbranden.

 

Embedded machine learning (ML) ziet een veel grotere voedingswaanzin nu gevestigde MCU-spelers en AI-accelererende start-ups proberen hun toewijding aan het idee te tonen, dat meestal onder de vlag van TinyML gaat.

Daniel Situnayake, oprichter van TinyML-engineer bij software-tools-bedrijf Edge Impulse en co-auteur van een gerenommeerd boek over de technologie, zegt dat de situatie van vandaag heel anders is dan die van de jaren negentig.

“Het opwindende aan embedded ML is dat machine learning en deep learning geen nieuwe, onbewezen technologieën zijn. producten. Embedded ML gaat over het toepassen van een bewezen set technologieën in een nieuwe context die veel nieuwe toepassingen mogelijk maakt die voorheen niet mogelijk waren.”

ABI Research voorspelt dat de markt voor low-power AI-compatibele MCU's en versnellers voor de TinyML-markt zal stijgen van minder dan $ 30 miljoen aan jaarlijkse inkomsten dit jaar tot meer dan $ 2 miljard aan het begin van het volgende decennium.

Ondanks de snelle groei verwacht ABI-analist Lian Jye Su dat de concurrentie heviger wordt naarmate grote bedrijven als Bosch de markt betreden. Sommige start-ups zoals Eta Compute zijn al overgestapt van silicium naar softwaretools.

“We zien wel wat consolidatie. Tegelijkertijd zorgt de enorme versnippering van de IoT-markt ervoor dat een aanzienlijk aantal providers zal overleven, zoals de MCU- of IoT-chipsetmarkten in het algemeen”, zegt hij, wijzend op het grote aantal leveranciers dat zich richt op specifieke verticale markten.

TinyML wordt geconfronteerd met ernstige beperkingen. Pete Warden, technisch leider van het TensorFlow Micro-framework bij de zoekmachinegigant en co-auteur van Situnayake over "TinyML: Machine Learning with TensorFlow Lite on Arduino and Ultra-Low-Power Microcontrollers", zei op de Fall Processor Conference van de Linley Group dat het doel is om deep-learning-modellen te nemen en “ze te laten werken op apparaten met slechts 20 KB RAM. We willen modellen nemen die zijn gebouwd met behulp van deze geavanceerde technologie technologie en ze verpletteren zodat ze op processors met een zeer laag vermogen kunnen draaien.

“Omdat het open-source software is, hebben we niet alleen contact met productteams binnen Google, maar krijgen we ook veel verzoeken van productteams over de hele wereld die interessante producten proberen te bouwen. En we moeten vaak zeggen: nee, dat kan nog niet. We krijgen in totaal veel onvervulde vereisten te zien”, zegt Warden.

Het kernprobleem is dat deep learning-modellen die vanuit de serveromgeving zijn overgezet, miljoenen of zelfs miljarden MAC-functies (multiply-add) vereisen die in korte tijd moeten worden uitgevoerd, zelfs voor relatief eenvoudige modellen. Linley Gwennap, president van de Linley Group, zegt dat relatief eenvoudige audiotoepassingen, zoals het oppikken van woorden in spraak die spraakherkenning kunnen activeren, ongeveer 2 miljoen MAC's per seconde vereisen. Video heeft veel meer nodig.

Siliciumverkopers hebben het aantal MAC's kunnen verhogen door gebruik te maken van de relatief lage vereiste voor nauwkeurigheid in individuele berekeningen bij het uitvoeren van inferenties. Terwijl training op servers over het algemeen rekenkunde met drijvende komma met enkele of dubbele precisie vereist, lijken byte-wide integer (int8) berekeningen voldoende voor de meeste toepassingen.

Er zijn aanwijzingen dat voor geselecteerde lagen in een model zelfs int8 MAC's niet nodig zijn. Binaire of ternaire berekeningen die kunnen worden uitgevoerd met weinig meer dan een paar poorten doen in veel gevallen geen afbreuk aan de algehele nauwkeurigheid. Potentieel zijn de prestatiewinsten enorm, maar ontbreekt de combinatie van hardware- en softwareondersteuning die nodig is om ze volledig te benutten, zegt Situnayake.

Hoewel de tooling voor het TensorFlow Lite-framework doorgaans int8-gewichten ondersteunt, is ondersteuning voor lagere resoluties verre van wijdverbreid. "Dit verandert snel", merkt Situnayake op, wijzend op versnellers zoals die van Syntiant die binaire, 2bit- en 4bit-gewichten ondersteunen, evenals het werk van Plumerai om binaire neurale netwerken rechtstreeks te trainen.

"Hoewel deze technologieën nog steeds toonaangevend zijn en nog niet mainstream zijn geworden voor embedded ML-ontwikkelaars, zal het niet lang meer duren voordat ze deel gaan uitmaken van de standaardtoolkit", voegt hij eraan toe.

Vermindering van de rekenlast

Er zijn andere opties voor TinyML-werk die de rekenlast verminderen. Tijdens de TinyML Asia-conferentie eind vorig jaar zei Jan Jongboom, mede-oprichter en CTO van Edge Impulse, dat de belangrijkste aantrekkingskracht van ML het vermogen is om correlaties te vinden in gegevens die conventionele algoritmen niet kiezen. Het probleem ligt in het enorme aantal parameters dat de meeste conventionele modellen moeten verwerken om die correlaties te vinden als de invoer onbewerkte steekproeven zijn.

"Je wilt je machine-learning-algoritme een handje helpen om het leven gemakkelijker te maken", zegt Jongboom. De meest nuttige techniek voor typische real-time signalen is het gebruik van feature-extractie: het transformeren van de gegevens in representaties die het mogelijk maken om neurale netwerken te bouwen met ordes van grootte minder parameters.

Als we spraak als voorbeeld nemen, vermindert een transformatie naar de mel-cepstrum-ruimte het aantal parameters dat de veranderingen in geluid efficiënt kan coderen enorm.

In andere sensorgegevens, zoals de invoer van een versnellingsmeter die wordt gebruikt voor trillingsdetectie in roterende machines, zullen vaak andere vormen van gezamenlijke tijd-frequentierepresentaties werken.

Deze benadering wordt gebruikt door John Edwards, consultant en DSP-ingenieur bij Sigma Numerix en gastdocent aan de Universiteit van Oxford, in een project voor trillingsanalyse.

In dit geval had een korte Fourier-transformatie de beste afweging in combinatie met transformaties die motoren met variabele snelheid compenseren. De functie-extractie verkleinde de grootte van het model tot slechts twee lagen die gemakkelijk konden worden verwerkt op een NXP LPC55C69, die Arm Cortex-M33-kernen combineert met een DSP-versneller.

Hoewel het verleidelijk kan zijn om de weg van deep learning in te slaan, kunnen andere algoritmen voor machine learning resultaten opleveren, zegt Jongboom. "Ons beste anomaliedetectiemodel is geen neuraal netwerk: de basis k-betekent clustering."

Waar diep leren een vereiste is, zorgt schaarsheid voor een verdere vermindering van de modeloverhead. Dit kan de vorm aannemen van pruning, waarbij gewichten die weinig effect hebben op de modeluitvoer eenvoudigweg uit de pijplijn worden gehaald. Een andere optie is om de inspanningen te concentreren op delen van de gegevensstroom die veranderingen in de loop van de tijd laten zien. In bewakingsvideo's kan dit bijvoorbeeld het gebruik van beeldverwerking betekenen om bewegende objecten te detecteren en deze van de achtergrond te scheiden voordat de verwerkte pixels naar een model worden gevoerd.

Het is een leerervaring geweest voor Jongboom en anderen. Bij het beschrijven van zijn voortgang door de fasen van TinyML, dacht hij in de zomer van 2017 dat het hele concept onmogelijk was. Tegen de zomer van 2020, nadat hij had gekeken naar manieren om applicatie- en modelontwerp samen te optimaliseren, was zijn houding veranderd in de overtuiging dat real-time beeldclassificatie op energiezuinige hardware haalbaar is. Naarmate versnellers met laag vermogen die lage precisie en schaarsheid efficiënter ondersteunen, verschijnen, zou het aantal modellen dat op microkracht kan werken, moeten toenemen.

Het resultaat, beweert Situnayake, is waarschijnlijk dat “ML uiteindelijk een grotere fractie vertegenwoordigt dan elk ander type werklast. De voordelen van on-device ML zullen de industrie ertoe aanzetten om snellere, meer capabele low-power chips te creëren en in te zetten die het merendeel van alle embedded computing in de wereld zullen gaan vertegenwoordigen”. Hoewel er tal van apparaten zullen zijn die deze workloads niet aankunnen, zal de behoefte aan snelheid, aangezien de modellen onvermijdelijk groter worden, de aandacht vestigen op de behoeften ervan en de ontwikkeling van software- en hardware-architecturen beginnen te domineren, zolang de applicaties doorgaan.