Qu’est-ce que le concepteur Azure Machine Learning (v1) ?

Le concepteur Azure Machine Learning est une interface par glisser-déposer utilisée pour entraîner et déployer des modèles dans Azure Machine Learning. Cet article décrit les tâches que vous pouvez effectuer dans le concepteur.

Notes

Le concepteur prend en charge deux types de composants, les composants prédéfinis classiques (v1) et les composants personnalisés (v2). Ces deux types de composants ne sont PAS compatibles.

Les composants prédéfinis classiques fournissent principalement des composants prédéfinis utilisés pour le traitement des données et les tâches de Machine Learning traditionnelles telles que la régression et la classification. Ce type de composant continue d’être pris en charge, mais aucun nouveau composant n’est ajouté.

Les composants personnalisés vous permettent d’encapsuler votre propre code en tant que composant. Ils vous permettent de partager des composants dans des espaces de travail et de créer en toute transparence dans des interfaces Studio, CLI v2 et le Kit de développement logiciel (SDK) v2.

Pour les nouveaux projets, nous vous suggérons vivement d’utiliser un composant personnalisé et compatible avec AzureML V2 qui va continuer à recevoir de nouvelles mises à jour.

Cet article s’applique aux composants classiques, prédéfinis et non compatibles avec l’interface CLI v2 et le kit de développement logiciel (SDK) v2.

GIF of a building a pipeline in the designer.

Le concepteur utilise votre espace de travail Azure Machine Learning pour organiser des ressources partagées telles que :

Formation et déploiement du modèle

Utilisez un canevas visuel pour créer un workflow Machine Learning de bout en bout. Entraînez, testez et déployez des modèles, le tout dans le concepteur :

  • Glisser-déposer les jeux de données et les composants sur le canevas.
  • Connecter les composants pour former un brouillon de pipeline.
  • Envoyer une exécution de pipeline à l’aide des ressources de calcul de votre espace de travail Azure Machine Learning.
  • Convertir vos pipelines de formation en pipelines d’inférence.
  • Publier vos pipelines sur un point de terminaison de pipeline REST pour envoyer un nouveau pipeline qui s’exécute avec des paramètres et des ressources de données différents.
    • Publier un pipeline d’entraînement pour réutiliser un pipeline unique afin d’entraîner plusieurs modèles tout en modifiant les paramètres et les ressources de données.
    • Publier un pipeline d’inférence par lot pour effectuer des prédictions sur de nouvelles données à l’aide d’un modèle préalablement formé.
  • Déployer un pipeline d’inférence en temps réel vers un point de terminaison en ligne pour effectuer des prédictions sur de nouvelles données en temps réel.

Workflow diagram for training, batch inference, and real-time inference in the designer.

Pipeline

Un pipeline est constitué de ressources de données et de composants analytiques que vous connectez. Les pipelines ont de nombreuses utilisations : vous pouvez créer un pipeline qui effectue l’apprentissage d’un modèle unique ou un pipeline qui effectue l’apprentissage de plusieurs modèles. Vous pouvez créer un pipeline qui réalise des prédictions en temps réel ou par lot ou un pipeline qui nettoie uniquement les données. Les pipelines vous permettent de réutiliser votre travail et d’organiser vos projets.

Brouillon de pipeline

Lorsque vous modifiez un pipeline dans le concepteur, votre progression est enregistrée en tant que brouillon de pipeline. Vous pouvez modifier un brouillon de pipeline à tout moment en ajoutant ou en supprimant des composants, en configurant des cibles de calcul, en créant des paramètres et ainsi de suite.

Un pipeline valide a les caractéristiques suivantes :

  • Les ressources de données peuvent uniquement se connecter à des composants.
  • Les composants peuvent uniquement se connecter à des ressources de données ou à d’autres composants.
  • Tous les ports d’entrée des composants doivent comporter une connexion au flux de données.
  • Tous les paramètres obligatoires de chaque composant doivent être configurés.

Lorsque vous êtes prêt à exécuter votre brouillon de pipeline, vous soumettez un travail de pipeline.

Travail de pipeline

Chaque fois que vous exécutez un pipeline, la configuration du pipeline et ses résultats sont stockés dans votre espace de travail sous la forme d’un travail de pipeline. Vous pouvez revenir à n’importe quel travail de pipeline pour l’inspecter à des fins de dépannage ou d’audit. Clonez un travail de pipeline pour créer un brouillon de pipeline que vous pouvez modifier.

Les travaux de pipeline sont regroupés en expériences afin d’organiser l’historique des travaux. Vous pouvez définir l’expérience pour chaque travail de pipeline.

Données

Une ressource de données de machine learning facilite l’accès aux données et leur utilisation. Plusieurs exemples de ressources de données sont inclus dans le concepteur pour que vous puissiez les tester. Vous pouvez inscrire plusieurs ressources de données en fonction de vos besoins.

Composant

Un composant est un algorithme que vous appliquez à vos données. Le concepteur comporte plusieurs composants, allant de fonctions d’entrée des données à des processus d’entraînement, de scoring et de validation.

Un composant peut comporter un ensemble de paramètres utilisables pour configurer les algorithmes internes du composant. Quand vous sélectionnez un composant dans le canevas, ses paramètres sont affichés dans le volet Propriétés à droite du canevas. Vous pouvez modifier les paramètres figurant dans ce volet pour affiner votre modèle. Vous pouvez définir les ressources de calcul pour des composants individuels dans le concepteur.

Screenshot showing the component properties.

Pour obtenir de l’aide sur la navigation dans la bibliothèque des algorithmes d’apprentissage automatique disponibles, consultez Vue d’ensemble des informations de référence relatives aux algorithmes et aux composants. Pour obtenir de l’aide sur le choix d’un algorithme, consultez Aide-mémoire de l’algorithme Machine Learning.

Ressources de calcul

Utilisez les ressources de calcul de votre espace de travail pour exécuter votre pipeline et héberger vos modèles déployés en tant que points de terminaison en ligne ou points de terminaison de pipeline (pour l’inférence de lot). Les cibles de calcul prises en charge sont les suivantes :

Cible de calcul Entrainement Déploiement
Capacité de calcul Azure Machine Learning
Azure Kubernetes Service

Les cibles de calcul sont associées à votre espace de travail Azure Machine Learning. Vous gérez vos cibles de calcul dans votre espace de travail dans le studio Azure Machine Learning.

Déployer

Pour effectuer une inférence en temps réel, vous devez déployer un pipeline comme point de terminaison en ligne. Le point de terminaison en ligne crée une interface entre une application externe et votre modèle de scoring. Un appel à un point de terminaison en ligne renvoie les résultats de prédiction à l’application en temps réel. Pour générer un appel vers un point de terminaison en ligne, vous transmettez la clé API créée au moment du déploiement du point de terminaison. Le point de terminaison s’appuie sur l’architecture populaire REST, souvent choisie pour les projets de programmation web.

Les points de terminaison en ligne doivent être déployés sur un cluster Azure Kubernetes Service.

Pour savoir comment déployer votre modèle, consultez Tutoriel : Déployez un modèle Machine Learning avec le concepteur.

Publish

Vous pouvez également publier un pipeline sur un point de terminaison de pipeline. Semblable à un point de terminaison en ligne, un point de terminaison de pipeline vous permet d’envoyer de nouveaux travaux de pipeline à partir d’applications externes à l’aide d’appels REST. Toutefois, vous ne pouvez pas envoyer ni recevoir de données en temps réel à l’aide d’un point de terminaison de pipeline.

Les pipelines publiés sont flexibles ; ils peuvent être utilisés pour effectuer ou réeffectuer l’entraînement de modèles, effectuer des inférences par lot, traiter de nouvelles données et bien plus encore. Vous pouvez publier plusieurs pipelines sur un point de terminaison de pipeline unique et spécifier la version de pipeline à exécuter.

Un pipeline publié s’exécute sur les ressources de calcul que vous définissez dans le brouillon de pipeline pour chaque composant.

Le concepteur crée le même objet PublishedPipeline que le Kit de développement logiciel (SDK).

Étapes suivantes