Contents
QuIC is verheugd om de AI Model Efficiency Toolkit op GitHub te openen om samen te werken met andere vooraanstaande AI-onderzoekers en om een eenvoudige bibliotheek-plug-in die AI-ontwikkelaars kunnen gebruiken voor state-of-the-art modelefficiëntieprestaties.
Bij Qualcomm Technologies hebben we actief onderzoek gedaan naar 1,2,3 en AI-oplossingen ontwikkeld met als doel kunstmatige intelligentie alomtegenwoordig op apparaten, machines, voertuigen en dingen. Onze focus op energie-efficiëntie in het afgelopen decennium heeft geleid tot dramatische verbeteringen in AI-prestaties per watt die een verscheidenheid aan verbeterde ervaringen mogelijk hebben gemaakt, van virtuele assistenten op het apparaat en vertaling tot slimme beveiligingscamera's en op veiligheid gericht rijden.
Een drijvende kracht achter deze verbeteringen in prestaties per watt is ons toonaangevende onderzoek naar de efficiëntie van AI-modellen. Met modelefficiëntie bedoelen we technieken die modellen verkleinen, berekeningen verminderen, geheugenverkeer verminderen, latentie verlagen en hardware efficiënt gebruiken. We hebben traditioneel ons baanbrekende AI-onderzoek bijgedragen aan de rest van de gemeenschap door middel van papers en workshops op academische conferenties zoals NeurIPS of door de commercialisering van producten, zoals de Qualcomm Neural Processing SDK.
Nu gaan we een stap verder. Qualcomm Innovation Center (QuIC) is verheugd om de AI Model Efficiency Toolkit (AIMET) op GitHub open source te maken om samen te werken met andere toonaangevende AI-onderzoekers en om een eenvoudige bibliotheekplug-in te bieden die AI-ontwikkelaars kunnen gebruiken voor ultramoderne modelefficiëntie prestatie. Het doel van dit open source-project is om het ecosysteem te helpen migreren naar integer-inferentie, omdat we geloven dat dit een effectieve manier is om de prestaties per watt te verhogen.
AIMET voor energiezuinige AI op schaal
AIMET is een bibliotheek die geavanceerde kwantisatie- en compressietechnieken ondersteunt voor getrainde neurale netwerkmodellen. Kwantiseringstechnieken proberen het aantal bits dat wordt gebruikt voor gewichtsparameters en activeringsberekeningen systematisch te verminderen zonder de nauwkeurigheid van het model op te offeren, zoals het verplaatsen van een 32-bits drijvende-kommawaarde naar een 8-bits vaste-kommawaarde. Compressietechnieken proberen systematisch activeringsknooppunten en verbindingen tussen knooppunten te verwijderen zonder de nauwkeurigheid van het model op te offeren. AIMET ondersteunt een verscheidenheid aan geavanceerde kwantiseringstechnieken, zoals gegevensvrije kwantisering en compressietechnieken, zoals ruimtelijke singuliere waardedecompositie (SVD) en kanaalsnoei.
Compressie of kwantisatie verkleint de modelgrootte van een diep neuraal netwerk.
Het handmatig optimaliseren van een neuraal netwerk schaalt niet, omdat het tijdrovend en kostbaar is in termen van technische middelen. Bij het ontwerpen van AIMET lag de focus op het ontwikkelen van technieken die met eenvoudige API-aanroepen aanzienlijke verbeteringen kunnen opleveren voor de modelefficiëntie. AIMET verbetert automatisch de runtime-prestaties, latentie, energie-efficiëntie en geheugenvereisten van deep learning neurale netwerkmodellen, terwijl tijdrovende en moeilijk te herhalen handmatige afstemming wordt vermeden. De bibliotheek kan rechtstreeks worden aangesloten op TensorFlow- en PyTorch-trainingsframeworks voor gebruiksgemak, waardoor ontwikkelaars API's rechtstreeks vanuit hun bestaande pijplijnen kunnen aanroepen.
AIMET omvat kwantiserings- en compressietechnieken die een eenvoudige implementatie van AI-modellen op schaal mogelijk maken.
Het was ook belangrijk om ervoor te zorgen dat AIMET kan profiteren van algemene hardwareversnellingstechnieken. AIMET is ontworpen om neurale netwerken efficiënter te laten werken op fixed-point AI-hardwareversnellers, zoals die beschikbaar zijn op Qualcomm Snapdragon-platforms.
Dus waarom zou u geïnteresseerd zijn in AIMET? Het zijn de resultaten. De toolkit is gebaseerd op een deel van het werk dat is gepubliceerd in verschillende Qualcomm AI Research-papers, waaronder data-free quantization (DFQ). Via een reeks eenvoudige API-aanroepen kan AIMET een bestaand 32-bits drijvende-kommamodel kwantiseren naar een 8-bits vast-kommamodel zonder veel nauwkeurigheid op te offeren en zonder modelafstemming. Als een voorbeeld van behouden nauwkeurigheid: de DFQ-methode die wordt toegepast op verschillende populaire netwerken, zoals MobileNet-v2 en ResNet-50, resulteert in een nauwkeurigheidsverlies van minder dan 0,9% tot 8-bits kwantisering — op een geautomatiseerde manier zonder eventuele trainingsgegevens. Bovendien hebben gekwantiseerde modellen die we hebben uitgevoerd op de Qualcomm Hexagon DSP in plaats van op de Qualcomm Kryo CPU geresulteerd in een 5x tot 15x versnelling. Bovendien heeft het 8-bits model ook een 4x kleinere geheugenvoetafdruk in vergelijking met het 32-bits model.
Gegevensvrije kwantisering maakt INT8-inferentie mogelijk met een zeer minimaal verlies in nauwkeurigheid ten opzichte van het FP32-model.
Evenzo kan AIMET modellen aanzienlijk comprimeren. Voor populaire modellen, zoals ResNet-50 en ResNet-18, bereikt compressie met ruimtelijke SVD plus kanaalsnoei een MAC-reductie (multiply-accumulate) van 50% met behoud van nauwkeurigheid binnen 1% van het oorspronkelijke ongecomprimeerde model.
AIMET-compressietechnieken (spatial SVD en channel pruning) verminderen MAC's met 50% terwijl de nauwkeurigheid binnen ongeveer 1% van het oorspronkelijke model blijft.
Een eenvoudige integratie in gewone AI ontwikkelingsworkflows
Qualcomm Technologies maakt al jaren tools voor ontwikkelaars om hardware efficiënter te gebruiken – van grafische versnelling tot computercameratoepassingen. We weten hoe belangrijk het is dat tools passen in typische ontwikkelingsworkflows, abstracte complexiteit bieden, overtuigende voordelen bieden en gebruiksvriendelijk zijn. De Qualcomm Neural Processing SDK is bijvoorbeeld ontworpen om ontwikkelaars te helpen tijd en moeite te besparen bij het optimaliseren van de prestaties van getrainde neurale netwerken op apparaten met Snapdragon. Onze kwantisatietechnieken worden zelfs sinds de zomer van 2019 geleverd met de Qualcomm Neural Processing SDK.
Voor het QuIC AIMET-project kunnen ontwikkelaars de nieuwste en beste bibliotheek gebruiken, die naadloos moet worden geïntegreerd met hun bestaande trainingsworkflows. AIMET voert een TensorFlow- of PyTorch-getraind model in, dat vervolgens kan worden gecomprimeerd, gekwantiseerd en verfijnd. Gekwantiseerde modellen kunnen goed draaien op hardware met hardwareversnelling op een vast punt. Het geoptimaliseerde model wordt bijvoorbeeld uitgevoerd in ONNX of TensorFlow, die vervolgens op Snapdragon kan worden uitgevoerd via de Qualcomm Neural Processing SDK.
We zijn ook verheugd te kunnen melden dat deze technieken in het wild zijn getest door echte ontwikkelaars op echte commerciële toepassingen met verbeteringen die overeenkomen met onze theoretische benchmarkresultaten. Ze zijn bijvoorbeeld gebruikt voor het optimaliseren van commerciële modellen die worden gebruikt voor biometrie, spraakherkenning en automotive.
Bevorderen van onderzoek naar de efficiëntie van AI-modellen door middel van samenwerking
De efficiëntie van AI-modellen is een cruciaal onderzoeksgebied dat van gedeeld belang is in de hele AI-gemeenschap om het AI-ecosysteem mogelijk te maken en de AI-ontwikkeling op het apparaat op grote schaal te versnellen. QuIC heeft dit project opgezet om samen te werken met andere AI-onderzoekers, ons state-of-the-art onderzoek naar de efficiëntie van modellen te verbeteren en bij te dragen aan de open-sourcegemeenschap. QuIC zet zich in om op regelmatige basis baanbrekend onderzoek bij te dragen aan dit project. Ga met ons mee om samen te werken aan het verbeteren van de efficiëntie van AI-modellen.
Bij Qualcomm AI Research geloven we dat onderzoek niet bedoeld is om in het lab te blijven. We commercialiseren en schalen onze onderzoeksdoorbraken snel op voor verschillende apparaten en industrieën, waardoor de tijd tussen onderzoek in het laboratorium wordt verkort en vooruitgang wordt geboden die levens verrijken. De open sourcing van AIMET versnelt deze innovatiecyclus verder.
- Doe mee aan het QuIC AIMET GitHub-project
- Meld je aan voor onze nieuwsbrief om de laatste informatie over mobiel computergebruik te ontvangen< /li>
Referenties:
- Markus Nagel, Mart van Baalen, Tijmen Blankevoort, Max Welling. “Gegevensvrije kwantisatie door gewichtsegalisatie en biascorrectie.” IEEE International Conference on Computer Vision (ICCV), Seoul, oktober 2019 (mondelinge presentatie).
- Markus Nagel, Rana Ali Amjad, Mart van Baalen, Christos Louizos, Tijmen Blankevoort, “Up or Down? Adaptieve afronding voor kwantisering na de training.”
- Andrey Kuzmin, Markus Nagel, Saurabh Pitre, Sandeep Pendyam, Tijmen Blankevoort, Max Welling. “Taxonomie en evaluatie van gestructureerde compressie van convolutionele neurale netwerken.”