Apache MXNet est un framework de deep learning open source, utilisée pour former et déployer des réseaux de neurones profonds. Il est évolutif et permet un entraînement rapide des modèles. Il prend en charge un modèle de programmation flexible et plusieurs langages de programmation (notamment C++, Python, Julia, Matlab, JavaScript, Go, R, Scala, Perl )

La bibliothèque MXNet est portable et peut s’adapter à plusieurs GPU[1] et à plusieurs machines. MXNet est pris en charge par les fournisseurs de cloud public, notamment Amazon Web Services (AWS)[2] et Microsoft Azure[3]. Amazon a choisi MXNet comme framework de deep learning pour AWS[4],[5]. MXNet est actuellement soutenu par Intel, Baidu, Microsoft, Wolfram Research et des instituts de recherche d'institutions telles que Carnegie Mellon, MIT, l'Université de Washington et l'Université des sciences et technologies de Hong Kong[6].

Caractéristiques

modifier

Apache MXNet est un framework de deep learning léger, flexible et ultra-évolutif qui prend en charge les modèles d’apprentissage en profondeur, y compris les réseaux de neurones convolutionnels (CNN) et les réseaux récurrents à mémoire court et long terme, Long short-term memory (LSTM).

Scalable

modifier

MXNet est conçu pour être distribué sur une infrastructure cloud dynamique, utilisant un serveur de paramètres distribué (basé sur des recherches menées par l'Université Carnegie Mellon, Baidu et Google[7]), et peut atteindre une échelle presque linéaire avec plusieurs GPU ou processeurs .

Flexible

modifier

MXNet prend en charge la programmation impérative et symbolique, ce qui permet aux développeurs habitués à la programmation impérative de se familiariser avec le deep learning. Cela facilite également le suivi, le débogage, la sauvegarde des points de contrôle, la modification des hyperparamètres, tels que le taux d’apprentissage ou les arrêts précoces .

Multiple languages

modifier

Prise en charge du C ++ pour un backend optimisé afin de tirer le meilleur parti du processeur graphique ou du processeur disponible, ainsi que Python, R, Scala, Clojure, Julia, Perl, MATLAB et JavaScript pour une interface simple pour les développeurs.

Portable

modifier

Prend en charge le déploiement efficace d'un modèle formé sur des périphériques bas de gamme pour l'inférence, tels que les périphériques mobiles (utilisant Amalgamation[8]), les périphériques Internet des objets (utilisant AWS Greengrass), l'informatique sans serveur (utilisant AWS Lambda ) ou les conteneurs. Ces environnements bas de gamme ne peuvent avoir qu'un processeur plus faible ou une mémoire limitée (RAM) et devraient pouvoir utiliser les modèles formés dans un environnement de niveau supérieur (cluster basé sur un GPU, par exemple).

Voir également

modifier

Références

modifier
  1. « Building Deep Neural Networks in the Cloud with Azure GPU VMs, MXNet and Microsoft R Server » (consulté le ).
  2. « Apache MXNet on AWS - Deep Learning on the Cloud », Amazon Web Services, Inc. (consulté le ).
  3. « Building Deep Neural Networks in the Cloud with Azure GPU VMs, MXNet and Microsoft R Server. », Microsoft TechNet Blogs (consulté le ).
  4. « MXNet - Deep Learning Framework of Choice at AWS - All Things Distributed », www.allthingsdistributed.com (consulté le ).
  5. « Amazon Has Chosen This Framework to Guide Deep Learning Strategy », Fortune (consulté le ).
  6. « MXNet, Amazon’s deep learning framework, gets accepted into Apache Incubator », TechGenix,‎ (lire en ligne, consulté le ).
  7. « Scaling Distributed Machine Learning with the Parameter Server » (consulté le ).
  8. Amalgamation.