Habilitar o log em pipelines de designer do Azure Machine Learning

Neste artigo, será mostrado como adicionar o código de registro em log a pipelines de designer. Também será mostrado como exibir os logs usando o portal da Web do Estúdio do Azure Machine Learning.

Para obter mais informações sobre o log das métricas usando a experiência de criação do SDK, confira Monitorar as métricas e as execuções de experimento do Azure Machine Learning.

Habilitar registro em log com o Executar Script Python

Use o componente Executar Script do Python para habilitar o registro em pipelines do designer. Embora seja possível registrar em log qualquer valor usando esse fluxo de trabalho, ele é especialmente útil para registrar em log métricas do componente Avaliar Modelo para acompanhar o desempenho das execuções do modelo.

O exemplo a seguir mostra como registrar em log o erro quadrático médio de dois modelos treinados usando os componentes Avaliar Modelo e Executar Script do Python.

  1. Conecte um componente Executar Script do Python à saída do componente Avaliar Modelo.

    Connect Execute Python Script component to Evaluate Model component

  2. Cole o código a seguir no editor de código Executar Script Python para registrar em log o erro absoluto médio do modelo treinado. É possível usar um padrão semelhante para registrar qualquer outro valor no designer:

    APLICA-SE A:SDK azureml do 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,
    

Esse código usa o SDK do Python Azure Machine Learning para registrar valores. Ele usa Run.get_context () para obter o contexto da execução atual. Em seguida, registra valores ao contexto com o método run.parent.log(). Usa parent para registrar valores na execução do pipeline pai, em vez da execução do componente.

Para obter mais informações sobre como usar o SDK do Python para registrar valores em log, confira Habilitar o log nas execuções de treinamento do Azure Machine Learning.

Exibir logs

Depois que a execução do pipeline for concluída, será possível ver o Mean_Absolute_Error na página Experimentos.

  1. Navegue até a seção Trabalhos.

  2. Selecione o experimento.

  3. Selecione o trabalho na experiência que você deseja visualizar.

  4. Selecione Métricas.

    View job metrics in the studio

Próximas etapas

Neste artigo, foi mostrado como usar os logs no designer. Para as próximas etapas, consulte estes artigos relacionados: