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.ChainedIdentityExperimentazureml.core._portal.HasExperimentPortalExperiment
Konstruktor
Experiment(workspace, name, _skip_name_validation=False, _id=None, _archived_time=None, _create_in_cloud=True, _experiment_dto=None, **kwargs)
Parametry
Nazwa | Opis |
---|---|
workspace
Wymagane
|
Obiekt obszaru roboczego zawierający eksperyment. |
name
Wymagane
|
Nazwę eksperymentu. |
kwargs
Wymagane
|
Słownik słów kluczowych args. |
workspace
Wymagane
|
Obiekt obszaru roboczego zawierający eksperyment. |
name
Wymagane
|
Nazwę eksperymentu. |
kwargs
Wymagane
|
Słownik słów kluczowych args. |
_skip_name_validation
|
Domyślna wartość: False
|
_id
|
Domyślna wartość: None
|
_archived_time
|
Domyślna wartość: None
|
_create_in_cloud
|
Domyślna wartość: True
|
_experiment_dto
|
Domyślna wartość: 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 do 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 zostały przekazane w słowniku, pozostają nietknięte. |
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 nie ma innego aktywnego eksperymentu o tej samej nazwie.
delete
Usuń eksperyment w obszarze roboczym.
static delete(workspace, experiment_id)
Parametry
Nazwa | Opis |
---|---|
workspace
Wymagane
|
Obszar roboczy, do którego należy eksperyment. |
experiment_id
Wymagane
|
Identyfikator eksperymentu eksperymentu do usunięcia. |
from_directory
(Przestarzałe) Załaduj eksperyment z określonej ścieżki.
static from_directory(path, auth=None)
Parametry
Nazwa | Opis |
---|---|
path
Wymagane
|
Katalog zawierający pliki konfiguracji eksperymentu. |
auth
|
Obiekt uwierzytelniania. Jeśli nie zostaną użyte domyślne poświadczenia interfejsu wiersza polecenia platformy Azure lub interfejs API wyświetli monit o poświadczenia. Domyślna wartość: None
|
Zwraca
Typ | Opis |
---|---|
Zwraca eksperyment |
get_docs_url
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
Nazwa | Opis |
---|---|
type
|
Filtruj zwrócony generator przebiegów według podanego typu. Zobacz add_type_provider tworzenie typów przebiegów. Domyślna wartość: None
|
tags
|
Filtr jest uruchamiany według "tag" lub {"tag": "value"}. Domyślna wartość: None
|
properties
|
Filtry są uruchamiane według właściwości lub {"property": "value"} Domyślna wartość: None
|
include_children
|
Domyślnie pobieraj tylko uruchomienia najwyższego poziomu. Ustaw wartość true, aby wyświetlić listę wszystkich przebiegów. Domyślna wartość: False
|
Zwraca
Typ | Opis |
---|---|
Lista przebiegów pasujących do podanych filtrów. |
list
Zwróć listę eksperymentów w obszarze roboczym.
static list(workspace, experiment_name=None, view_type='ActiveOnly', tags=None)
Parametry
Nazwa | Opis |
---|---|
workspace
Wymagane
|
Obszar roboczy, z którego chcesz wyświetlić listę eksperymentów. |
experiment_name
|
Opcjonalna nazwa filtrowania eksperymentów. Domyślna wartość: None
|
view_type
|
Opcjonalna wartość wyliczenia do filtrowania lub dołączania zarchiwizowanych eksperymentów. Domyślna wartość: ActiveOnly
|
tags
|
Opcjonalny klucz tagu lub słownik par klucz-wartość tagu do filtrowania eksperymentów. Domyślna wartość: None
|
Zwraca
Typ | Opis |
---|---|
Lista obiektów eksperymentu. |
reactivate
Reactivates zarchiwizowanego eksperymentu.
reactivate(new_name=None)
Parametry
Nazwa | Opis |
---|---|
new_name
Wymagane
|
Już nieobsługiwane |
Uwagi
Zarchiwizowany eksperyment można ponownie uaktywnić 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
Nazwa | Opis |
---|---|
tags
Wymagane
|
[str]
Klucze tagów, które zostaną usunięte |
set_tags
Dodaj lub zmodyfikuj zestaw tagów w eksperymencie. Tagi, które nie zostały przekazane w słowniku, pozostają nietknięte.
set_tags(tags)
Parametry
Nazwa | Opis |
---|---|
tags
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
Nazwa | Opis |
---|---|
experiment
Wymagane
|
Eksperyment. |
outputs
Wymagane
|
Opcjonalny katalog danych wyjściowych do śledzenia. W przypadku braku danych wyjściowych przekaż wartość False. |
snapshot_directory
Wymagane
|
Opcjonalny katalog do wykonania migawki. Ustawienie na Wartość Brak nie spowoduje utworzenia migawki. |
args
Wymagane
|
|
kwargs
Wymagane
|
|
Zwraca
Typ | Opis |
---|---|
Zwróć uruchomiony przebieg. |
Uwagi
start_logging tworzy interakcyjny przebieg do użycia w scenariuszach, takich jak Notesy Jupyter. Wszystkie metryki rejestrowane podczas sesji są dodawane do rekordu przebiegu w eksperymencie. Jeśli zostanie określony katalog wyjściowy, zawartość tego katalogu zostanie przekazana 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
Nazwa | Opis |
---|---|
config
Wymagane
|
Konfiguracja, która ma zostać przesłana. |
tags
|
Tagi, które mają zostać dodane do przesłanego przebiegu, {"tag": "value"}. Domyślna wartość: None
|
kwargs
Wymagane
|
Dodatkowe parametry używane w funkcji przesyłania dla konfiguracji. |
Zwraca
Typ | Opis |
---|---|
Przebieg. |
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, wykonaj kod i przechwyci kod źródłowy oraz wyniki w 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ład przesyłania eksperymentu z komputera lokalnego jest następujący:
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.
azureml.train.automl.automlconfig.AutoMLConfig
azureml.pipeline.core.Pipeline
azureml.pipeline.core.PublishedPipeline
azureml.pipeline.core.PipelineEndpoint
Uwaga
Podczas przesyłania 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ą, plik amlignore ma pierwszeństwo.
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
Nazwa | Opis |
---|---|
key
Wymagane
|
Klucz tagu |
value
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 mieć wartość Brak dla aktywnego eksperymentu.
Zwraca
Typ | Opis |
---|---|
Zarchiwizowany czas eksperymentu. |
id
name
tags
workspace
Zwróć obszar roboczy zawierający eksperyment.
Zwraca
Typ | Opis |
---|---|
Zwraca obiekt obszaru roboczego. |