Povolení protokolování v kanálech návrháře služby Azure Machine Learning

V tomto článku se dozvíte, jak přidat kód protokolování do kanálů návrháře. Dozvíte se také, jak tyto protokoly zobrazit pomocí webového portálu studio Azure Machine Learning.

Další informace o protokolování metrik pomocí prostředí pro vytváření sady SDK najdete v tématu Monitorování spuštění a metrik experimentu Azure Machine Learning.

Povolení protokolování pomocí příkazu Execute Python Script

Pomocí komponenty Execute Python Script povolte protokolování v kanálech návrháře. I když můžete pomocí tohoto pracovního postupu protokolovat libovolnou hodnotu, je zvlášť užitečné protokolovat metriky z komponenty Vyhodnotit model a sledovat výkon modelu napříč běhy.

Následující příklad ukazuje, jak protokolovat střední kvadratická chyba dvou trénovaných modelů pomocí komponent Vyhodnocení modelu a Spouštění skriptů Pythonu.

  1. Připojte komponentu Execute Python Script k výstupu komponenty Evaluate Model .

    Připojení komponenty Spustit skript Pythonu k vyhodnocení komponenty modelu

  2. Do editoru kódu execute Python Script vložte následující kód, který zapíše střední absolutní chybu pro trénovaný model. Podobný vzor můžete použít k protokolování jakékoli jiné hodnoty v návrháři:

    PLATÍ PRO: Python SDK azureml 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,
    

Tento kód používá sadu Azure Machine Learning Python SDK k protokolování hodnot. Používá Run.get_context() k získání kontextu aktuálního spuštění. Potom protokoluje hodnoty do tohoto kontextu pomocí metody run.parent.log(). Používá parent k protokolování hodnot ke spuštění nadřazeného kanálu, nikoli ke spuštění komponenty.

Další informace o tom, jak pomocí sady Python SDK protokolovat hodnoty, najdete v tématu Povolení protokolování v trénovacích spuštěních služby Azure Machine Learning.

Zobrazení protokolů

Po dokončení spuštění kanálu se na stránce Experimenty zobrazí Mean_Absolute_Error .

  1. Přejděte do části Úlohy .

  2. Vyberte experiment.

  3. Vyberte úlohu v experimentu, který chcete zobrazit.

  4. Vyberte Metriky.

    Zobrazení metrik úloh v sadě Studio

Další kroky

V tomto článku jste zjistili, jak používat protokoly v návrháři. Další kroky najdete v těchto souvisejících článcích: