AutoMLStep Klasa

Tworzy krok potoku usługi Azure ML, który hermetyzuje zautomatyzowany przebieg uczenia maszynowego.

Przykład użycia narzędzia AutoMLStep można znaleźć w notesie https://aka.ms/pl-automl.

Zainicjuj element AutoMLStep.

Dziedziczenie
AutoMLStep

Konstruktor

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)

Parametry

name
str
Wymagane

Nazwa kroku.

automl_config
AutoMLConfig
Wymagane

Obiekt AutoMLConfig, który definiuje konfigurację dla tego przebiegu rozwiązania AutoML.

inputs
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData]]
wartość domyślna: None

Lista powiązań portów wejściowych.

outputs
list[Union[PipelineData, OutputPortBinding]]
wartość domyślna: None

Lista powiązań portów wyjściowych.

script_repl_params
dict
wartość domyślna: None

Opcjonalne parametry, które mają zostać zastąpione w skrycie, na przykład {'param1': 'value1', 'param2': 'value2'}.

allow_reuse
bool
wartość domyślna: True

Wskazuje, czy krok powinien ponownie używać poprzednich wyników po ponownym uruchomieniu z tymi samymi ustawieniami.

Ponowne użycie jest domyślnie włączone. Jeśli zawartość kroku (skrypty/zależności) oraz dane wejściowe i parametry pozostają niezmienione, dane wyjściowe z poprzedniego uruchomienia tego kroku są ponownie używane. Podczas ponownego wykonywania kroku zamiast przesyłania zadania do obliczeń wyniki z poprzedniego przebiegu są natychmiast udostępniane wszystkim kolejnym krokom. Jeśli używasz zestawów danych usługi Azure Machine Learning jako danych wejściowych, ponowne użycie zależy od tego, czy definicja zestawu danych uległa zmianie, a nie przez to, czy dane bazowe uległy zmianie.

version
str
wartość domyślna: None

Wersja, która ma zostać przypisana do kroku.

hash_paths
list
wartość domyślna: None

PRZESTARZAŁE. Lista ścieżek do skrótu podczas sprawdzania zmian zawartości kroku potoku.

Domyślnie wszystkie pliki w parametrze path w AutoMLConfig pliku są skrótami z wyjątkiem plików wymienionych w pliku .amlignore lub .gitignore w obszarze path. Jeśli nie zostaną wykryte żadne zmiany, potok ponownie użyje zawartości kroku z poprzedniego uruchomienia.

enable_default_model_output
bool
wartość domyślna: True

Wskazuje, czy najlepszy model zostanie dodany jako domyślne dane wyjściowe. Może to służyć do pobierania najlepszego modelu po zakończeniu AutoMLStepRun przebiegu przy użyciu klasy . Należy pamiętać, że jeśli domyślne dane wyjściowe modelu nie są wymagane, zaleca się ustawienie tego parametru na Falsewartość .

enable_default_metrics_output
bool
wartość domyślna: True

Wskazuje, czy wszystkie metryki przebiegu podrzędnego zostaną dodane jako domyślne dane wyjściowe. Może to służyć do pobierania metryk przebiegu podrzędnego po zakończeniu AutoMLStepRun przebiegu przy użyciu klasy . Należy pamiętać, że jeśli domyślne dane wyjściowe metryk nie są wymagane, zaleca się ustawienie tego parametru na Falsewartość .

name
str
Wymagane

Nazwa kroku.

automl_config
AutoMLConfig
Wymagane

AutoMLConfig definiujący konfigurację dla tego przebiegu rozwiązania AutoML.

inputs
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData]]
Wymagane

Lista powiązań portów wejściowych.

outputs
list[Union[PipelineData, OutputPortBinding]]
Wymagane

Lista powiązań portów wyjściowych.

script_repl_params
dict
Wymagane

Opcjonalne parametry, które mają zostać zastąpione w skrycie, na przykład {'param1': 'value1', 'param2': 'value2'}.

script_repl_params
Wymagane

Opcjonalne parametry, które mają zostać zastąpione w skrycie.

allow_reuse
bool
Wymagane

Wskazuje, czy krok powinien ponownie używać poprzednich wyników po ponownym uruchomieniu z tymi samymi ustawieniami.

Ponowne użycie jest domyślnie włączone. Jeśli zawartość kroku (skrypty/zależności) oraz dane wejściowe i parametry pozostają niezmienione, dane wyjściowe z poprzedniego uruchomienia tego kroku są ponownie używane. Podczas ponownego wykonywania kroku zamiast przesyłania zadania do obliczeń wyniki z poprzedniego przebiegu są natychmiast udostępniane wszystkim kolejnym krokom. Jeśli używasz zestawów danych usługi Azure Machine Learning jako danych wejściowych, ponowne użycie zależy od tego, czy definicja zestawu danych uległa zmianie, a nie przez to, czy dane bazowe uległy zmianie.

version
str
Wymagane

Wersja, która ma zostać przypisana do kroku.

hash_paths
list
Wymagane

PRZESTARZAŁE. Lista ścieżek do skrótu podczas sprawdzania zmian zawartości kroku potoku.

Domyślnie wszystkie pliki w parametrze path w AutoMLConfig pliku są skrótami z wyjątkiem plików wymienionych w pliku .amlignore lub .gitignore w obszarze path. Jeśli nie zostaną wykryte żadne zmiany, potok ponownie użyje zawartości kroku z poprzedniego uruchomienia.

enable_default_model_output
bool
Wymagane

Wskazuje, czy najlepszy model zostanie dodany jako domyślne dane wyjściowe. Może to służyć do pobierania najlepszego modelu po zakończeniu AutoMLStepRun przebiegu przy użyciu klasy . Należy pamiętać, że jeśli domyślne dane wyjściowe modelu nie są wymagane, zaleca się ustawienie tego parametru na Falsewartość .

enable_default_metrics_output
bool
Wymagane

Wskazuje, czy wszystkie metryki przebiegu podrzędnego zostaną dodane jako domyślne dane wyjściowe. Może to służyć do pobierania metryk przebiegu podrzędnego po zakończeniu AutoMLStepRun przebiegu przy użyciu klasy . Należy pamiętać, że jeśli domyślne dane wyjściowe metryk nie są wymagane, zaleca się ustawienie tego parametru na Falsewartość .

Uwagi

Za pomocą klasy AutoMLStep możesz uruchomić zautomatyzowany przepływ pracy uczenia maszynowego w potoku usługi Azure Machine Learning. Potoki zapewniają korzyści, takie jak powtarzalność, nienadzorowane przebiegi, przechowywanie wersji i śledzenie oraz modułowość zautomatyzowanego przepływu pracy uczenia maszynowego. Aby uzyskać więcej informacji, zobacz Co to są potoki usługi Azure Machine Learning?.

Gdy zautomatyzowany przepływ pracy uczenia maszynowego znajduje się w potoku, możesz zaplanować uruchamianie potoku zgodnie z harmonogramem na podstawie czasu lub zgodnie z harmonogramem opartym na zmianach. Harmonogramy oparte na czasie są przydatne w przypadku rutynowych zadań, takich jak monitorowanie dryfu danych, podczas gdy harmonogramy oparte na zmianach są przydatne w przypadku nieregularnych lub nieprzewidywalnych zmian, takich jak zmiany danych. Na przykład harmonogram może sondować magazyn obiektów blob, w którym są przekazywane dane, a następnie ponownie uruchomić potok, jeśli dane się zmienią, a następnie zarejestrować nową wersję modelu po zakończeniu przebiegu. Aby uzyskać więcej informacji, zobacz Planowanie potoków uczenia maszynowego i Wyzwalanie uruchomienia potoku uczenia maszynowego z poziomu aplikacji logiki.

W poniższym przykładzie pokazano, jak utworzyć element AutoMLStep.


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

Pełna próbka jest dostępna w witrynie 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

W poniższym przykładzie pokazano, jak używać obiektu AutoMLStep w obiekcie Pipeline.


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

Pełna próbka jest dostępna w witrynie 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

W powyższym przykładzie pokazano jeden krok w potoku. Jednak w przypadku korzystania z rozwiązania AutoMLStep w rzeczywistym zautomatyzowanym przepływie pracy uczenia maszynowego będziesz mieć co najmniej jeden krok potoku, który wykonuje przygotowywanie danych przed krokiem AutoMLStep, a drugi krok potoku po zarejestrowaniu modelu. Na przykład tego typu przepływu pracy zobacz notes https://aka.ms/automl-retrain-pipeline.

Aby zarządzać, sprawdzać stan i pobierać szczegóły przebiegu z uruchomienia potoku, użyj AutoMLStepRun klasy .

Aby uzyskać więcej informacji na temat zautomatyzowanego uczenia maszynowego na platformie Azure, zobacz artykuł Co to jest zautomatyzowane uczenie maszynowe?. Aby uzyskać więcej informacji na temat konfigurowania eksperymentu zautomatyzowanego uczenia maszynowego bez użycia potoku, zobacz artykuł Konfigurowanie eksperymentu zautomatyzowanego uczenia maszynowego w języku Python.

Metody

create_node

Utwórz węzeł na podstawie tego kroku rozwiązania AutoML i dodaj go do danego grafu.

Ta metoda nie jest przeznaczona do bezpośredniego użycia. Po utworzeniu wystąpienia potoku w tym kroku usługa Azure ML automatycznie przekazuje wymagane parametry za pośrednictwem tej metody, aby można było dodać krok do grafu potoku reprezentującego przepływ pracy.

create_node

Utwórz węzeł na podstawie tego kroku rozwiązania AutoML i dodaj go do danego grafu.

Ta metoda nie jest przeznaczona do bezpośredniego użycia. Po utworzeniu wystąpienia potoku w tym kroku usługa Azure ML automatycznie przekazuje wymagane parametry za pośrednictwem tej metody, aby można było dodać krok do grafu potoku reprezentującego przepływ pracy.

create_node(graph, default_datastore, context)

Parametry

graph
Graph
Wymagane

Obiekt grafu, do który ma zostać dodany węzeł.

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Wymagane

Domyślny magazyn danych.

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

Kontekst grafu.

Zwraca

Utworzony węzeł.

Typ zwracany

Atrybuty

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