Habilitación del registro en canalizaciones del diseñador de Azure Machine Learning

En este artículo, aprenderá a agregar código de registro a las canalizaciones del diseñador. También aprenderá a ver esos registros mediante el portal web de Azure Machine Learning Studio.

Para más información sobre el registro de métricas con la experiencia de creación del SDK, consulte Supervisión de métricas y ejecuciones de experimentos de Azure Machine Learning.

Habilitación del registro con Execute Python Script (Ejecutar script de Python)

Use el componente Execute Python Script (Ejecutar script de Python) para habilitar el registro en las canalizaciones del diseñador. Puede registrar cualquier valor mediante este flujo de trabajo, pero es especialmente útil registrar las métricas del componente Evaluate Model (Evaluar modelo) para realizar un seguimiento del rendimiento del modelo en diferentes ejecuciones.

En el ejemplo siguiente se muestra cómo registrar el error cuadrático medio de dos modelos entrenados mediante los componentes Evaluate Model (Evaluar modelo) y Execute Python Script (Ejecutar script de Python).

  1. Conecte un componente Execute Python Script (Ejecutar script de Python) a la salida del componente Evaluate Model (Evaluar modelo).

    Connect Execute Python Script component to Evaluate Model component

  2. Pegue el código siguiente en el editor de código de Execute Python Script (Ejecutar script de Python) para registrar el error absoluto medio del modelo entrenado. Puede usar un patrón similar para registrar cualquier otro valor en el diseñador:

    SE APLICA A:Azure ML del SDK de Python v1

    # dataframe1 contains the values from Evaluate Model
    def azureml_main(dataframe1=None, dataframe2=None):
        print(f'Input pandas.DataFrame #1: {dataframe1}')
    
        from azureml.core import Run
    
        run = Run.get_context()
    
        # Log the mean absolute error to the parent run to see the metric in the run details page.
        # Note: 'run.parent.log()' should not be called multiple times because of performance issues.
        # If repeated calls are necessary, cache 'run.parent' as a local variable and call 'log()' on that variable.
        parent_run = Run.get_context().parent
    
        # Log left output port result of Evaluate Model. This also works when evaluate only 1 model.
        parent_run.log(name='Mean_Absolute_Error (left port)', value=dataframe1['Mean_Absolute_Error'][0])
        # Log right output port result of Evaluate Model. The following line should be deleted if you only connect one Score component to the` left port of Evaluate Model component.
        parent_run.log(name='Mean_Absolute_Error (right port)', value=dataframe1['Mean_Absolute_Error'][1])
    
        return dataframe1,
    

Este código usa el SDK de Azure Machine Learning para Python para registrar los valores. Se emplea Run.get_context() para obtener el contexto de la ejecución actual. Después, se registran los valores en ese contexto con el método run.parent.log(). Se usa parent para registrar los valores en la ejecución de la canalización primaria en lugar de en la ejecución del componente.

Para más información sobre cómo usar el SDK de Python para registrar valores, consulte Habilitación del registro en ejecuciones de entrenamiento de Azure Machine Learning.

Ver registros

Una vez completada la ejecución de la canalización, puede ver Mean_Absolute_Error en la página de experimentos.

  1. Vaya a la sección Trabajos.

  2. Seleccione el tipo de experimento.

  3. Seleccione el trabajo de su experimento que desea ver.

  4. Seleccione Métricas.

    View job metrics in the studio

Pasos siguientes

En este artículo, aprendió a usar registros en el diseñador. Para conocer los pasos siguientes, consulte estos artículos relacionados: