Udostępnij za pośrednictwem


core Pakiet

Zawiera podstawowe funkcje potoków usługi Azure Machine Learning, które są konfigurowalnymi przepływami pracy uczenia maszynowego.

Potoki usługi Azure Machine Learning umożliwiają tworzenie przepływów pracy uczenia maszynowego wielokrotnego użytku, których można użyć jako szablonu dla scenariuszy uczenia maszynowego. Ten pakiet zawiera podstawowe funkcje pracy z potokami usługi Azure ML i jest zwykle używany wraz z klasami w pakiecie steps .

Potok uczenia maszynowego jest reprezentowany przez kolekcję PipelineStep obiektów, które mogą być sekwencjonowane i zrównoleglizowane lub tworzone z jawnymi zależnościami między krokami. Kroki potoku służą do definiowania obiektu reprezentującego Pipeline przepływ pracy do wykonania. Potoki można tworzyć i pracować z potokami w środowisku Jupyter Notebook lub innym środowisku IDE z zainstalowanym zestawem AZURE ML SDK.

Potoki usługi Azure ML umożliwiają skoncentrowanie się na uczeniu maszynowym, a nie na infrastrukturze. Aby rozpocząć tworzenie potoku, zobacz https://aka.ms/pl-first-pipeline.

Aby uzyskać więcej informacji o zaletach potoku uczenia maszynowego i sposobie jej związanymi z innymi potokami oferowanymi przez platformę Azure, zobacz Co to są potoki uczenia maszynowego w usłudze Azure Machine Learning?

Moduły

builder

Definiuje klasy do tworzenia potoku usługi Azure Machine Learning.

Graf potoku składa się z kroków potoku (), opcjonalnych danych potoku (PipelineStepPipelineData) utworzonych lub użytych w każdym kroku oraz opcjonalnej sekwencji wykonywania kroku (StepSequence).

graph

Definiuje klasy do konstruowania grafów potoków usługi Azure Machine Learning.

Wykresy potoku usługi Azure ML są tworzone dla Pipeline obiektów, gdy używasz PipelineStep (i klas pochodnych), PipelineDatai PipelineData obiektów. W typowych przypadkach użycia nie trzeba używać bezpośrednio klas w tym module.

Wykres przebiegu potoku składa się z węzłów modułu, które reprezentują podstawowe jednostki, takie jak źródło danych lub krok. Węzły mogą mieć porty wejściowe i porty wyjściowe oraz skojarzone parametry. Krawędzie definiują relacje między dwoma portami węzła na grafie.

module

Zawiera klasy do tworzenia jednostek obliczeniowych wielokrotnego użytku i zarządzania nimi w potoku usługi Azure Machine Learning.

Moduły umożliwiają tworzenie jednostek obliczeniowych w Pipelineobiekcie , które mogą mieć dane wejściowe, wyjściowe i polegać na parametrach i konfiguracji środowiska do działania. Moduł może być wersjonowany i używany w różnych potokach usługi Azure Machine Learning w przeciwieństwie do PipelineStep (i klas pochodnych), które są używane w jednym potoku.

Moduły są przeznaczone do ponownego użycia w kilku potokach i mogą ewoluować w celu dostosowania określonej logiki obliczeniowej do różnych przypadków użycia. Krok w potoku może być używany w szybkich iteracji w celu ulepszenia algorytmu, a po osiągnięciu celu algorytm jest zwykle publikowany jako moduł umożliwiający ponowne użycie.

module_step_base

Zawiera funkcje dodawania kroku do potoku przy użyciu wersji elementu Module.

pipeline

Definiuje klasę do tworzenia przepływów pracy usługi Azure Machine Learning wielokrotnego użytku.

pipeline_draft

Definiuje klasy do zarządzania potokami modyfikowalnymi.

pipeline_endpoint

Definiuje klasy do zarządzania potokami, w tym przechowywanie wersji i punkty końcowe.

pipeline_output_dataset

Zawiera funkcje podwyższania poziomu danych pośrednich do zestawu danych usługi Azure Machine Learning.

Dane pośrednie (wyjściowe) w potoku domyślnie nie staną się zestawem danych usługi Azure Machine Learning. Aby podwyższyć poziom danych pośrednich do zestawu danych usługi Azure Machine Learning, wywołaj as_dataset metodę PipelineOutputFileDataset w klasie PipelineData, aby zwrócić obiekt. Z obiektu PipelineOutputFileDataset można utworzyć PipelineOutputTabularDataset obiekt.

run

Definiuje klasy przesłanych potoków, w tym klasy sprawdzania stanu i pobierania szczegółów przebiegu.

schedule

Definiuje klasy planowania przesyłania potoków usługi Azure Machine Learning.

Klasy

InputPortBinding

Definiuje powiązanie ze źródła do danych wejściowych kroku potoku.

Element InputPortBinding może służyć jako dane wejściowe do kroku. Źródłem może być element PipelineData, , PortDataReferenceDataReference, PipelineDatasetlub OutputPortBinding.

InputPortBinding przydaje się do określenia nazwy danych wejściowych kroku, jeśli powinna być inna niż nazwa obiektu powiązanego (tj. aby uniknąć zduplikowanych nazw wejściowych/wyjściowych lub ponieważ skrypt kroku wymaga danych wejściowych, aby mieć określoną nazwę). Można go również użyć do określenia bind_mode dla PythonScriptStep danych wejściowych.

Zainicjuj inputPortBinding.

Module

Reprezentuje jednostkę obliczeniową używaną w potoku usługi Azure Machine Learning.

Moduł to kolekcja plików, które będą uruchamiane na docelowym obiekcie obliczeniowym i opis interfejsu. Kolekcja plików może być skryptem, plikami binarnymi lub innymi plikami wymaganymi do wykonania na docelowym obiekcie obliczeniowym. Interfejs modułu opisuje dane wejściowe, dane wyjściowe i definicje parametrów. Nie wiąże ich z określonymi wartościami ani danymi. Moduł ma skojarzona migawkę, która przechwytuje kolekcję plików zdefiniowanych dla modułu.

Inicjowanie modułu.

ModuleVersion

Reprezentuje rzeczywistą jednostkę obliczeniową w obrębie obiektu Module.

Nie należy używać tej klasy bezpośrednio. Zamiast tego należy użyć jednej z metod publikowania Module klasy .

Zainicjuj moduleVersion.

ModuleVersionDescriptor

Definiuje wersję i identyfikator elementu ModuleVersion.

Zainicjuj modułVersionDescriptor.

OutputPortBinding

Definiuje nazwane dane wyjściowe kroku potoku.

Parametr OutputPortBinding może służyć do określenia typu danych, które będą generowane przez krok i sposobu tworzenia danych. Może służyć InputPortBinding do określenia, że dane wyjściowe kroku są wymaganymi danymi wejściowymi innego kroku.

Zainicjuj wartość OutputPortBinding.

Pipeline

Reprezentuje kolekcję kroków, które można wykonać jako przepływ pracy usługi Azure Machine Learning wielokrotnego użytku.

Użyj potoku, aby utworzyć przepływy pracy, które łączą różne fazy uczenia maszynowego i zarządzaj nimi. Każda faza uczenia maszynowego, taka jak przygotowywanie danych i trenowanie modelu, może składać się z co najmniej jednego kroku w potoku.

Aby zapoznać się z omówieniem przyczyn i czasu używania potoków, zobacz https://aka.ms/pl-concept.

Aby zapoznać się z omówieniem tworzenia potoku, zobacz https://aka.ms/pl-first-pipeline.

Inicjowanie potoku.

PipelineData

Reprezentuje dane pośrednie w potoku usługi Azure Machine Learning.

Dane używane w potoku mogą być tworzone przez jeden krok i używane w innym kroku, dostarczając obiekt PipelineData jako dane wyjściowe jednego kroku i dane wejściowe co najmniej jednego kolejnego kroku.

Pamiętaj , że jeśli używasz danych potoku, upewnij się, że używany katalog istniał.

Przykład w języku Python, aby upewnić się, że katalog istniał, załóżmy, że masz port wyjściowy o nazwie output_folder w jednym kroku potoku, chcesz zapisać dane do ścieżki względnej w tym folderze.


   import os
   os.makedirs(args.output_folder, exist_ok=True)
   f = open(args.output_folder + '/relative_path/file_name', 'w+')

PipelineData używa elementu DataReference bazowego, który nie jest już zalecanym podejściem do uzyskiwania dostępu do danych i dostarczania. Zamiast tego użyj polecenia OutputFileDatasetConfig . Przykład można znaleźć tutaj: Potok przy użyciu elementu OutputFileDatasetConfig.

Inicjowanie elementu PipelineData.

PipelineDataset

Działa jako adapter dla zestawu danych i potoku.

Uwaga

Ta klasa jest przestarzała. Dowiedz się, jak używać zestawu danych z potokiem, zobacz https://aka.ms/pipeline-with-dataset.

Jest to klasa wewnętrzna. Nie należy tworzyć tej klasy bezpośrednio, ale zamiast wywoływać metody wystąpienia as_* w klasach Dataset lub OutputDatasetConfig.

Działanie jako adapter dla zestawu danych i potoku.

Jest to klasa wewnętrzna. Nie należy tworzyć tej klasy bezpośrednio, ale zamiast wywoływać metody wystąpienia as_* w klasach Dataset lub OutputDatasetConfig.

PipelineDraft

Reprezentuje modyfikowalny potok, który może służyć do przesyłania przebiegów i tworzenia opublikowanych potoków.

Użyj narzędzia PipelineDrafts, aby iterować potoki. Potoki potoków można tworzyć od podstaw, innego potoku PipelineDraft lub istniejących potoków: Pipeline, PublishedPipelinelub PipelineRun.

Zainicjuj potokDraft.

PipelineEndpoint

Pipeline Reprezentuje przepływ pracy, który można wyzwolić z unikatowego adresu URL punktu końcowego.

Punkty końcowe potoku mogą służyć do tworzenia nowych wersji elementu PublishedPipeline przy zachowaniu tego samego punktu końcowego. Punkty potoku są unikatowo nazwane w obszarze roboczym.

Za pomocą atrybutu punktu końcowego obiektu PipelineEndpoint można wyzwalać nowe uruchomienia potoków z aplikacji zewnętrznych za pomocą wywołań REST. Aby uzyskać informacje o sposobie uwierzytelniania podczas wywoływania punktów końcowych REST, zobacz https://aka.ms/pl-restep-auth.

Aby uzyskać więcej informacji na temat tworzenia i uruchamiania potoków uczenia maszynowego, zobacz https://aka.ms/pl-first-pipeline.

Inicjowanie potokuEndpoint.

PipelineParameter

Definiuje parametr w wykonaniu potoku.

Użyj parametrów PipelineParameters, aby utworzyć uniwersalne potoki, które można przesłać ponownie później przy użyciu różnych wartości parametrów.

Inicjowanie parametrów potoku.

PipelineRun

Reprezentuje przebieg elementu Pipeline.

Ta klasa może służyć do zarządzania, sprawdzania stanu i pobierania szczegółów przebiegu po przesłaniu uruchomienia potoku. Służy get_steps do pobierania StepRun obiektów utworzonych przez uruchomienie potoku. Inne zastosowania obejmują pobieranie Graph obiektu skojarzonego z uruchomieniem potoku, pobieranie stanu uruchomienia potoku i oczekiwanie na ukończenie przebiegu.

Inicjowanie uruchomienia potoku.

PipelineStep

Reprezentuje krok wykonywania w potoku usługi Azure Machine Learning.

Potoki są konstruowane z wielu kroków potoku, które są odrębnymi jednostkami obliczeniowymi w potoku. Każdy krok może działać niezależnie i korzystać z izolowanych zasobów obliczeniowych. Każdy krok zazwyczaj ma własne nazwane dane wejściowe, dane wyjściowe i parametry.

Klasa PipelineStep to klasa bazowa, z której inne wbudowane klasy kroków przeznaczone dla typowych scenariuszy dziedziczą, takie jak PythonScriptStep, DataTransferStepi HyperDriveStep.

Aby zapoznać się z omówieniem relacji potoków i potoków, zobacz Co to są potoki uczenia maszynowego.

Inicjowanie potokuKrok.

PortDataReference

Modeluje dane skojarzone z danymi wyjściowymi ukończonego krokuRun.

Obiekt PortDataReference może służyć do pobierania danych wyjściowych utworzonych przez obiekt StepRun. Można go również użyć jako danych wejściowych kroków w przyszłym potoku.

Zainicjuj portDataReference.

PublishedPipeline

Reprezentuje potok, który ma zostać przesłany bez kodu języka Python, który go skonstruował.

Ponadto element PublishedPipeline może służyć do ponownego Pipeline wprowadzania wartości PipelineParameter i danych wejściowych.

Zainicjuj opublikowanąpipeline.

:p aram endpoint Adres URL punktu końcowego REST do przesyłania przebiegów potoku dla tego potoku. :type endpoint: str :p aram total_run_steps: liczba kroków w tym potoku :type total_run_steps: int :p aram workspace: obszar roboczy opublikowanego potoku. :type workspace: azureml.core.Workspace :p aram continue_on_step_failure: czy kontynuować wykonywanie innych kroków w potokuRun

jeśli krok zakończy się niepowodzeniem, wartość domyślna to false.

Schedule

Definiuje harmonogram przesyłania potoku.

Po opublikowaniu potoku harmonogram może służyć do przesyłania potoku w określonym interwale lub po wykryciu zmian w lokalizacji magazynu obiektów blob.

Zainicjuj harmonogram.

ScheduleRecurrence

Definiuje częstotliwość, interwał i czas rozpoczęcia potoku Schedule.

Funkcja ScheduleRecurrence umożliwia również określenie strefy czasowej oraz godzin lub minut lub dni tygodnia dla cyklu.

Inicjowanie cyklu harmonogramu.

Umożliwia również określenie strefy czasowej oraz godzin lub minut lub dni tygodnia dla cyklu.

StepRun

Uruchomienie kroku w elemecie Pipeline.

Ta klasa może służyć do zarządzania, sprawdzania stanu i pobierania szczegółów przebiegu po przesłaniu nadrzędnego uruchomienia potoku i przesłaniu potoku przebiegu kroku.

Inicjowanie krokuRun.

StepRunOutput

Reprezentuje dane wyjściowe utworzone przez element StepRun w potoku.

Funkcja StepRunOutput może służyć do uzyskiwania dostępu do utworzonego PortDataReference kroku.

Zainicjuj wartość StepRunOutput.

StepSequence

Reprezentuje listę kroków w kolejności Pipeline , w której mają zostać wykonane.

Użyj instrukcji StepSequence podczas inicjowania potoku, aby utworzyć przepływ pracy zawierający kroki do uruchomienia w określonej kolejności.

Zainicjuj krokSequence.

TrainingOutput

Definiuje wyspecjalizowane dane wyjściowe niektórych elementów PipelineSteps do użycia w potoku.

Funkcja TrainingOutput umożliwia udostępnienie metryki lub modelu zautomatyzowanego uczenia maszynowego jako danych wyjściowych kroków, które mają być używane przez inny krok w potoku usługi Azure Machine Learning. Może być używany z programem AutoMLStep lub HyperDriveStep.

Inicjowanie funkcji TrainingOutput.

param model_file: określony plik modelu, który ma zostać uwzględniony w danych wyjściowych. Tylko dla.HyperDriveStep

Wyliczenia

TimeZone

Wylicza prawidłowe strefy czasowe dla cyklu Schedule.