11.6.3.1 : Solutions Intel avec OpenVINO pour l'apprentissage automatique



Dans le domaine de l'apprentissage automatique avec des images (vidéo surveillance,~etc.), Intel a développé une API commune pour le CPU, GPU, VPU (Video Processing Unit noteLe VPU développé par Movidius est basé sur une micro-architecture multi-parallélisée qui fonctionne un peu comme un CPU ou un GPU, avec un set d'instructions fortement orienté vers le parallélisme des données. Le processeur Intel Movidius Myriad 2 est largement utilisé dans l'industrie dans le domaine de la vision autonome.) mais aussi pour les FPGA. L'accélération est implémentée dans sa phase d'inférence, sur un modèle d'apprentissage déjà entraîné, avec une large compatibilité envers les modèles existants sur le marché (TensorFlow, Caffe, MXNet,~etc.). Le fabricant Terasic a une offre autour de \$520 pour une carte de développement équipée d'un FPGA Cyclone V GX (similaire à la version GT), avec un BSP fourni pour la version 17.1 de Quartus et la version OpenVINO 2019 R1.

Bien sûr le toolkit OpenVINO n'est pas limité aux images. Par exemple, si le modèle d'apprentissage est basé sur un réseau de neurones, une fois le modèle optimisé sur les données d'apprentissage et vérifié sur celles de test, sa topologie est exporté dans un fichier XML. Les outils de OpenVINO, à partir de ce fichier, génèrent une image binaire avec la description topologique du réseau, qui sera ensuite exécutée sur le CPU, GPU, VPU ou FPGA avec les nouvelles données inconnues.