Compartir a través de


AutoMLStep Clase

Crea un paso de canalización de Azure ML que encapsula una ejecución de ML automatizada.

Para obtener un ejemplo de uso de AutoMLStep, consulte el cuaderno https://aka.ms/pl-automl.

Inicialice un AutoMLStep.

Constructor

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)

Parámetros

Nombre Description
name
Requerido
str

Nombre del paso.

automl_config
Requerido

Objeto AutoMLConfig que define la configuración de esta ejecución de AutoML.

inputs

Lista de enlaces de puerto de entrada.

Valor predeterminado: None
outputs

Lista de enlaces de puerto de salida.

Valor predeterminado: None
script_repl_params

Parámetros opcionales que se van a reemplazar en un script, por ejemplo {'param1': 'value1', 'param2': 'value2'}.

Valor predeterminado: None
allow_reuse

Indica si el paso debe reutilizar los resultados anteriores al volver a ejecutarse con la misma configuración.

La reutilización está habilitada de forma predeterminada. Si el contenido del paso (scripts o dependencias), así como las entradas y los parámetros permanecen sin cambios, se reutiliza la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de enviar el trabajo al proceso, los resultados de la ejecución anterior se pone inmediatamente a disposición de los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado.

Valor predeterminado: True
version
str

Una versión que se va a asignar al paso.

Valor predeterminado: None
hash_paths

OBSOLESCENTE. Lista de rutas de acceso a hash al comprobar si hay cambios en el contenido del paso de canalización.

De forma predeterminada, todos los archivos del path parámetro de AutoMLConfig se aplica un hash, excepto los archivos enumerados en .amlignore o .gitignore en path. Si no se detectan cambios, la canalización reutiliza el contenido del paso de una ejecución anterior.

Valor predeterminado: None
enable_default_model_output

Indica si el mejor modelo se agregará o no como salida predeterminada. Esto se puede usar para recuperar el mejor modelo después de que la ejecución se haya completado mediante la AutoMLStepRun clase . Tenga en cuenta que, si la salida predeterminada del modelo no es necesaria, se recomienda establecer este parámetro Falseen .

Valor predeterminado: True
enable_default_metrics_output

Indica si todas las métricas de ejecución secundarias se agregarán como salida predeterminada. Esto se puede usar para recuperar las métricas de ejecución secundarias después de que la ejecución se haya completado mediante la AutoMLStepRun clase . Tenga en cuenta que, si la salida de métricas predeterminada no es necesaria, se recomienda establecer este parámetro Falseen .

Valor predeterminado: True
name
Requerido
str

Nombre del paso.

automl_config
Requerido

AutoMLConfig que define la configuración de esta ejecución de AutoML.

inputs
Requerido

Lista de enlaces de puerto de entrada.

outputs
Requerido

Lista de enlaces de puerto de salida.

script_repl_params
Requerido

Parámetros opcionales que se van a reemplazar en un script, por ejemplo {'param1': 'value1', 'param2': 'value2'}.

script_repl_params
Requerido

Parámetros opcionales que se van a reemplazar en un script.

allow_reuse
Requerido

Indica si el paso debe reutilizar los resultados anteriores al volver a ejecutarse con la misma configuración.

La reutilización está habilitada de forma predeterminada. Si el contenido del paso (scripts o dependencias), así como las entradas y los parámetros permanecen sin cambios, se reutiliza la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de enviar el trabajo al proceso, los resultados de la ejecución anterior se pone inmediatamente a disposición de los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado.

version
Requerido
str

Una versión que se va a asignar al paso.

hash_paths
Requerido

OBSOLESCENTE. Lista de rutas de acceso a hash al comprobar si hay cambios en el contenido del paso de canalización.

De forma predeterminada, todos los archivos del path parámetro de AutoMLConfig se aplica un hash, excepto los archivos enumerados en .amlignore o .gitignore en path. Si no se detectan cambios, la canalización reutiliza el contenido del paso de una ejecución anterior.

enable_default_model_output
Requerido

Indica si el mejor modelo se agregará o no como salida predeterminada. Esto se puede usar para recuperar el mejor modelo después de que la ejecución se haya completado mediante la AutoMLStepRun clase . Tenga en cuenta que, si la salida predeterminada del modelo no es necesaria, se recomienda establecer este parámetro Falseen .

enable_default_metrics_output
Requerido

Indica si todas las métricas de ejecución secundarias se agregarán como salida predeterminada. Esto se puede usar para recuperar las métricas de ejecución secundarias después de que la ejecución se haya completado mediante la AutoMLStepRun clase . Tenga en cuenta que, si la salida de métricas predeterminada no es necesaria, se recomienda establecer este parámetro Falseen .

Comentarios

Con la clase AutoMLStep, puede ejecutar el flujo de trabajo de ML automatizado en una canalización de Azure Machine Learning. Las canalizaciones proporcionan ventajas como la repetibilidad, las ejecuciones desatendidas, el control de versiones y el seguimiento, y la modularidad para el flujo de trabajo de ML automatizado. Para más información, consulte ¿Qué son las canalizaciones de Azure Machine Learning?.

Cuando el flujo de trabajo de ML automatizado está en una canalización, puede programar la canalización para que se ejecute en una programación basada en el tiempo o en una programación basada en cambios. Las programaciones basadas en tiempo son útiles para tareas rutinarias, como la supervisión del desfase de datos, mientras que las programaciones basadas en cambios son útiles para cambios irregulares o impredecibles, como cuando cambian los datos. Por ejemplo, la programación podría sondear un almacén de blobs donde se cargan los datos y, a continuación, volver a ejecutar la canalización si los datos cambian y, a continuación, registrar una nueva versión del modelo una vez completada la ejecución. Para más información, consulte Programación de canalizaciones de aprendizaje automático y Desencadenamiento de una ejecución de una canalización de Machine Learning desde una aplicación lógica.

En el ejemplo siguiente se muestra cómo crear un AutoMLStep.


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

El ejemplo completo está disponible en 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

En el ejemplo siguiente se muestra cómo usar el objeto AutoMLStep en un Pipeline.


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

El ejemplo completo está disponible en 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

En el ejemplo anterior se muestra un paso en la canalización. Sin embargo, al usar AutoMLStep en un flujo de trabajo de ML automatizado del mundo real, tendrá al menos un paso de canalización que realice la preparación de datos antes de AutoMLStep y otro paso de canalización después de que registre el modelo. Para obtener un ejemplo de este tipo de flujo de trabajo, consulte el cuaderno https://aka.ms/automl-retrain-pipeline.

Para administrar, comprobar el estado y obtener los detalles de ejecución de la ejecución de la canalización, use la AutoMLStepRun clase .

Para más información sobre el aprendizaje automático automatizado en Azure, consulte el artículo ¿Qué es el aprendizaje automático automatizado?. Para obtener más información sobre cómo configurar un experimento de ML automatizado sin usar una canalización, consulte el artículo Configuración del experimento de ML automatizado en Python.

Métodos

create_node

Cree un nodo a partir de este paso de AutoML y agréguelo al grafo especificado.

Este método no está pensado para usarse directamente. Cuando se crea una instancia de una canalización con este paso, Azure ML pasa automáticamente los parámetros necesarios a través de este método para que el paso se pueda agregar a un grafo de canalización que represente el flujo de trabajo.

create_node

Cree un nodo a partir de este paso de AutoML y agréguelo al grafo especificado.

Este método no está pensado para usarse directamente. Cuando se crea una instancia de una canalización con este paso, Azure ML pasa automáticamente los parámetros necesarios a través de este método para que el paso se pueda agregar a un grafo de canalización que represente el flujo de trabajo.

create_node(graph, default_datastore, context)

Parámetros

Nombre Description
graph
Requerido

Objeto de grafo al que se va a agregar el nodo.

default_datastore
Requerido

Almacén de datos predeterminado.

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

Contexto del grafo.

Devoluciones

Tipo Description

Nodo creado.

Atributos

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_'