AutoMLStep Classe

Crée une étape de pipeline Azure ML qui encapsule une exécution ML automatisée.

Pour obtenir un exemple d’utilisation d’AutoMLStep, consultez le notebook https://aka.ms/pl-automl.

Initialiser un autoMLStep.

Héritage
AutoMLStep

Constructeur

AutoMLStep(name, automl_config, inputs=None, outputs=None, script_repl_params=None, allow_reuse=True, version=None, hash_paths=None, enable_default_model_output=True, enable_default_metrics_output=True, **kwargs)

Paramètres

name
str
Obligatoire

Nom de l'étape.

automl_config
AutoMLConfig
Obligatoire

Objet AutoMLConfig qui définit la configuration de cette exécution de ML automatisé.

inputs
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData]]
valeur par défaut: None

Liste des liaisons de port d’entrée.

outputs
list[Union[PipelineData, OutputPortBinding]]
valeur par défaut: None

Liste des liaisons de port de sortie.

script_repl_params
dict
valeur par défaut: None

Paramètres facultatifs à remplacer dans un script, par exemple {'param1': 'value1', 'param2': 'value2'}.

allow_reuse
bool
valeur par défaut: True

Indique si l’étape doit réutiliser les résultats précédents lorsqu’elle est exécutée avec les mêmes paramètres.

La réutilisation est activée par défaut. Si le contenu de l’étape (scripts/dépendances) ainsi que les entrées et les paramètres restent inchangés, la sortie de l’exécution précédente de cette étape est réutilisée. Lors de la réutilisation de l’étape, au lieu de soumettre le travail au calcul, les résultats de l’exécution précédente sont immédiatement mis à la disposition des étapes suivantes. Si vous utilisez des jeux de données Azure Machine Learning comme entrées, la réutilisation est déterminée par le fait que la définition du jeu de données a changé ou pas, non par la modification éventuelle des données sous-jacentes.

version
str
valeur par défaut: None

Version à attribuer à l’étape.

hash_paths
list
valeur par défaut: None

DÉPRÉCIÉ. Liste de chemins à hacher au moment de la recherche des changements apportés au contenu de l’étape de pipeline.

Par défaut, tous les fichiers sous le paramètre path dans AutoMLConfig sont hachés, à l’exception des fichiers répertoriés dans. amlignore ou .gitignore sous path. Si aucun changement n’est détecté, le pipeline réutilise le contenu de l’étape à partir d’une exécution précédente.

enable_default_model_output
bool
valeur par défaut: True

Indique si le meilleur modèle sera ajouté en tant que sortie par défaut ou non. Cela peut être utilisé pour récupérer le meilleur modèle une fois l’exécution terminée à l’aide de la classe AutoMLStepRun. Notez que si la sortie de modèle par défaut n’est pas requise, il est recommandé d’affecter à ce paramètre la valeur False.

enable_default_metrics_output
bool
valeur par défaut: True

Indique si toutes les métriques d’exécution enfants seront ajoutées en tant que sortie par défaut ou non. Cela peut être utilisé pour récupérer les métriques d’exécution enfants une fois l’exécution terminée à l’aide de la classe AutoMLStepRun. Notez que si la sortie de métriques par défaut n’est pas requise, il est recommandé d’affecter à ce paramètre la valeur False.

name
str
Obligatoire

Nom de l'étape.

automl_config
AutoMLConfig
Obligatoire

AutoMLConfig qui définit la configuration de cette exécution AutoML.

inputs
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData]]
Obligatoire

Liste des liaisons de port d’entrée.

outputs
list[Union[PipelineData, OutputPortBinding]]
Obligatoire

Liste des liaisons de port de sortie.

script_repl_params
dict
Obligatoire

Paramètres facultatifs à remplacer dans un script, par exemple {'param1': 'value1', 'param2': 'value2'}.

script_repl_params
Obligatoire

Paramètres facultatifs à remplacer dans un script.

allow_reuse
bool
Obligatoire

Indique si l’étape doit réutiliser les résultats précédents lorsqu’elle est exécutée avec les mêmes paramètres.

La réutilisation est activée par défaut. Si le contenu de l’étape (scripts/dépendances) ainsi que les entrées et les paramètres restent inchangés, la sortie de l’exécution précédente de cette étape est réutilisée. Lors de la réutilisation de l’étape, au lieu de soumettre le travail au calcul, les résultats de l’exécution précédente sont immédiatement mis à la disposition des étapes suivantes. Si vous utilisez des jeux de données Azure Machine Learning comme entrées, la réutilisation est déterminée par le fait que la définition du jeu de données a changé ou pas, non par la modification éventuelle des données sous-jacentes.

version
str
Obligatoire

Version à attribuer à l’étape.

hash_paths
list
Obligatoire

DÉPRÉCIÉ. Liste de chemins à hacher au moment de la recherche des changements apportés au contenu de l’étape de pipeline.

Par défaut, tous les fichiers sous le paramètre path dans AutoMLConfig sont hachés, à l’exception des fichiers répertoriés dans. amlignore ou .gitignore sous path. Si aucun changement n’est détecté, le pipeline réutilise le contenu de l’étape à partir d’une exécution précédente.

enable_default_model_output
bool
Obligatoire

Indique si le meilleur modèle sera ajouté en tant que sortie par défaut ou non. Cela peut être utilisé pour récupérer le meilleur modèle une fois l’exécution terminée à l’aide de la classe AutoMLStepRun. Notez que si la sortie de modèle par défaut n’est pas requise, il est recommandé d’affecter à ce paramètre la valeur False.

enable_default_metrics_output
bool
Obligatoire

Indique si toutes les métriques d’exécution enfants seront ajoutées en tant que sortie par défaut ou non. Cela peut être utilisé pour récupérer les métriques d’exécution enfants une fois l’exécution terminée à l’aide de la classe AutoMLStepRun. Notez que si la sortie de métriques par défaut n’est pas requise, il est recommandé d’affecter à ce paramètre la valeur False.

Remarques

Avec la classe AutoMLStep, vous pouvez exécuter votre flux de travail de ML automatisé dans un pipeline Azure Machine Learning. Les pipelines offrent des avantages tels que la répétabilité, les exécutions sans assistance, le contrôle de version et le suivi, ainsi que la modularité de votre flux de travail de ML automatisé. Pour plus d’informations, consultez Présentation des pipelines Azure Machine Learning.

Lorsque votre flux de travail de ML automatisé se trouve dans un pipeline, vous pouvez planifier l’exécution du pipeline sur une planification basée sur la durée ou sur une planification basée sur les modifications. Les planifications basées sur la durée sont utiles pour les tâches de routine telles que la surveillance de la dérive des données, tandis que les planifications basées sur les modifications sont utiles pour les modifications irrégulières ou imprévisibles, par exemple lorsque les données changent. Par exemple, votre planification peut interroger un magasin d’objets BLOB dans lequel les données sont téléchargées, puis exécuter à nouveau le pipeline si les données ont changé, puis enregistrer une nouvelle version du modèle une fois l’exécution terminée. Pour plus d’informations, consultez Planifier des pipelines de Machine Learning et Déclencher une exécution d’un pipeline de Machine Learning à partir d’une application logique.

L’exemple suivant explique comment créer un AutoMLStep.


   automl_step = AutoMLStep(
       name='automl_module',
       automl_config=automl_config,
       outputs=[metrics_data, model_data],
       allow_reuse=True)

Un exemple complet est disponible sur https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb

L’exemple suivant explique comment utiliser l’objet AutoMLStep dans un Pipeline.


   from azureml.pipeline.core import Pipeline
   pipeline = Pipeline(
       description="pipeline_with_automlstep",
       workspace=ws,
       steps=[automl_step])

Un exemple complet est disponible sur https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb

L’exemple ci-dessus illustre une étape dans le pipeline. Toutefois, lors de l’utilisation de l’objet AutoMLStep dans un flux de travail de ML automatisé réel, vous aurez au moins une étape de pipeline qui effectue la préparation des données avant l’objet AutoMLStep et une autre étape de pipeline après l’enregistrement du modèle. Pour obtenir un exemple de ce type de flux de travail, consultez le notebook https://aka.ms/automl-retrain-pipeline.

Pour gérer, vérifier l’état et afficher les détails de l’exécution du pipeline, utilisez la classe AutoMLStepRun.

Pour plus d’informations sur le Machine Learning automatisé dans Azure, consultez l’article Qu’est-ce que le Machine Learning automatisé ?. Pour plus d’informations sur la configuration d’une expérience de ML automatisée sans utiliser de pipeline, consultez l’article Configurer l’expérience de ML automatisée dans Python.

Méthodes

create_node

Créez un nœud à partir de cette étape de ML automatisé et ajoutez-le au graphique donné.

Cette méthode n’est pas destinée à être utilisée directement. Lorsqu’un pipeline est instancié avec cette étape, Azure ML transmet automatiquement les paramètres requis via cette méthode afin que l’étape puisse être ajoutée à un graphique de pipeline qui représente le flux de travail.

create_node

Créez un nœud à partir de cette étape de ML automatisé et ajoutez-le au graphique donné.

Cette méthode n’est pas destinée à être utilisée directement. Lorsqu’un pipeline est instancié avec cette étape, Azure ML transmet automatiquement les paramètres requis via cette méthode afin que l’étape puisse être ajoutée à un graphique de pipeline qui représente le flux de travail.

create_node(graph, default_datastore, context)

Paramètres

graph
Graph
Obligatoire

Objet graphique auquel ajouter le nœud.

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Obligatoire

Magasin de données par défaut.

context
<xref:azureml.pipeline.core._GraphContext>
Obligatoire

Contexte du graphique.

Retours

Nœud créé.

Type de retour

Attributs

AUTOML_CONFIG_PARAM_NAME

AUTOML_CONFIG_PARAM_NAME = 'AutoMLConfig'

DEFAULT_METRIC_PREFIX

DEFAULT_METRIC_PREFIX = 'default_metrics_'

DEFAULT_MODEL_PREFIX

DEFAULT_MODEL_PREFIX = 'default_model_'