Qu’est-ce qu’Azure Machine Learning ?

Effectué

Azure Machine Learning est une plateforme permettant de créer et de gérer le cycle de vie de bout en bout des systèmes de Machine Learning. Azure Machine Learning est indépendant de l’infrastructure, ce qui vous donne la possibilité d’utiliser les technologies que vous préférez, telles que TensorFlow, PyTorch, ONNX, MLFlow et Scikit-learn.

Azure Machine Learning permet aux utilisateurs familiarisés avec les frameworks ML d’entraîner et de déployer rapidement des modèles à l’aide de code, tout en donnant à d’autres outils visuels puissants. Tous vos scripts d’entraînement, modèles, journaux et calculs sont centralisés dans un espace de travail partagé dans Azure Machine Learning, ce qui vous aide à chaque étape de la création et du déploiement de systèmes Machine Learning, ce qui signifie que vous pouvez vous concentrer sur les modèles pendant qu’Azure Machine Learning effectue le reste.

Azure Machine Learning propose une suite complète de fonctionnalités permettant de prendre en charge la journalisation, la surveillance et la gouvernance des données et des modèles, ce qui garantit que vos modèles fonctionnent comme prévu et communiqués efficacement aux parties prenantes.

Qu’est-ce que le studio Azure Machine Learning ?

Azure Machine Learning studio est un service basé sur navigateur qui fournit des solutions sans code et « code-first » pour créer, former et gérer visuellement des modèles par le biais d’une interface utilisateur web. Azure Machine Learning Studio permet au Kit de développement logiciel (SDK) Python de s’intégrer en toute transparence aux notebooks Jupyter pris en charge en mode natif pour les notes et le codage collaboratifs. Les données stockées dans Azure Machine Learning studio sont simples à gérer avec une visualisation intuitive des données et des fonctionnalités d’image assistée par IA ou d’étiquetage de texte.

Capture d’écran d’une expérience dans Azure Machine Learning Studio.

Création d’un modèle

Vous pouvez créer des modèles dans Azure Machine Learning de plusieurs façons. Une formation peut avoir lieu sur un ordinateur local ou sur le Cloud Azure, c’est-à-dire sur une machine virtuelle ou un cluster de calcul par exemple.

Code avec Python

Avec le Kit de développement logiciel (SDK) Azure Machine Learning pour Python, vous pouvez interagir avec le service à partir de plusieurs environnements, notamment jupyter Notebooks. Les notebooks fournissent un environnement collaboratif pour le code, les visualisations et les commentaires exécutables. Azure Machine Learning studio inclut des exemples de notebooks que vous pouvez utiliser pour commencer à utiliser Azure Machine Learning.

Capture d’écran des notebooks Azure Machine Learning.

AutoML (Apprentissage automatique automatisé)

Le Machine Learning automatisé (AutoML) automatise la création des meilleurs modèles Machine Learning et vous aide à trouver le meilleur modèle pour vos données, quelle que soit votre expertise en science des données. Spécialisé dans la classification, la régression et la prévision de séries chronologiques, AutoML expérimente avec différentes caractéristiques, algorithmes et paramètres en fonction de la tâche, puis fournit des scores sur les modèles qu’il pense être les mieux adaptés. Vous pouvez ensuite déployer ces modèles comme c’est le cas, ou les exporter dans un format ONNX qui peut s’exécuter sur différentes plateformes et appareils. La polyvalence et la vitesse d’AutoML signifient qu’elle est souvent utilisée comme point de départ par les scientifiques des données expérimentés et novices.

Vous pouvez utiliser AutoML dans Azure Machine Learning Studio ou via le Kit de développement logiciel (SDK) Python.

L’image suivante montre une vue d’ensemble de la création du pipeline AutoML et la recommandation d’un modèle.

Diagramme du pipeline Azure AutoML.

Concepteur

Si vous préférez une option sans code, Azure Machine Learning Designer dans Azure Machine Learning Studio vous donne un canevas visuel avec des contrôles glisser-déplacer pour manipuler des jeux de données et des modules. Les modules au sein d’Azure Machine Learning Designer sont des algorithmes qui peuvent avoir une gamme d’objectifs, allant des fonctions d’entrée de données aux processus d’entraînement, de scoring et de validation. Ces modules liés créent des pipelines ML efficaces pour générer, tester et déployer des modèles ML, comme illustré dans l’exemple suivant.

Capture d’écran du concepteur Azure Machine Learning.

Calculer

Vous pouvez allouer ou attacher les ressources informatiques dont vous avez besoin pour votre environnement ML via Azure Machine Learning. Du calcul qui alimente vos notebooks Jupyter pour l’analyse exploratoire des données, vers les clusters que vous allez utiliser pour l’entraînement et les points de terminaison managés que vous allez déployer pour l’inférence de production à grande échelle ; vous pouvez créer et gérer tous ces éléments via Azure Machine Learning.

Gestion des données

Avec Azure Machine Learning, vous pouvez simplifier et collaborer sur le processus chronophage de la préparation et de l’ingestion des données. La plateforme s’intègre en douceur à Azure Synapse, Azure Databricks et une suite d’autres services Azure pour aider les pipelines d’ingénierie des données à extraire, transformer et charger des données brutes (ETL) dans des magasins de données.

Magasins de données et étiquetage

Azure Machine Learning stocke en toute sécurité vos données brutes dans le magasin de données. Vous n’avez donc pas besoin de vous appuyer sur des sources externes pour vos scripts, et vous pouvez expérimenter vos jeux d’entraînement sans risquer l’intégrité des données brutes d’origine. Une fois stockées, vous pouvez nettoyer, transformer et étiqueter les données pour créer des jeux de formation à partir du magasin de données. Azure Machine Learning offre des outils permettant d’étiqueter les données tabulaires, d’images et de texte avec des systèmes Machine Learning intégrés qui peuvent suggérer des étiquettes ou automatiser entièrement l’étiquetage des données. L’exemple suivant montre un projet de classification multilabel piloté par l’homme en cours dans Azure Machine Learning Studio.

Capture d’écran de la classification multi-étiquette dans Azure Machine Learning Studio.

Opérations de Machine Learning (MLOps)

Tous les modèles, y compris ceux qui fonctionnent parfaitement lorsqu’ils sont déployés, nécessitent une surveillance et une réentraînation au fil du temps pour maintenir des performances élevées. Azure Machine Learning fournit des fonctionnalités d’opérations Machine Learning (MLOps) pour créer des étapes reproductibles pour la préparation des données, l’apprentissage, le scoring et les environnements logiciels réutilisables pour faciliter le déploiement. Ces pipelines et environnements reproductibles offrent une expérience d’intégration/livraison continue (CI/CD) à votre flux de travail Machine Learning.

En plus de ces fonctionnalités, Azure Machine Learning fournit également des outils de supervision MLOps pour vous informer des événements au sein du cycle de vie ml, et même réagir à ces événements. Avec ce contrôle, vous pouvez rapidement identifier et répondre à la diminution des performances du modèle ou des problèmes au sein des jeux de données. Les informations de gouvernance sont également fournies dans Azure Machine Learning. Vous pouvez donc afficher un historique complet des exécutions et suivre les actions des membres de l’équipe dans le cycle de vie du modèle.