AI aan de rand betekent niet langer stomme AI

Bronknooppunt: 1579936

Eén aspect van de ontvangen wijsheid over AI is dat alle innovatie begint in de grote machine learning/trainingsmotoren in de cloud. Een deel van die innovatie zou uiteindelijk in een gereduceerde/beperkte vorm naar de edge kunnen migreren. Gedeeltelijk weerspiegelde dit de nieuwheid van het vakgebied. Misschien weerspiegelde het ook gedeeltelijk de behoefte aan voorverpakte one-size-fits-many-oplossingen voor IoT-widgets. Waar ontwerpers het slimme in hun producten wilden, maar nog niet helemaal klaar waren om ML-ontwerpexperts te worden. Maar nu zijn die ontwerpers bezig met een inhaalslag. Ze lezen dezelfde persberichten en hetzelfde onderzoek als wij allemaal, net als hun concurrenten. Ze willen profiteren van dezelfde vooruitgang, terwijl ze vasthouden aan machts- en kostenbeperkingen.

AI aan de rand betekent niet langer stomme AI

Gezichtsherkenning

AI-differentiatie aan de rand

Het draait allemaal om differentiatie binnen een acceptabel kosten-/vermogensbereik. Dat is moeilijk te bereiken met kant-en-klare oplossingen. Concurrenten hebben immers toegang tot dezelfde oplossingen. Wat je echt nodig hebt, is een reeks algoritmeopties die in de processor zijn gemodelleerd als speciale versnellers die klaar zijn om te worden gebruikt, met de mogelijkheid om je eigen, op software gebaseerde toegevoegde waarde aan te vullen. Je denkt misschien dat je hier niet veel kunt doen, afgezien van wat administratie en afstemming. Tijden zijn veranderd. CEVA heeft onlangs hun NeuPro-M embedded AI-processor geïntroduceerd die optimalisatie mogelijk maakt met behulp van enkele van de nieuwste ML-ontwikkelingen, diep in het algoritmeontwerp.

Oké, dus meer controle over het algoritme, maar met welk doel? U wilt de prestaties per watt optimaliseren, maar de standaardmaatstaf – TOPS/W – is te grof. Beeldvormingstoepassingen moeten worden gemeten aan de hand van frames per seconde (fps) per watt. Voor beveiligingstoepassingen, voor de veiligheid van auto's of het vermijden van botsingen met drones zijn herkenningstijden per frame veel relevanter dan ruwe bewerkingen per seconde. Een platform als NeuPro-M, dat in principe duizenden fps/W kan leveren, kan dus realistische fps-snelheden van 30-60 frames per seconde aan bij een zeer laag vermogen. Dat is een echte vooruitgang ten opzichte van traditionele kant-en-klare AI-oplossingen.

Het mogelijk maken

Ultieme algoritmen worden gebouwd door de functies in te voeren waarover u hebt gelezen, te beginnen met een breed scala aan kwantiseringsopties. Hetzelfde geldt voor de diversiteit van datatypen in activering en gewichten over een reeks bitgroottes. De neurale vermenigvuldigereenheid (NMU) ondersteunt optimaal meerdere bitbreedte-opties voor activering en gewichten zoals 8×2 of 16×4 en ondersteunt ook varianten zoals 8×10.

De processor ondersteunt Winograd Transforms of efficiënte convoluties, wat tot 2x prestatiewinst en minder vermogen oplevert met beperkte nauwkeurigheidsverslechtering. Voeg de sparsity-engine toe aan het model voor maximaal 4x versnelling, afhankelijk van het aantal nulwaarden (in gegevens of gewichten). Hier ondersteunt de Neural Multiplier Unit ook een reeks gegevenstypen, vast van 2×2 tot 16×16, en drijvende komma (en Bfloat) van 16×16 tot 32×32.

Streaminglogica biedt opties voor het schalen, activeren en poolen van vaste punten. Met de vectorprocessor kunt u uw eigen aangepaste lagen aan het model toevoegen. “Dus wat, iedereen steunt dat”, denk je misschien, maar zie hieronder over de doorvoer. Er is ook een reeks AI-functies van de volgende generatie, waaronder vision-transformatoren, 3D-convolutie, RNN-ondersteuning en matrixdecompositie.

Veel algoritme-opties, allemaal ondersteund door een netwerkoptimalisatie van uw embedded oplossing via het CDNN-framework om de kracht van uw ML-algoritmen volledig te benutten. CDNN is een combinatie van een grafiekcompiler voor netwerkinferenties en een speciale PyTorch-add-ontool. Deze tool snoeit het model, ondersteunt optioneel modelcompressie door middel van matrixdecompositie, en voegt kwantiseringsbewuste hertraining toe.

Optimalisatie van de doorvoer

In de meeste AI-systemen kunnen sommige van deze functies worden afgehandeld in gespecialiseerde machines, waarbij gegevens moeten worden overgebracht en de transformatie weer moet worden geladen wanneer deze is voltooid. Dat is veel extra latentie (en misschien vermogenscompromissen), waardoor de prestaties in uw overigens sterke model volledig worden ondermijnd. NeuPro-M elimineert dat probleem door verbinding te maken allen deze versnellers rechtstreeks naar een gedeelde L1-cache. Behoudt een veel hogere bandbreedte dan bij conventionele versnellers.

Als treffend voorbeeld bevindt de vectorverwerkingseenheid, die doorgaans wordt gebruikt om aangepaste lagen te definiëren, zich op hetzelfde niveau als de andere versnellers. Uw algoritmen geïmplementeerd in de VPU profiteren van dezelfde versnelling als de rest van het model. Nogmaals, er is geen offload en reload nodig om aangepaste lagen te versnellen. Bovendien kunt u maximaal 8 van deze NPM-engines hebben (alle versnellers, plus de NPM L1-cache). NeuPro-M biedt ook een aanzienlijk niveau van softwaregestuurde bandbreedte-optimalisatie tussen de L2-cache en de L1-caches, waardoor de frameverwerking wordt geoptimaliseerd en de behoefte aan DDR-toegang wordt geminimaliseerd.

Uiteraard minimaliseert NeuPro-M ook het gegevens- en gewichtsverkeer. Voor data delen accelerators dezelfde L1-cache. Een hostprocessor kan gegevens rechtstreeks communiceren met de NeuPro-M L2, waardoor de behoefte aan DDR-overdrachten opnieuw wordt verminderd. NeuPro-M comprimeert en decomprimeert gewichten op de chip tijdens overdracht met DDR-geheugen. Hetzelfde kan worden gedaan met activeringen.

Het bewijs in fps/W versnelling

CEVA voerde standaardbenchmarks uit met behulp van een combinatie van algoritmen gemodelleerd in de versnellers, van native via Winograd, tot Winograd+Sparsity, tot Winograd+Sparsity+4×4. Beide benchmarks lieten prestatieverbeteringen tot 3x zien, met een vermogen (fps/W) van ongeveer 5x voor een ISP NN. De NeuPro-M-oplossing leverde een kleiner oppervlak, 4x betere prestaties en 1/3 van het vermogen, vergeleken met hun eerdere generatie NeuPro-S.

Er is een trend die ik in het algemeen zie om de ultieme prestaties te verkrijgen door meerdere algoritmen te combineren. Dat is wat CEVA nu mogelijk maakt met dit platform. Je kunt meer lezen HIER.

Deel dit bericht via: Bron: https://semiwiki.com/artificial-intelligence/306655-ai-at-the-edge-no-longer-means-dumbed-down-ai/

Tijdstempel:

Meer van semi-wiki