Wat is OpenVINO en wat zijn de hardwarevereisten?

By ·Categorieën: Artificial Intelligence, Techniek uitgelegd·Published On: november 9th, 2023·5,3 min read·

Deep learning, een vorm van AI (kunstmatige intelligentie), is een subset van machine learning waarmee een computer kan leren op een manier die vergelijkbaar is met hoe een menselijk brein dat doet. Om dit te bereiken gebruiken deep learning-modellen neurale netwerken.

Om de prestaties en nauwkeurigheid van een deep learning-model te vergroten, zijn er verschillende softwaretoepassingen ontwikkeld met het oog op deep learning-optimalisatie. Een van de meest populaire opties is OpenVINO™. Laten we eens kijken wat OpenVINO precies is, hoe het werkt, hoe het kan worden gebruikt en wat de hardwarevereisten voor OpenVINO zijn.

Wat is OpenVINO?

OpenVINO, of Open Visual Inference and Neural Network Optimization, is een open-source toolkit ontwikkeld door Intel® voor de optimalisatie van deep learning-modellen. OpenVINO kan worden gebruikt om oplossingen voor onder andere natuurlijke taalverwerking (NLP), machine learning en computer vision te versnellen. De OpenVINO-toolkit kan voor van alles worden gebruikt, van het maken van modellen tot en met de implementatie ervan. Maar een van de sterkste punten is toch wel de optimalisatie van deep learning AI-modellen.

Hoe werkt OpenVINO?

De OpenVINO-workflow kan in vier hoofdstappen worden samengevat:

  • Modeltraining: Eerst wordt het deep learning-model buiten OpenVINO getraind met behulp van een gekozen raamwerk. OpenVINO accepteert PyTorch-, ONNX- en TensorFlow-modellen.
  • Modeloptimalisatie: De Model Optimizer laadt dit model, leest het, bouwt er een interne representatie van en optimaliseert het vervolgens met behulp van het gekozen raamwerk. Daarna wordt de IR (Intermediate Representation) gegenereerd. Deze bestaat uit twee bestanden; een .xml- en een .bin-bestand.
  • Inferentiemachine: De Inference Engine wordt gebruikt om de IR te lezen en de daadwerkelijke inference van het model uit te voeren. Het doet dit met behulp van ondersteunde Intel-hardware, waaronder de CPU (Central Processing Unit), GPU (Graphics Processing Unit), NPU (Neural Processing Unit), FPGA (Field-Programmable Gate Array) of Intel GNA (Gaussian and Neural Accelerator).
  • Applicatie-implementatie: De applicatie kan worden geïmplementeerd op verschillende apparaten.

Wat doet OpenVINO?

Het belangrijkste voordeel van deep learning-optimalisatie met OpenVINO is efficiëntie en snelheid. OpenVINO helpt bij de coördinatie van de verschillende hardware-elementen die nodig zijn om een ​​AI-model te trainen en te optimaliseren. Effectieve optimalisatie helpt om de verliesfunctie sneller te minimaliseren. De verliesfunctie is het verschil tussen de voorspelde output en de werkelijke output van een AI-model. De verliesfunctie kan worden geminimaliseerd door de hyperparameters van het model tijdens de training aan te passen. Hyperparameters zijn details die tijdens de training aan het model worden verstrekt, niet te verwarren met de uitvoerparameters die deel uitmaken van het resulterende model.

Hyperparameters die binnen het model kunnen worden aangepast, zijn onder meer zaken als batchgrootte, afname in gewicht, momentum en leersnelheid. Laten we als voorbeeld eens kijken naar de optimalisatie van de leersnelheid.

Optimalisatie van leersnelheid

Om de verliesfunctie te minimaliseren, kan de leersnelheid (de snelheid waarmee het model zich aanpast) worden verhoogd of verlaagd. Bij een te lage leersnelheid is er meer tijd en geheugen nodig om het model te trainen. Een lagere snelheid betekent echter ook een gestage opmars naar een minimale verliesfunctie. Aan de andere kant kan een hogere leersnelheid ervoor zorgen dat het model veel sneller leert. Maar dit brengt ook het risico met zich mee dat de minimale verlieswaarde wordt overschreden.

Door het leertempo aan te passen, kun je de ideale balans vinden tussen een te laag of te hoog leertempo.

Voorbeelden van OpenVINO

OpenVINO wordt op verschillende gebieden gebruikt, variërend van productie tot slimme steden en gezondheidszorg. Enkele voorbeelden van veelgebruikte computer vision-modellen die OpenVINO kan helpen optimaliseren zijn:

  • Image inpainting: Met behulp van image inpainting kunnen beschadigde of ontbrekende pixels in afbeeldingen en video’s worden hersteld. Bekijk deze case van Intel voor een voorbeeld van image inpainting.
  • Gezichtsherkenning: Gezichtsherkenning wordt gebruikt om het gezicht van een persoon te identificeren aan de hand van een afbeelding of video. Veel moderne smartphones zijn bijvoorbeeld voorzien van gezichtsherkenningstechnologie om je telefoon te ontgrendelen door simpelweg je gezicht te scannen.
  • Objectdetectie: Met objectdetectie kan een computer vison-systeem bepaalde objecten detecteren in visuele invoer, zoals afbeeldingen en video. Een objectdetectiemodel kan bijvoorbeeld een afbeelding van een straat analyseren en zaken identificeren zoals gezichten, handtassen of iets anders waarvoor het model is getraind om het te herkennen.

Een foto van een computer vision-toepassing

OpenVINO en generatieve AI

Generatieve AI, een type kunstmatige intelligentie dat zich richt op het genereren van nieuwe content op basis van trainingsgegevens, is grotendeels afhankelijk van modelinferentie. OpenVINO kan worden gebruikt om deze gevolgtrekking en de ontwikkeling van generatieve AI-modellen te versnellen. Laten we stable diffusion als voorbeeld nemen.

Stable diffusion is een soort generatief AI-tekst-naar-afbeelding-model dat wordt gebruikt om realistische, gedetailleerde afbeeldingen te maken op basis van tekstprompts. Diffusiemodellen werken door een Gaussische ruis aan de trainingsgegevens toe te voegen en deze ruis vervolgens te verwijderen (‘denoising’) om de gegevens te herstellen. Dit leert het model hoe de ruis kan worden verwijderd en afbeeldingen van hogere kwaliteit kunnen worden gemaakt. In de praktijk is dit proces echter vaak erg langzaam en de modellen nemen doorgaans veel ruimte in beslag. Daarom moet je de modeltraining en gevolgtrekking optimaliseren om de oplossing werkbaar te maken. Dit is waar OpenVINO bij komt kijken.

OpenVINO versnelt modeltraining en optimaliseert inferentie, waardoor de mogelijkheden worden vergroot van waar en hoe je modelinferentie kunt uitvoeren.

Hardwarevereisten van OpenVINO

OpenVino kan alleen op Intel-hardware draaien. Om de OpenVINO-toolkit te kunnen gebruiken, heeft je systeem een ​​Intel CPU, GPU, NPU, FPGA of GNA nodig. Meer informatie over OpenVINO-apparaten en de ondersteunde hardware vind je op deze pagina.

OpenVINO benutten met de Axial Edge Server van OnLogic

Een foto van de Axial AC101 van OnLogic

Intel’s OpenVINO maakt deep learning-modeloptimalisatie mogelijk vanuit vrijwel elk raamwerk en stelt je in staat deze te implementeren op een breed scala aan Intel-hardware, waaronder CPU’s, GPU’s (inclusief iGPU’s), NPU’s, FPGA’s en GNA’s.

De AC101 Axial Edge Server van OnLogic ondersteunt Intel’s lijn van 13e generatie hybride-coreprocessors (voorheen bekend als “Raptor Lake”) die zijn voorzien van geïntegreerde Intel UHD 770 grafische kaarten en tot 128 GB DDR5-geheugen kunnen ondersteunen. Bovendien ondersteunt de AC101 full-length GPU’s, zoals de Intel Arc A40 en A60. Daardoor zijn nóg krachtigere verwerkingsmogelijkheden mogelijk. In combinatie met OpenVINO biedt Axial de ideale oplossing voor AI-modeltraining en inferentie aan de edge.

Wil je meer weten over hoe OpenVINO kan worden gebruikt met de Axial edge server van OnLogic, neem dan contact op met ons technische ondersteuningsteam.

Ontvang de laatste Tech Updates

Abonneer je op onze nieuwsbrief en ontvang updates van OnLogic. Hoor als eerste OnLogic nieuws en inzichten van onze experts. Meld je aan op de inschrijfpagina.

Delen

About the Author: Claireice Mathai

Claireice Mathai is a content creator for OnLogic. When not writing, she enjoys playing guitar and gaming.