AutoMLStep Clase
Crea un paso de canalización de Azure Machine Learning que encapsula una ejecución de aprendizaje automático automatizado.
Para obtener un ejemplo del uso de AutoMLStep, consulte el cuaderno https://aka.ms/pl-automl.
Inicialice un AutoMLStep.
- Herencia
-
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
|
Nombre del paso. |
automl_config
Requerido
|
Objeto AutoMLConfig que define la configuración de esta ejecución de AutoML. |
inputs
|
Una lista de enlaces de puerto de entrada. Valor predeterminado: None
|
outputs
|
Una lista de enlaces de puerto de salida. Valor predeterminado: None
|
script_repl_params
|
Parámetros opcionales que se reemplazarán en un script, por ejemplo {"param1": "value1", "param2": "value2"}. Valor predeterminado: None
|
allow_reuse
|
Indica si el paso debe volver a usar los resultados anteriores cuando se ejecuta con la misma configuración o entrada. La reutilización está habilitada de manera 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 hacen disponibles inmediatamente para 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
|
Versión que se asignará al paso. Valor predeterminado: None
|
hash_paths
|
EN DESUSO. Una lista de rutas de acceso a hash al comprobar si hay cambios en el contenido de los pasos de la canalización. De manera predeterminada, se aplica un algoritmo hash a todos los archivos del parámetro Valor predeterminado: None
|
enable_default_model_output
|
Indica si se agregará o no el mejor modelo como salida predeterminada. Se puede usar para recuperar el mejor modelo una vez completada la ejecución mediante la clase AutoMLStepRun.
Tenga en cuenta que si no se requiere la salida predeterminada del modelo, se recomienda establecer este parámetro en Valor predeterminado: True
|
enable_default_metrics_output
|
Indica si todas las métricas de ejecución secundarias se agregarán o no como salida predeterminada. Se puede usar para recuperar las métricas de ejecución secundarias una vez completada la ejecución mediante la clase AutoMLStepRun.
Tenga en cuenta que si no se requiere la salida predeterminada de las métricas, se recomienda establecer este parámetro en Valor predeterminado: True
|
name
Requerido
|
Nombre del paso. |
automl_config
Requerido
|
AutoMLConfig que define la configuración de esta ejecución de AutoML. |
inputs
Requerido
|
Una lista de enlaces de puerto de entrada. |
outputs
Requerido
|
Una lista de enlaces de puerto de salida. |
script_repl_params
Requerido
|
Parámetros opcionales que se reemplazarán en un script, por ejemplo {"param1": "value1", "param2": "value2"}. |
script_repl_params
Requerido
|
Parámetros opcionales que se reemplazarán en un script. |
allow_reuse
Requerido
|
Indica si el paso debe volver a usar los resultados anteriores cuando se ejecuta con la misma configuración o entrada. La reutilización está habilitada de manera 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 hacen disponibles inmediatamente para 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
|
Versión que se asignará al paso. |
hash_paths
Requerido
|
EN DESUSO. Una lista de rutas de acceso a hash al comprobar si hay cambios en el contenido de los pasos de la canalización. De manera predeterminada, se aplica un algoritmo hash a todos los archivos del parámetro |
enable_default_model_output
Requerido
|
Indica si se agregará o no el mejor modelo como salida predeterminada. Se puede usar para recuperar el mejor modelo una vez completada la ejecución mediante la clase AutoMLStepRun.
Tenga en cuenta que si no se requiere la salida predeterminada del modelo, se recomienda establecer este parámetro en |
enable_default_metrics_output
Requerido
|
Indica si todas las métricas de ejecución secundarias se agregarán o no como salida predeterminada. Se puede usar para recuperar las métricas de ejecución secundarias una vez completada la ejecución mediante la clase AutoMLStepRun.
Tenga en cuenta que si no se requiere la salida predeterminada de las métricas, se recomienda establecer este parámetro en |
Comentarios
Con la clase AutoMLStep puede ejecutar el flujo de trabajo de ML automatizado en una canalización de Azure Machine Learning. Pipelines proporcionan ventajas como la repetibilidad, las ejecuciones desatendidas, el control de versiones y el seguimiento, y 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 ejecución de la canalización según una programación basada en el tiempo o en una programación basada en cambios. Las programaciones basadas en el 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, ejecutar la canalización de nuevo si los datos cambian y, después, 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 se crea 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 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 realiza la preparación de datos antes de AutoMLStep y otro paso de canalización después de registrar el modelo. Para obtener un ejemplo de este tipo de flujo de trabajo, vea 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 clase AutoMLStepRun.
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 más información sobre cómo configurar un experimento de ML automatizado sin usar una canalización, consulte el artículo Configuración de un experimento de ML automatizado en Python.
Métodos
create_node |
Cree un nodo a partir del paso de AutoML y agréguelo al grafo especificado. No se debe llamar a este método 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 ese paso se pueda agregar a un gráfico de canalización que represente el flujo de trabajo. |
create_node
Cree un nodo a partir del paso de AutoML y agréguelo al grafo especificado.
No se debe llamar a este método 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 ese paso se pueda agregar a un gráfico de canalización que represente el flujo de trabajo.
create_node(graph, default_datastore, context)
Parámetros
Nombre | Description |
---|---|
graph
Requerido
|
El objeto de grafo al que se agrega el nodo. |
default_datastore
Requerido
|
El almacén de datos predeterminado. |
context
Requerido
|
<xref:azureml.pipeline.core._GraphContext>
El contexto del grafo. |
Devoluciones
Tipo | Description |
---|---|
El 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_'