Experiment Klasa

Reprezentuje główny punkt wejścia do tworzenia eksperymentów i pracy z nimi w usłudze Azure Machine Learning.

Eksperyment to kontener prób, który reprezentuje wiele przebiegów modelu.

Konstruktor eksperymentu.

Dziedziczenie
azureml._logging.chained_identity.ChainedIdentity
Experiment
azureml.core._portal.HasExperimentPortal
Experiment

Konstruktor

Experiment(workspace, name, _skip_name_validation=False, _id=None, _archived_time=None, _create_in_cloud=True, _experiment_dto=None, **kwargs)

Parametry

workspace
Workspace
Wymagane

Obiekt obszaru roboczego zawierający eksperyment.

name
str
Wymagane

Nazwę eksperymentu.

kwargs
dict
Wymagane

Słownik słów kluczowych args.

workspace
Workspace
Wymagane

Obiekt obszaru roboczego zawierający eksperyment.

name
str
Wymagane

Nazwę eksperymentu.

kwargs
dict
Wymagane

Słownik słów kluczowych args.

_skip_name_validation
wartość domyślna: False
_id
wartość domyślna: None
_archived_time
wartość domyślna: None
_create_in_cloud
wartość domyślna: True
_experiment_dto
wartość domyślna: None

Uwagi

Eksperyment usługi Azure Machine Learning reprezentuje kolekcję prób używanych do weryfikowania hipotezy użytkownika.

W usłudze Azure Machine Learning eksperyment jest reprezentowany przez Experiment klasę, a wersja próbna jest reprezentowana przez klasę Run .

Aby uzyskać lub utworzyć eksperyment z obszaru roboczego, zażądasz eksperymentu przy użyciu nazwy eksperymentu. Nazwa eksperymentu musi zawierać od 3 do 36 znaków, zaczynać się literą lub cyfrą i może zawierać tylko litery, cyfry, podkreślenia i kreski.


   experiment = Experiment(workspace, "MyExperiment")

Jeśli eksperyment nie zostanie znaleziony w obszarze roboczym, zostanie utworzony nowy eksperyment.

Istnieją dwa sposoby wykonania próby eksperymentu. Jeśli eksperymentujesz interaktywnie w Jupyter Notebook, użyj opcji start_logging Jeśli przesyłasz eksperyment z kodu źródłowego lub innego typu skonfigurowanej wersji próbnej, użyj poleceniasubmit

Oba mechanizmy tworzą Run obiekt. W scenariuszach interaktywnych użyj metod rejestrowania, takich jak log dodawanie pomiarów i metryk do rekordu wersji próbnej. W skonfigurowanych scenariuszach użyj metod stanu, takich jak get_status pobieranie informacji o przebiegu.

W obu przypadkach możesz użyć metod zapytań, takich jak get_metrics pobieranie bieżących wartości, jeśli istnieją, pomiarów i metryk próbnych.

Metody

archive

Archiwizowanie eksperymentu.

delete

Usuń eksperyment w obszarze roboczym.

from_directory

(Przestarzałe) Załaduj eksperyment z określonej ścieżki.

get_docs_url

Adres URL dokumentacji dla tej klasy.

get_runs

Zwróć generator przebiegów dla tego eksperymentu w odwrotnej kolejności chronologicznej.

list

Zwróć listę eksperymentów w obszarze roboczym.

reactivate

Reactivates zarchiwizowanego eksperymentu.

refresh

Zwróć najnowszą wersję eksperymentu z chmury.

remove_tags

Usuń określone tagi z eksperymentu.

set_tags

Dodaj lub zmodyfikuj zestaw tagów w eksperymencie. Tagi, które nie są przekazywane w słowniku, pozostają niezmienione.

start_logging

Uruchom interaktywną sesję rejestrowania i utwórz interakcyjny przebieg w określonym eksperymencie.

submit

Prześlij eksperyment i zwróć aktywny utworzony przebieg.

tag

Tagowanie eksperymentu przy użyciu klucza ciągu i opcjonalnej wartości ciągu.

archive

Archiwizowanie eksperymentu.

archive()

Uwagi

Po archiwizacji eksperyment nie będzie domyślnie wyświetlany. Próba zapisania w zarchiwizowanym eksperymencie spowoduje utworzenie nowego aktywnego eksperymentu o tej samej nazwie. Zarchiwizowane eksperymenty można przywrócić, wywołując tak reactivate długo, jak długo nie ma innego aktywnego eksperymentu o tej samej nazwie.

delete

Usuń eksperyment w obszarze roboczym.

static delete(workspace, experiment_id)

Parametry

workspace
Workspace
Wymagane

Obszar roboczy, do którego należy eksperyment.

experiment_id
Wymagane

Identyfikator eksperymentu, który ma zostać usunięty.

from_directory

(Przestarzałe) Załaduj eksperyment z określonej ścieżki.

static from_directory(path, auth=None)

Parametry

path
str
Wymagane

Katalog zawierający pliki konfiguracji eksperymentu.

auth
ServicePrincipalAuthentication lub InteractiveLoginAuthentication
wartość domyślna: None

Obiekt uwierzytelniania. Jeśli nie zostaną użyte domyślne poświadczenia interfejsu wiersza polecenia platformy Azure lub interfejs API wyświetli monit o podanie poświadczeń.

Zwraca

Zwraca eksperyment

Typ zwracany

get_docs_url

Adres URL dokumentacji dla tej klasy.

get_docs_url()

Zwraca

url

Typ zwracany

str

get_runs

Zwróć generator przebiegów dla tego eksperymentu w odwrotnej kolejności chronologicznej.

get_runs(type=None, tags=None, properties=None, include_children=False)

Parametry

type
string
wartość domyślna: None

Filtruj zwrócony generator przebiegów według podanego typu. Zobacz add_type_provider tworzenie typów przebiegów.

tags
string lub dict
wartość domyślna: None

Filtr jest uruchamiany według tagu lub {"tag": "value"}.

properties
string lub dict
wartość domyślna: None

Filtr jest uruchamiany według właściwości lub {"property": "value"}

include_children
bool
wartość domyślna: False

Domyślnie pobieraj tylko uruchomienia najwyższego poziomu. Ustaw wartość true, aby wyświetlić listę wszystkich przebiegów.

Zwraca

Lista przebiegów pasujących do podanych filtrów.

Typ zwracany

list

Zwróć listę eksperymentów w obszarze roboczym.

static list(workspace, experiment_name=None, view_type='ActiveOnly', tags=None)

Parametry

workspace
Workspace
Wymagane

Obszar roboczy, z którego mają być wyświetlone eksperymenty.

experiment_name
str
wartość domyślna: None

Opcjonalna nazwa do filtrowania eksperymentów.

view_type
ViewType
wartość domyślna: ActiveOnly

Opcjonalna wartość wyliczenia do filtrowania lub dołączania zarchiwizowanych eksperymentów.

tags
wartość domyślna: None

Opcjonalny klucz tagu lub słownik par klucz-wartość tagu do filtrowania eksperymentów.

Zwraca

Lista obiektów eksperymentu.

Typ zwracany

reactivate

Reactivates zarchiwizowanego eksperymentu.

reactivate(new_name=None)

Parametry

new_name
str
Wymagane

Nieobsługiwane już

Uwagi

Zarchiwizowane eksperymenty można uaktywnić ponownie tylko wtedy, gdy nie ma innego aktywnego eksperymentu o tej samej nazwie.

refresh

Zwróć najnowszą wersję eksperymentu z chmury.

refresh()

remove_tags

Usuń określone tagi z eksperymentu.

remove_tags(tags)

Parametry

tags
[str]
Wymagane

Klucze tagów, które zostaną usunięte

set_tags

Dodaj lub zmodyfikuj zestaw tagów w eksperymencie. Tagi, które nie są przekazywane w słowniku, pozostają niezmienione.

set_tags(tags)

Parametry

tags
dict[str]
Wymagane

Tagi przechowywane w obiekcie eksperymentu

start_logging

Uruchom interaktywną sesję rejestrowania i utwórz interakcyjny przebieg w określonym eksperymencie.

start_logging(*args, **kwargs)

Parametry

experiment
Experiment
Wymagane

Eksperyment.

outputs
str
Wymagane

Opcjonalny katalog danych wyjściowych do śledzenia. W przypadku braku danych wyjściowych przekaż wartość False.

snapshot_directory
str
Wymagane

Opcjonalny katalog do wykonania migawki. Ustawienie wartości Brak nie spowoduje utworzenia migawki.

args
list
Wymagane
kwargs
dict
Wymagane

Zwraca

Zwracanie uruchomionego przebiegu.

Typ zwracany

Run

Uwagi

start_logging tworzy interakcyjny przebieg do użycia w scenariuszach, takich jak notesy Jupyter Notebook. Wszystkie metryki rejestrowane podczas sesji są dodawane do rekordu przebiegu w eksperymencie. Jeśli zostanie określony katalog wyjściowy, zawartość tego katalogu jest przekazywana jako artefakty uruchamiania po zakończeniu przebiegu.


   experiment = Experiment(workspace, "My Experiment")
   run = experiment.start_logging(outputs=None, snapshot_directory=".", display_name="My Run")
   ...
   run.log_metric("Accuracy", accuracy)
   run.complete()

Uwaga

run_id jest generowany automatycznie dla każdego przebiegu i jest unikatowy w ramach eksperymentu.

submit

Prześlij eksperyment i zwróć aktywny utworzony przebieg.

submit(config, tags=None, **kwargs)

Parametry

config
object
Wymagane

Konfiguracja do przesłania.

tags
dict
wartość domyślna: None

Tagi, które mają zostać dodane do przesłanego przebiegu, {"tag": "value"}.

kwargs
dict
Wymagane

Dodatkowe parametry używane w funkcji submit dla konfiguracji.

Zwraca

Przebieg.

Typ zwracany

Run

Uwagi

Submit to asynchroniczne wywołanie platformy Azure Machine Learning w celu wykonania wersji próbnej na sprzęcie lokalnym lub zdalnym. W zależności od konfiguracji przesyłanie automatycznie przygotuje środowiska wykonawcze, wykona kod i przechwyci kod źródłowy oraz wyniki do historii uruchamiania eksperymentu.

Aby przesłać eksperyment, należy najpierw utworzyć obiekt konfiguracji opisujący sposób uruchamiania eksperymentu. Konfiguracja zależy od wymaganego typu wersji próbnej.

Przykładowy sposób przesyłania eksperymentu z komputera lokalnego wygląda następująco:


   from azureml.core import ScriptRunConfig

   # run a trial from the train.py code in your current directory
   config = ScriptRunConfig(source_directory='.', script='train.py',
       run_config=RunConfiguration())
   run = experiment.submit(config)

   # get the url to view the progress of the experiment and then wait
   # until the trial is complete
   print(run.get_portal_url())
   run.wait_for_completion()

Aby uzyskać szczegółowe informacje na temat konfigurowania przebiegu, zobacz szczegóły typu konfiguracji.

  • ScriptRunConfig

  • azureml.train.automl.automlconfig.AutoMLConfig

  • azureml.pipeline.core.Pipeline

  • azureml.pipeline.core.PublishedPipeline

  • azureml.pipeline.core.PipelineEndpoint

Uwaga

Po przesłaniu przebiegu trenowania zostanie utworzona migawka katalogu zawierającego skrypty szkoleniowe i wysłana do docelowego obiektu obliczeniowego. Jest on również przechowywany w ramach eksperymentu w obszarze roboczym. Jeśli zmienisz pliki i ponownie prześlesz przebieg, zostaną przekazane tylko zmienione pliki.

Aby zapobiec dołączaniu plików do migawki, utwórz plik .gitignore lub amlignore w katalogu i dodaj do niego pliki. Plik .amlignore używa tej samej składni i wzorców co plik gitignore. Jeśli oba pliki istnieją, pierwszeństwo ma plik amlignore .

Aby uzyskać więcej informacji, zobacz Migawki.

tag

Tagowanie eksperymentu przy użyciu klucza ciągu i opcjonalnej wartości ciągu.

tag(key, value=None)

Parametry

key
str
Wymagane

Klucz tagu

value
str
Wymagane

Opcjonalna wartość tagu

Uwagi

Tagi w eksperymencie są przechowywane w słowniku z kluczami ciągów i wartościami ciągu. Tagi można ustawiać, aktualizować i usuwać. Tagi są przeznaczone dla użytkowników i zwykle zawierają informacje o znaczeniu dla użytkowników eksperymentu.


   experiment.tag('')
   experiment.tag('DeploymentCandidate')
   experiment.tag('modifiedBy', 'Master CI')
   experiment.tag('modifiedBy', 'release pipeline') # Careful, tags are mutable

Atrybuty

archived_time

Zwróć zarchiwizowany czas eksperymentu. Wartość powinna być wartością Brak dla aktywnego eksperymentu.

Zwraca

Zarchiwizowane czasy eksperymentu.

Typ zwracany

str

id

Identyfikator powrotu eksperymentu.

Zwraca

Identyfikator eksperymentu.

Typ zwracany

str

name

Zwraca nazwę eksperymentu.

Zwraca

Nazwa eksperymentu.

Typ zwracany

str

tags

Zwróć modyfikowalny zestaw tagów w eksperymencie.

Zwraca

Tagi w eksperymencie.

Typ zwracany

workspace

Zwróć obszar roboczy zawierający eksperyment.

Zwraca

Zwraca obiekt obszaru roboczego.

Typ zwracany

workspace_object

(Przestarzałe) Zwróć obszar roboczy zawierający eksperyment.

Użyj atrybutu workspace .

Zwraca

Obiekt obszaru roboczego.

Typ zwracany