Run Třída
Definuje základní třídu pro všechna spuštění experimentu Azure Machine Learning.
Spuštění představuje jednu zkušební verzi experimentu. Spuštění slouží k monitorování asynchronního spuštění zkušební verze, protokolování metrik a ukládání výstupu zkušební verze a k analýze výsledků a přístupu k artefaktům vygenerovaným zkušební verzí.
Objekty spuštění se vytvoří, když odešlete skript pro trénování modelu v mnoha různých scénářích ve službě Azure Machine Learning, včetně spuštění HyperDrivu, spuštění kanálu a spuštění automatického strojového učení. Objekt Run se také vytvoří, když vy submitExperiment nebo start_logging s třídou.
Pokud chcete začít s experimenty a spuštěními, přečtěte si téma
Inicializujte objekt Spustit.
- Dědičnost
-
azureml._run_impl.run_base._RunBaseRun
Konstruktor
Run(experiment, run_id, outputs=None, **kwargs)
Parametry
Name | Description |
---|---|
experiment
Vyžadováno
|
Obsahující experiment. |
run_id
Vyžadováno
|
ID spuštění. |
outputs
|
Výstupy, které se mají sledovat. Default value: None
|
_run_dto
Vyžadováno
|
<xref:azureml._restclient.models.run_dto.RunDto>
Pouze interní použití. |
kwargs
Vyžadováno
|
Slovník dalších parametrů konfigurace. |
experiment
Vyžadováno
|
Obsahující experiment. |
run_id
Vyžadováno
|
ID spuštění. |
outputs
Vyžadováno
|
Výstupy, které se mají sledovat. |
kwargs
Vyžadováno
|
Slovník dalších parametrů konfigurace. |
Poznámky
Spuštění představuje jednu zkušební verzi experimentu. Objekt Spustit se používá k monitorování asynchronního spuštění zkušební verze, protokolování metrik a ukládání výstupu zkušební verze a k analýze výsledků a přístupu k artefaktům vygenerovaným zkušební verzí.
Spuštění se používá v rámci kódu experimentování k protokolování metrik a artefaktů do služby Historie spuštění.
Spuštění se používá mimo experimenty ke sledování průběhu a k dotazování a analýze vygenerovaných metrik a výsledků.
Funkce Spustit zahrnují:
Ukládání a načítání metrik a dat
Nahrávání a stahování souborů
Použití značek a podřízené hierarchie pro snadné vyhledávání minulých spuštění
Registrace uložených souborů modelu jako modelu, který je možné zprovoznit
Ukládání, úprava a načítání vlastností spuštění
Načtení aktuálního spuštění ze vzdáleného prostředí pomocí get_context metody
Efektivní vytvoření snímku souboru nebo adresáře pro reprodukovatelnost
Tato třída pracuje s objekty Experiment v těchto scénářích:
Vytvoření spuštění spuštěním kódu pomocí submit
Interaktivní vytvoření spuštění v poznámkovém bloku pomocí start_logging
Protokolování metrik a nahrávání artefaktů v experimentu, například při použití log
Čtení metrik a stahování artefaktů při analýze experimentálních výsledků, například při použití get_metrics
Pokud chcete odeslat spuštění, vytvořte objekt konfigurace, který popisuje, jak se experiment spouští. Tady jsou příklady různých objektů konfigurace, které můžete použít:
azureml.train.automl.automlconfig.AutoMLConfig
azureml.train.hyperdrive.HyperDriveConfig
azureml.pipeline.core.Pipeline
azureml.pipeline.core.PublishedPipeline
azureml.pipeline.core.PipelineEndpoint
Při trénování experimentu je možné do běhu přidat následující metriky.
Skalár
Pomocí příkazu zapíše do běhu číselnou nebo řetězcovou hodnotu s daným názvem log. Protokolování metriky do spuštění způsobí, že se metrika uloží do záznamu spuštění v experimentu. Stejnou metriku můžete v rámci běhu protokolovat vícekrát, přičemž výsledek se považuje za vektor této metriky.
Příklad:
run.log("accuracy", 0.95)
Seznam
Protokolujte do běhu seznam hodnot s daným názvem pomocí log_listpříkazu .
Příklad:
run.log_list("accuracies", [0.6, 0.7, 0.87])
Řádek
Pomocí log_row se vytvoří metrika s více sloupci, jak je popsáno v
kwargs
tématu . Každý pojmenovaný parametr vygeneruje sloupec se zadanou hodnotou.log_row
může být volána jednou, aby se protokolovala libovolná řazená kolekce členů, nebo vícekrát ve smyčce, aby se vygenerovala kompletní tabulka.Příklad:
run.log_row("Y over X", x=1, y=0.4)
Tabulka
Protokolujte do spuštění objekt slovníku s daným názvem pomocí log_table.
Příklad:
run.log_table("Y over X", {"x":[1, 2, 3], "y":[0.6, 0.7, 0.89]})
Image
Zaznamenejte image do záznamu spuštění. Slouží log_image k protokolování souboru obrázku nebo grafu matplotlib ke spuštění. Tyto obrázky budou viditelné a srovnatelné v záznamu spuštění.
Příklad:
run.log_image("ROC", path)
Metody
add_properties |
Přidejte do spuštění neměnné vlastnosti. Značky a vlastnosti (dict[str, str]) se liší v jejich proměnlivosti. Vlastnosti jsou neměnné, takže vytvářejí trvalý záznam pro účely auditování. Značky jsou proměnlivé. Další informace o práci se značkami a vlastnostmi najdete v tématu Označování a hledání spuštění. |
add_type_provider |
Háček rozšiřitelnosti pro vlastní typy spuštění uložené v historii spuštění |
cancel |
Označte spuštění jako zrušené. Pokud existuje přidružená úloha s nastaveným polem cancel_uri, ukončete také tuto úlohu. |
child_run |
Vytvořte podřízené spuštění. |
clean |
Odeberte soubory odpovídající aktuálnímu spuštění v cíli zadaném v konfiguraci spuštění. |
complete |
Počkejte na zpracování fronty úkolů. Pak se spuštění označí jako dokončené. Obvykle se používá ve scénářích interaktivních poznámkových bloků. |
create_children |
Vytvořte jedno nebo více podřízených spuštění. |
download_file |
Stáhněte si přidružený soubor z úložiště. |
download_files |
Pokud není předpona určená, stáhněte si soubory z dané předpony úložiště (název složky) nebo z celého kontejneru. |
fail |
Označte spuštění jako neúspěšné. Volitelně můžete nastavit vlastnost Error spuštění se zprávou nebo výjimkou předanou do |
flush |
Počkejte na zpracování fronty úkolů. |
get |
Získejte spuštění pro tento pracovní prostor s ID spuštění. |
get_all_logs |
Stáhněte všechny protokoly pro spuštění do adresáře. |
get_children |
Získejte všechny podřízené položky pro aktuální spuštění vybrané zadanými filtry. |
get_context |
Vrátit aktuální kontext služby. Tato metoda slouží k načtení aktuálního kontextu služby pro protokolování metrik a nahrávání souborů. Pokud |
get_detailed_status |
Načtěte nejnovější stav spuštění. Pokud je stav spuštění ve frontě, zobrazí se podrobnosti. |
get_details |
Získejte definici, informace o stavu, aktuální soubory protokolů a další podrobnosti o spuštění. |
get_details_with_logs |
Vrátit stav spuštění včetně obsahu souboru protokolu. |
get_environment |
Získejte definici prostředí, kterou toto spuštění použilo. |
get_file_names |
Vypište soubory, které jsou uložené ve spojení se spuštěním. |
get_metrics |
Načtěte metriky protokolované do spuštění. Pokud |
get_properties |
Načtěte nejnovější vlastnosti spuštění ze služby. |
get_secret |
Získejte hodnotu tajného klíče z kontextu spuštění. Získejte hodnotu tajného kódu pro zadaný název. Název tajného kódu odkazuje na hodnotu uloženou v Azure Key Vault přidruženou k vašemu pracovnímu prostoru. Příklad práce s tajnými kódy najdete v tématu Použití tajných kódů při trénovacích spuštěních. |
get_secrets |
Získejte hodnoty tajných kódů pro daný seznam názvů tajných kódů. Získejte slovník nalezených a nenalezených tajných kódů pro seznam zadaných názvů. Každý název tajného klíče odkazuje na hodnotu uloženou v Azure Key Vault přidruženou k vašemu pracovnímu prostoru. Příklad práce s tajnými kódy najdete v tématu Použití tajných kódů při trénovacích spuštěních. |
get_snapshot_id |
Získejte ID nejnovějšího snímku. |
get_status |
Načtěte nejnovější stav spuštění. Mezi běžné vrácené hodnoty patří Spuštěno, Dokončeno a Neúspěšné. |
get_submitted_run |
ZASTARALÉ. Použijte get_context. Získejte odeslané spuštění pro tento experiment. |
get_tags |
Načtěte ze služby nejnovější sadu měnitelných značek na spuštění. |
list |
Získejte seznam spuštění v experimentu určeném volitelnými filtry. |
list_by_compute |
Získejte seznam spuštění ve výpočetních prostředcích určených volitelnými filtry. |
log |
Protokolujte do spuštění hodnotu metriky s daným názvem. |
log_accuracy_table |
Zapíše tabulku přesnosti do úložiště artefaktů. Metrika tabulky přesnosti je multiužitková, nesakulární metrika, kterou lze použít k vytvoření více typů spojnicových grafů, které se neustále liší v rámci prostoru predikovaných pravděpodobností. Příklady těchto grafů jsou ROC, přesnost a úplnost a křivky lift. Výpočet tabulky přesnosti je podobný výpočtu křivky ROC. Křivka ROC ukládá pravdivě pozitivní sazby a falešně pozitivní sazby při mnoha různých prahových hodnotách pravděpodobnosti. Tabulka přesnosti ukládá nezpracovaný počet pravdivě pozitivních, falešně pozitivních, pravdivě negativních a falešně negativních výsledků při mnoha prahových hodnotách pravděpodobnosti. Pro výběr prahových hodnot se používají dvě metody: pravděpodobnost a percentil. Liší se ve způsobu vzorkování od prostoru předpovězených pravděpodobností. Prahové hodnoty pravděpodobnosti jsou prahové hodnoty rovnoměrně rozmístěné mezi 0 a 1. Pokud je NUM_POINTS 5, prahové hodnoty pravděpodobnosti by byly [0,0, 0,25, 0,5, 0,75, 1,0]. Prahové hodnoty percentilu jsou rozloženy podle rozdělení predikovaných pravděpodobností. Každá prahová hodnota odpovídá percentilu dat při prahové hodnotě pravděpodobnosti. Pokud je například NUM_POINTS 5, první prahová hodnota by byla na 0. percentilu, druhá na 25. percentilu, třetí na 50. percentilu atd. Tabulky pravděpodobnosti i tabulky percentilu jsou 3D seznamy, kde první dimenze představuje popisek třídy, druhá dimenze představuje vzorek při jedné prahové hodnotě (škáluje se s NUM_POINTS) a třetí dimenze má vždy 4 hodnoty: TP, FP, TN, FN a vždy v tomto pořadí. Konfuzní hodnoty (TP, FP, TN, FN) se počítají pomocí strategie "jeden vs. rest". Další podrobnosti najdete na následujícím odkazu: https://en.wikipedia.org/wiki/Multiclass_classification N = počet vzorků v ověřovací datové sadě (například 200) M = # prahové hodnoty = # vzorky odebrané z pravděpodobnostního prostoru (například 5) C = # třídy v celé datové sadě (v příkladu 3) Některé invarianty tabulky přesnosti:
Poznámka: M může být libovolná hodnota a řídí rozlišení grafů. Tato hodnota je nezávislá na datové sadě, definuje se při výpočtu metrik a využívá prostor úložiště, čas výpočtu a rozlišení. Popisky tříd by měly být řetězce, konfuzní hodnoty by měly být celá čísla a prahové hodnoty by měly být float. |
log_confusion_matrix |
Zapíše do úložiště artefaktů konfuzní matici. Tím se zaznamená obálka kolem matoucí matice sklearn. Data metrik obsahují popisky tříd a 2D seznam pro samotnou matici. Další podrobnosti o výpočtu metriky najdete na následujícím odkazu: https://scikit-learn.org/stable/modules/generated/sklearn.metrics.confusion_matrix.html |
log_image |
Protokolujte do záznamu spuštění metriku image. |
log_list |
Protokolujte do běhu seznam hodnot metrik s daným názvem. |
log_predictions |
Protokolování predikcí do úložiště artefaktů Protokoluje skóre metriky, které lze použít k porovnání rozdělení skutečných cílových hodnot s rozdělením predikovaných hodnot pro regresní úlohu. Předpovědi jsou binovány a směrodatné odchylky se počítají pro chybové úsečky ve spojnicovém grafu. |
log_residuals |
Protokolovat rezidua do úložiště artefaktů. Protokoluje data potřebná k zobrazení histogramu reziduí pro regresní úlohu. Rezidua jsou predikována – skutečná. Měla by existovat o jednu hranu více, než je počet počtů. Příklady použití počtů a hran k reprezentaci histogramu najdete v dokumentaci k histogramu numpy. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html |
log_row |
Protokolujte do spuštění metriku řádku s daným názvem. |
log_table |
Protokolujte do spuštění metriku tabulky s daným názvem. |
register_model |
Registrace modelu pro operacionalizaci |
remove_tags |
Odstraňte seznam měnitelných značek při tomto spuštění. |
restore_snapshot |
Obnovte snímek jako soubor ZIP. Vrátí cestu k souboru ZIP. |
set_tags |
Přidejte nebo upravte sadu značek za běhu. Značky nepředané ve slovníku zůstanou nedotčené. Můžete také přidat jednoduché značky řetězců. Když se tyto značky zobrazí ve slovníku značek jako klíče, mají hodnotu None. Další informace najdete v tématu Označování a hledání spuštění. |
start |
Označte spuštění jako spuštěné. To se obvykle používá v pokročilých scénářích, kdy spuštění vytvořil jiný objekt actor. |
submit_child |
Odešle experiment a vrátí aktivní podřízené spuštění. |
tag |
Označte spuštění pomocí klíče řetězce a volitelné hodnoty řetězce. |
take_snapshot |
Uložte snímek vstupního souboru nebo složky. |
upload_file |
Nahrajte soubor do záznamu spuštění. |
upload_files |
Nahrajte soubory do záznamu spuštění. |
upload_folder |
Nahrajte zadanou složku do zadaného názvu předpony. |
wait_for_completion |
Počkejte na dokončení tohoto spuštění. Vrátí objekt stavu po čekání. |
add_properties
Přidejte do spuštění neměnné vlastnosti.
Značky a vlastnosti (dict[str, str]) se liší v jejich proměnlivosti. Vlastnosti jsou neměnné, takže vytvářejí trvalý záznam pro účely auditování. Značky jsou proměnlivé. Další informace o práci se značkami a vlastnostmi najdete v tématu Označování a hledání spuštění.
add_properties(properties)
Parametry
Name | Description |
---|---|
properties
Vyžadováno
|
Skryté vlastnosti uložené v objektu spuštění. |
add_type_provider
Háček rozšiřitelnosti pro vlastní typy spuštění uložené v historii spuštění
static add_type_provider(runtype, run_factory)
Parametry
Name | Description |
---|---|
runtype
Vyžadováno
|
Hodnota Run.type, pro kterou bude vyvolána továrna. Mezi příklady patří hyperdrive nebo azureml.scriptrun, ale můžete je rozšířit o vlastní typy. |
run_factory
Vyžadováno
|
<xref:function>
Funkce s podpisem (Experiment, RunDto) –> spuštění, které se má vyvolat při výpisu spuštění. |
cancel
Označte spuštění jako zrušené.
Pokud existuje přidružená úloha s nastaveným polem cancel_uri, ukončete také tuto úlohu.
cancel()
child_run
Vytvořte podřízené spuštění.
child_run(name=None, run_id=None, outputs=None)
Parametry
Name | Description |
---|---|
name
|
Volitelný název podřízeného spuštění, obvykle zadaný pro "část". Default value: None
|
run_id
|
Volitelné ID spuštění pro podřízenou položku, jinak se automaticky vygeneruje. Tento parametr obvykle není nastavený. Default value: None
|
outputs
|
Volitelné výstupy adresáře, který se má sledovat pro podřízenou složku. Default value: None
|
Návraty
Typ | Description |
---|---|
Podřízené spuštění. |
Poznámky
Používá se k izolaci části běhu do pododdílu. To lze provést pro identifikovatelné "části" běhu, které je zajímavé oddělit, nebo zachytit nezávislé metriky v rámci interations podprocesu.
Pokud je pro podřízené spuštění nastavený výstupní adresář, obsah tohoto adresáře se po dokončení nahraje do podřízeného záznamu spuštění.
clean
Odeberte soubory odpovídající aktuálnímu spuštění v cíli zadaném v konfiguraci spuštění.
clean()
Návraty
Typ | Description |
---|---|
Seznam odstraněných souborů. |
complete
Počkejte na zpracování fronty úkolů.
Pak se spuštění označí jako dokončené. Obvykle se používá ve scénářích interaktivních poznámkových bloků.
complete(_set_status=True)
Parametry
Name | Description |
---|---|
_set_status
|
Určuje, jestli se má odeslat událost stavu pro sledování. Default value: True
|
create_children
Vytvořte jedno nebo více podřízených spuštění.
create_children(count=None, tag_key=None, tag_values=None)
Parametry
Name | Description |
---|---|
count
|
Volitelný počet podřízených položek, které se mají vytvořit. Default value: None
|
tag_key
|
Volitelný klíč pro naplnění položky Značky ve všech vytvořených podřízených položce. Default value: None
|
tag_Values
Vyžadováno
|
Volitelný seznam hodnot, které se budou mapovat na Tags[tag_key] pro seznam vytvořených spuštění. |
tag_values
|
Default value: None
|
Návraty
Typ | Description |
---|---|
Seznam podřízených spuštění. |
Poznámky
Musí být zadán parametr count
NEBO parametry tag_key
A tag_values
.
download_file
Stáhněte si přidružený soubor z úložiště.
download_file(name, output_file_path=None, _validate_checksum=False)
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název artefaktu, který se má stáhnout. |
output_file_path
Vyžadováno
|
Místní cesta, kam se má artefakt uložit. |
download_files
Pokud není předpona určená, stáhněte si soubory z dané předpony úložiště (název složky) nebo z celého kontejneru.
download_files(prefix=None, output_directory=None, output_paths=None, batch_size=100, append_prefix=True, timeout_seconds=None)
Parametry
Name | Description |
---|---|
prefix
Vyžadováno
|
Předpona filepath v kontejneru, ze které se mají stáhnout všechny artefakty. |
output_directory
Vyžadováno
|
Volitelný adresář, který všechny cesty artefaktů používají jako předponu. |
output_paths
Vyžadováno
|
[str]
Volitelné cesty k souborům, do kterých se mají ukládat stažené artefakty. Měla by být jedinečná a měla by odpovídat délce cest. |
batch_size
Vyžadováno
|
Počet souborů ke stažení na dávku. Výchozí hodnota je 100 souborů. |
append_prefix
Vyžadováno
|
Volitelný příznak, zda se má připojit zadaná předpona z konečné cesty k výstupnímu souboru. Pokud je false, předpona se odebere z cesty k výstupnímu souboru. |
timeout_seconds
Vyžadováno
|
Časový limit pro stahování souborů |
fail
Označte spuštění jako neúspěšné.
Volitelně můžete nastavit vlastnost Error spuštění se zprávou nebo výjimkou předanou do error_details
.
fail(error_details=None, error_code=None, _set_status=True)
Parametry
Name | Description |
---|---|
error_details
|
str nebo
BaseException
Volitelné podrobnosti o chybě. Default value: None
|
error_code
|
Volitelný kód chyby pro klasifikaci chyb. Default value: None
|
_set_status
|
Určuje, jestli se má odeslat událost stavu pro sledování. Default value: True
|
flush
Počkejte na zpracování fronty úkolů.
flush(timeout_seconds=300)
Parametry
Name | Description |
---|---|
timeout_seconds
|
Jak dlouho čekat (v sekundách) na zpracování fronty úkolů Default value: 300
|
get
Získejte spuštění pro tento pracovní prostor s ID spuštění.
static get(workspace, run_id)
Parametry
Name | Description |
---|---|
workspace
Vyžadováno
|
Pracovní prostor, který obsahuje. |
run_id
Vyžadováno
|
ID spuštění. |
Návraty
Typ | Description |
---|---|
Odeslaný běh. |
get_all_logs
Stáhněte všechny protokoly pro spuštění do adresáře.
get_all_logs(destination=None)
Parametry
Name | Description |
---|---|
destination
|
Cílová cesta k ukládání protokolů. Pokud není zadáno, vytvoří se v adresáři projektu adresář s názvem ID spuštění. Default value: None
|
Návraty
Typ | Description |
---|---|
Seznam názvů stažených protokolů. |
get_children
Získejte všechny podřízené položky pro aktuální spuštění vybrané zadanými filtry.
get_children(recursive=False, tags=None, properties=None, type=None, status=None, _rehydrate_runs=True)
Parametry
Name | Description |
---|---|
recursive
|
Určuje, zda se má znovu získat ze všech potomků. Default value: False
|
tags
|
Pokud je zadaný, vrátí spuštění odpovídající zadanému "tag" nebo {"tag": "value"}. Default value: None
|
properties
|
Pokud je zadáno, vrátí spuštění odpovídající zadané vlastnosti nebo {"vlastnost": "hodnota"}. Default value: None
|
type
|
Pokud je zadáno, vrátí spuštění odpovídající tomuto typu. Default value: None
|
status
|
Pokud je zadáno, vrátí spuštění se stavem zadaným "status". Default value: None
|
_rehydrate_runs
|
Určuje, jestli se má vytvořit instance spuštění původního typu nebo základního spuštění. Default value: True
|
Návraty
Typ | Description |
---|---|
Seznam Run objektů. |
get_context
Vrátit aktuální kontext služby.
Tato metoda slouží k načtení aktuálního kontextu služby pro protokolování metrik a nahrávání souborů. Pokud allow_offline
je hodnota True (výchozí), budou akce proti objektu Run vytištěny jako standardní.
get_context(allow_offline=True, used_for_context_manager=False, **kwargs)
Parametry
Name | Description |
---|---|
cls
Vyžadováno
|
Označuje metodu třídy. |
allow_offline
|
Povolte, aby se kontext služby vrátil do offline režimu, aby bylo možné trénovací skript otestovat místně bez odeslání úlohy pomocí sady SDK. Ve výchozím nastavení je true. Default value: True
|
kwargs
Vyžadováno
|
Slovník dalších parametrů. |
used_for_context_manager
|
Default value: False
|
Návraty
Typ | Description |
---|---|
Odeslaný běh. |
Poznámky
Tato funkce se běžně používá k načtení ověřeného objektu Run uvnitř skriptu, který se má odeslat ke spuštění prostřednictvím příkazu experiment.submit(). Tento objekt spuštění je ověřeným kontextem pro komunikaci se službami Azure Machine Learning a koncepčním kontejnerem, ve kterém jsou obsaženy metriky, soubory (artefakty) a modely.
run = Run.get_context() # allow_offline=True by default, so can be run locally as well
...
run.log("Accuracy", 0.98)
run.log_row("Performance", epoch=e, error=err)
get_detailed_status
Načtěte nejnovější stav spuštění. Pokud je stav spuštění ve frontě, zobrazí se podrobnosti.
get_detailed_status()
Návraty
Typ | Description |
---|---|
Nejnovější stav a podrobnosti |
Poznámky
status: Aktuální stav spuštění. Stejná hodnota, která se vrátila z get_status().
podrobnosti: Podrobné informace o aktuálním stavu.
run = experiment.submit(config)
details = run.get_detailed_status()
# details = {
# 'status': 'Queued',
# 'details': 'Run requested 1 node(s). Run is in pending status.',
# }
get_details
Získejte definici, informace o stavu, aktuální soubory protokolů a další podrobnosti o spuštění.
get_details()
Návraty
Typ | Description |
---|---|
Vrácení podrobností o spuštění |
Poznámky
Vrácený slovník obsahuje následující páry klíč-hodnota:
runId: ID tohoto spuštění.
Cíl
status: Aktuální stav spuštění. Stejná hodnota, která se vrátila z get_status().
startTimeUtc: čas UTC, kdy bylo toto spuštění spuštěno, v ISO8601.
endTimeUtc: čas UTC, kdy bylo toto spuštění dokončeno (dokončeno nebo selhalo) v ISO8601.
Tento klíč neexistuje, pokud spuštění stále probíhá.
properties: Neměnné páry klíč-hodnota přidružené k běhu. Mezi výchozí vlastnosti patří ID snímku spuštění a informace o úložišti Git, ze kterého bylo spuštění vytvořeno (pokud existuje). Další vlastnosti lze přidat do spuštění pomocí .add_properties
inputDatasets: Vstupní datové sady přidružené ke spuštění.
outputDatasets: Výstupní datové sady přidružené k běhu.
Logfiles
odeslánoPod
run = experiment.start_logging()
details = run.get_details()
# details = {
# 'runId': '5c24aa28-6e4a-4572-96a0-fb522d26fe2d',
# 'target': 'sdk',
# 'status': 'Running',
# 'startTimeUtc': '2019-01-01T13:08:01.713777Z',
# 'endTimeUtc': '2019-01-01T17:15:65.986253Z',
# 'properties': {
# 'azureml.git.repository_uri': 'https://example.com/my/git/repo',
# 'azureml.git.branch': 'master',
# 'azureml.git.commit': '7dc972657c2168927a02c3bc2b161e0f370365d7',
# 'azureml.git.dirty': 'True',
# 'mlflow.source.git.repoURL': 'https://example.com/my/git/repo',
# 'mlflow.source.git.branch': 'master',
# 'mlflow.source.git.commit': '7dc972657c2168927a02c3bc2b161e0f370365d7',
# 'ContentSnapshotId': 'b4689489-ce2f-4db5-b6d7-6ad11e77079c'
# },
# 'inputDatasets': [{
# 'dataset': {'id': 'cdebf245-701d-4a68-8055-41f9cf44f298'},
# 'consumptionDetails': {
# 'type': 'RunInput',
# 'inputName': 'training-data',
# 'mechanism': 'Mount',
# 'pathOnCompute': '/mnt/datasets/train'
# }
# }],
# 'outputDatasets': [{
# 'dataset': {'id': 'd04e8a19-1caa-4b1f-b318-4cbff9af9615'},
# 'outputType': 'RunOutput',
# 'outputDetails': {
# 'outputName': 'training-result'
# }
# }],
# 'runDefinition': {},
# 'logFiles': {},
# 'submittedBy': 'Alan Turing'
# }
get_details_with_logs
Vrátit stav spuštění včetně obsahu souboru protokolu.
get_details_with_logs()
Návraty
Typ | Description |
---|---|
Vrátí stav spuštění s obsahem souboru protokolu. |
get_environment
Získejte definici prostředí, kterou toto spuštění použilo.
get_environment()
Návraty
Typ | Description |
---|---|
Vraťte objekt prostředí. |
get_file_names
Vypište soubory, které jsou uložené ve spojení se spuštěním.
get_file_names()
Návraty
Typ | Description |
---|---|
Seznam cest pro existující artefakty |
get_metrics
Načtěte metriky protokolované do spuštění.
Pokud recursive
je hodnota True (ve výchozím nastavení Nepravda), načtěte metriky pro spuštění v podstromu daného spuštění.
get_metrics(name=None, recursive=False, run_type=None, populate=False)
Parametry
Name | Description |
---|---|
name
|
Název metriky. Default value: None
|
recursive
|
Určuje, zda se má znovu získat ze všech potomků. Default value: False
|
run_type
|
Default value: None
|
populate
|
Určuje, jestli se má načíst obsah externích dat propojených s metrikou. Default value: False
|
Návraty
Typ | Description |
---|---|
Slovník obsahující metriky uživatelů. |
Poznámky
run = experiment.start_logging() # run id: 123
run.log("A", 1)
with run.child_run() as child: # run id: 456
child.log("A", 2)
metrics = run.get_metrics()
# metrics = { 'A': 1 }
metrics = run.get_metrics(recursive=True)
# metrics = { '123': { 'A': 1 }, '456': { 'A': 2 } } note key is runId
get_properties
Načtěte nejnovější vlastnosti spuštění ze služby.
get_properties()
Návraty
Typ | Description |
---|---|
Vlastnosti spuštění. |
Poznámky
Vlastnosti jsou neměnné systémově generované informace, jako je doba trvání, datum spuštění, uživatel a vlastní vlastnosti přidané pomocí add_properties metody. Další informace najdete v tématu Označování a hledání spuštění.
Pokud jsou zdrojové soubory při odesílání úlohy do služby Azure Machine Learning uložené v místním úložišti Git, informace o úložišti se ukládají jako vlastnosti. Tyto vlastnosti gitu se přidají při vytváření spuštění nebo volání experimentu Experiment.submit. Další informace o vlastnostech Gitu najdete v tématu Integrace Gitu pro Azure Machine Learning.
get_secret
Získejte hodnotu tajného klíče z kontextu spuštění.
Získejte hodnotu tajného kódu pro zadaný název. Název tajného kódu odkazuje na hodnotu uloženou v Azure Key Vault přidruženou k vašemu pracovnímu prostoru. Příklad práce s tajnými kódy najdete v tématu Použití tajných kódů při trénovacích spuštěních.
get_secret(name)
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název tajného kódu, pro který se má tajný kód vrátit. |
Návraty
Typ | Description |
---|---|
Hodnota tajného klíče. |
get_secrets
Získejte hodnoty tajných kódů pro daný seznam názvů tajných kódů.
Získejte slovník nalezených a nenalezených tajných kódů pro seznam zadaných názvů. Každý název tajného klíče odkazuje na hodnotu uloženou v Azure Key Vault přidruženou k vašemu pracovnímu prostoru. Příklad práce s tajnými kódy najdete v tématu Použití tajných kódů při trénovacích spuštěních.
get_secrets(secrets)
Parametry
Name | Description |
---|---|
secrets
Vyžadováno
|
Seznam názvů tajných kódů, pro které se mají vrátit hodnoty tajných kódů. |
Návraty
Typ | Description |
---|---|
Vrátí slovník nalezených a nenalezených tajných kódů. |
get_snapshot_id
Získejte ID nejnovějšího snímku.
get_snapshot_id()
Návraty
Typ | Description |
---|---|
ID nejnovějšího snímku. |
get_status
Načtěte nejnovější stav spuštění.
Mezi běžné vrácené hodnoty patří Spuštěno, Dokončeno a Neúspěšné.
get_status()
Návraty
Typ | Description |
---|---|
Nejnovější stav. |
Poznámky
NotStarted – objekty spuštění na straně klienta jsou v dočasném stavu před odesláním do cloudu.
Spuštění – Spuštění se začalo zpracovávat v cloudu. Volající má v tuto chvíli ID spuštění.
Zřizování – vrátí se při vytváření výpočetních prostředků na vyžádání pro dané odeslání úlohy.
Příprava – připravuje se spuštěné prostředí:
sestavení image dockeru
Nastavení prostředí conda
Zařazeno do fronty – Úloha je zařazena do fronty v cílovém výpočetním objektu. Například ve službě BatchAI je úloha ve frontě.
při čekání na připravenost všech požadovaných uzlů.
Spuštěno – Úloha se začala spouštět v cílovém výpočetním objektu.
Finalizace – uživatelský kód se dokončil a spuštění je ve fázích následného zpracování.
CancelRequested – pro úlohu bylo požádáno o zrušení.
Dokončeno – spuštění bylo úspěšně dokončeno. To zahrnuje jak uživatelský kód, tak spuštění
fáze následného zpracování.
Neúspěšné – spuštění se nezdařilo. Vlastnost Error při spuštění obvykle obsahuje podrobné informace o tom, proč tomu tak je.
Zrušeno – následuje žádost o zrušení a indikuje, že spuštění se teď úspěšně zrušilo.
Nereaguje – U spuštění s povolenými prezenčními signály se v nedávné době neodeslal žádný prezenční signál.
run = experiment.submit(config)
while run.get_status() not in ['Completed', 'Failed']: # For example purposes only, not exhaustive
print('Run {} not in terminal state'.format(run.id))
time.sleep(10)
get_submitted_run
ZASTARALÉ. Použijte get_context.
Získejte odeslané spuštění pro tento experiment.
get_submitted_run(**kwargs)
Návraty
Typ | Description |
---|---|
Odeslané spuštění. |
get_tags
Načtěte ze služby nejnovější sadu měnitelných značek na spuštění.
get_tags()
Návraty
Typ | Description |
---|---|
Značky uložené v objektu spuštění. |
list
Získejte seznam spuštění v experimentu určeném volitelnými filtry.
static list(experiment, type=None, tags=None, properties=None, status=None, include_children=False, _rehydrate_runs=True)
Parametry
Name | Description |
---|---|
experiment
Vyžadováno
|
Obsahující experiment. |
type
|
Pokud je zadaný, vrátí spuštění odpovídající zadanému typu. Default value: None
|
tags
|
Pokud je zadaný, vrátí spuštění odpovídající zadanému "tag" nebo {"tag": "value"}. Default value: None
|
properties
|
Pokud je zadaný, vrátí spuštění odpovídající zadané vlastnosti nebo {"property": "value"}. Default value: None
|
status
|
Pokud je zadaný, vrátí spuštění se zadaným stavem "status". Default value: None
|
include_children
|
Pokud je nastavená hodnota true, načtěte všechna spuštění, ne jenom ta na nejvyšší úrovni. Default value: False
|
_rehydrate_runs
|
Pokud je nastavená hodnota True (ve výchozím nastavení), použije zaregistrovaného zprostředkovatele k obnovení objektu pro tento typ místo základního spuštění. Default value: True
|
Návraty
Typ | Description |
---|---|
Seznam spuštění. |
Poznámky
Následující příklad kódu ukazuje některá použití list
metody .
favorite_completed_runs = Run.list(experiment, status='Completed', tags='favorite')
all_distinct_runs = Run.list(experiment)
and_their_children = Run.list(experiment, include_children=True)
only_script_runs = Run.list(experiment, type=ScriptRun.RUN_TYPE)
list_by_compute
Získejte seznam spuštění ve výpočetních prostředcích určených volitelnými filtry.
static list_by_compute(compute, type=None, tags=None, properties=None, status=None)
Parametry
Name | Description |
---|---|
compute
Vyžadováno
|
Obsahující výpočetní prostředky. |
type
|
Pokud je zadaný, vrátí spuštění odpovídající zadanému typu. Default value: None
|
tags
|
Pokud je zadaný, vrátí spuštění odpovídající zadanému "tag" nebo {"tag": "value"}. Default value: None
|
properties
|
Pokud je zadaný, vrátí spuštění odpovídající zadané vlastnosti nebo {"property": "value"}. Default value: None
|
status
|
Pokud je zadaný, vrátí spuštění se zadaným stavem "status". Povolené jsou pouze hodnoty Spuštěno a Ve frontě. Default value: None
|
Návraty
Typ | Description |
---|---|
<xref:builtin.generator>
|
generátor ~_restclient.models.RunDto |
log
Protokolujte do spuštění hodnotu metriky s daným názvem.
log(name, value, description='', step=None)
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název metriky. |
value
Vyžadováno
|
Hodnota, která má být zaúčtována do služby. |
description
Vyžadováno
|
Volitelný popis metriky |
step
|
Volitelná osa pro určení pořadí hodnot v rámci metriky. Default value: None
|
Poznámky
Protokolování metriky do spuštění způsobí, že se metrika uloží do záznamu spuštění v experimentu. Stejnou metriku můžete během běhu protokolovat několikrát, výsledek se považuje za vektor této metriky. Pokud je pro metriku zadaný krok, musí být zadán pro všechny hodnoty.
log_accuracy_table
Zapíše tabulku přesnosti do úložiště artefaktů.
Metrika tabulky přesnosti je multiužitková, nesakulární metrika, kterou lze použít k vytvoření více typů spojnicových grafů, které se neustále liší v rámci prostoru predikovaných pravděpodobností. Příklady těchto grafů jsou ROC, přesnost a úplnost a křivky lift.
Výpočet tabulky přesnosti je podobný výpočtu křivky ROC. Křivka ROC ukládá pravdivě pozitivní sazby a falešně pozitivní sazby při mnoha různých prahových hodnotách pravděpodobnosti. Tabulka přesnosti ukládá nezpracovaný počet pravdivě pozitivních, falešně pozitivních, pravdivě negativních a falešně negativních výsledků při mnoha prahových hodnotách pravděpodobnosti.
Pro výběr prahových hodnot se používají dvě metody: pravděpodobnost a percentil. Liší se ve způsobu vzorkování od prostoru předpovězených pravděpodobností.
Prahové hodnoty pravděpodobnosti jsou prahové hodnoty rovnoměrně rozmístěné mezi 0 a 1. Pokud je NUM_POINTS 5, prahové hodnoty pravděpodobnosti by byly [0,0, 0,25, 0,5, 0,75, 1,0].
Prahové hodnoty percentilu jsou rozloženy podle rozdělení predikovaných pravděpodobností. Každá prahová hodnota odpovídá percentilu dat při prahové hodnotě pravděpodobnosti. Pokud je například NUM_POINTS 5, první prahová hodnota by byla na 0. percentilu, druhá na 25. percentilu, třetí na 50. percentilu atd.
Tabulky pravděpodobnosti i tabulky percentilu jsou 3D seznamy, kde první dimenze představuje popisek třídy, druhá dimenze představuje vzorek při jedné prahové hodnotě (škáluje se s NUM_POINTS) a třetí dimenze má vždy 4 hodnoty: TP, FP, TN, FN a vždy v tomto pořadí.
Konfuzní hodnoty (TP, FP, TN, FN) se počítají pomocí strategie "jeden vs. rest". Další podrobnosti najdete na následujícím odkazu: https://en.wikipedia.org/wiki/Multiclass_classification
N = počet vzorků v ověřovací datové sadě (například 200) M = # prahové hodnoty = # vzorky odebrané z pravděpodobnostního prostoru (například 5) C = # třídy v celé datové sadě (v příkladu 3)
Některé invarianty tabulky přesnosti:
- TP + FP + TN + FN = N pro všechny prahové hodnoty pro všechny třídy
- TP + FN je stejné při všech prahových hodnotách pro libovolnou třídu
- TN + FP je stejné při všech prahových hodnotách pro libovolnou třídu.
- Tabulky pravděpodobnosti a tabulky percentilu mají tvar [C, M, 4]
Poznámka: M může být libovolná hodnota a řídí rozlišení grafů. Tato hodnota je nezávislá na datové sadě, definuje se při výpočtu metrik a využívá prostor úložiště, čas výpočtu a rozlišení.
Popisky tříd by měly být řetězce, konfuzní hodnoty by měly být celá čísla a prahové hodnoty by měly být float.
log_accuracy_table(name, value, description='')
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název tabulky přesnosti. |
value
Vyžadováno
|
JSON obsahující vlastnosti názvu, verze a dat. |
description
Vyžadováno
|
Volitelný popis metriky |
Poznámky
Příklad platné hodnoty JSON:
{
"schema_type": "accuracy_table",
"schema_version": "1.0.1",
"data": {
"probability_tables": [
[
[82, 118, 0, 0],
[75, 31, 87, 7],
[66, 9, 109, 16],
[46, 2, 116, 36],
[0, 0, 118, 82]
],
[
[60, 140, 0, 0],
[56, 20, 120, 4],
[47, 4, 136, 13],
[28, 0, 140, 32],
[0, 0, 140, 60]
],
[
[58, 142, 0, 0],
[53, 29, 113, 5],
[40, 10, 132, 18],
[24, 1, 141, 34],
[0, 0, 142, 58]
]
],
"percentile_tables": [
[
[82, 118, 0, 0],
[82, 67, 51, 0],
[75, 26, 92, 7],
[48, 3, 115, 34],
[3, 0, 118, 79]
],
[
[60, 140, 0, 0],
[60, 89, 51, 0],
[60, 41, 99, 0],
[46, 5, 135, 14],
[3, 0, 140, 57]
],
[
[58, 142, 0, 0],
[56, 93, 49, 2],
[54, 47, 95, 4],
[41, 10, 132, 17],
[3, 0, 142, 55]
]
],
"probability_thresholds": [0.0, 0.25, 0.5, 0.75, 1.0],
"percentile_thresholds": [0.0, 0.01, 0.24, 0.98, 1.0],
"class_labels": ["0", "1", "2"]
}
}
log_confusion_matrix
Zapíše do úložiště artefaktů konfuzní matici.
Tím se zaznamená obálka kolem matoucí matice sklearn. Data metrik obsahují popisky tříd a 2D seznam pro samotnou matici. Další podrobnosti o výpočtu metriky najdete na následujícím odkazu: https://scikit-learn.org/stable/modules/generated/sklearn.metrics.confusion_matrix.html
log_confusion_matrix(name, value, description='')
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název konfuzní matice. |
value
Vyžadováno
|
JSON obsahující vlastnosti názvu, verze a dat. |
description
Vyžadováno
|
Volitelný popis metriky |
Poznámky
Příklad platné hodnoty JSON:
{
"schema_type": "confusion_matrix",
"schema_version": "1.0.0",
"data": {
"class_labels": ["0", "1", "2", "3"],
"matrix": [
[3, 0, 1, 0],
[0, 1, 0, 1],
[0, 0, 1, 0],
[0, 0, 0, 1]
]
}
}
log_image
Protokolujte do záznamu spuštění metriku image.
log_image(name, path=None, plot=None, description='')
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název metriky |
path
Vyžadováno
|
Cesta nebo stream obrázku. |
plot
Vyžadováno
|
<xref:matplotlib.pyplot>
Graf, který se má protokolovat jako obrázek. |
description
Vyžadováno
|
Volitelný popis metriky |
Poznámky
Tato metoda slouží k protokolování souboru obrázku nebo diagramu matplotlib do spuštění. Tyto obrázky budou viditelné a srovnatelné v záznamu spuštění.
log_list
Protokolujte do běhu seznam hodnot metrik s daným názvem.
log_list(name, value, description='')
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název metriky. |
value
Vyžadováno
|
Hodnoty metriky |
description
Vyžadováno
|
Volitelný popis metriky |
log_predictions
Protokolování predikcí do úložiště artefaktů
Protokoluje skóre metriky, které lze použít k porovnání rozdělení skutečných cílových hodnot s rozdělením predikovaných hodnot pro regresní úlohu.
Předpovědi jsou binovány a směrodatné odchylky se počítají pro chybové úsečky ve spojnicovém grafu.
log_predictions(name, value, description='')
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název predikcí. |
value
Vyžadováno
|
JSON obsahující vlastnosti názvu, verze a dat. |
description
Vyžadováno
|
Volitelný popis metriky |
Poznámky
Příklad platné hodnoty JSON:
{
"schema_type": "predictions",
"schema_version": "1.0.0",
"data": {
"bin_averages": [0.25, 0.75],
"bin_errors": [0.013, 0.042],
"bin_counts": [56, 34],
"bin_edges": [0.0, 0.5, 1.0]
}
}
log_residuals
Protokolovat rezidua do úložiště artefaktů.
Protokoluje data potřebná k zobrazení histogramu reziduí pro regresní úlohu. Rezidua jsou predikována – skutečná.
Měla by existovat o jednu hranu více, než je počet počtů. Příklady použití počtů a hran k reprezentaci histogramu najdete v dokumentaci k histogramu numpy. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html
log_residuals(name, value, description='')
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název reziduí. |
value
Vyžadováno
|
JSON obsahující vlastnosti názvu, verze a dat. |
description
Vyžadováno
|
Volitelný popis metriky |
Poznámky
Příklad platné hodnoty JSON:
{
"schema_type": "residuals",
"schema_version": "1.0.0",
"data": {
"bin_edges": [50, 100, 200, 300, 350],
"bin_counts": [0.88, 20, 30, 50.99]
}
}
log_row
Protokolujte do spuštění metriku řádku s daným názvem.
log_row(name, description=None, **kwargs)
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název metriky. |
description
|
Volitelný popis metriky Default value: None
|
kwargs
Vyžadováno
|
Slovník dalších parametrů. V tomto případě sloupce metriky. |
Poznámky
Pomocí se log_row
vytvoří metrika tabulky se sloupci, jak je popsáno v tématu kwargs. Každý pojmenovaný parametr vygeneruje sloupec se zadanou hodnotou.
log_row
může být volána jednou za účelem protokolování libovolné řazené kolekce členů nebo několikrát ve smyčce, aby se vygenerovala kompletní tabulka.
citrus = ['orange', 'lemon', 'lime']
sizes = [ 10, 7, 3]
for index in range(len(citrus)):
run.log_row("citrus", fruit = citrus[index], size=sizes[index])
log_table
Protokolujte do spuštění metriku tabulky s daným názvem.
log_table(name, value, description='')
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název metriky. |
value
Vyžadováno
|
Hodnota tabulky metriky, slovník, kde klíče jsou sloupce, které se mají publikovat do služby. |
description
Vyžadováno
|
Volitelný popis metriky |
register_model
Registrace modelu pro operacionalizaci
register_model(model_name, model_path=None, tags=None, properties=None, model_framework=None, model_framework_version=None, description=None, datasets=None, sample_input_dataset=None, sample_output_dataset=None, resource_configuration=None, **kwargs)
Parametry
Name | Description |
---|---|
model_name
Vyžadováno
|
Název modelu |
model_path
|
Relativní cloudová cesta k modelu, například "outputs/název modelu".
Pokud není zadán (None), Default value: None
|
tags
|
Slovník značek klíčových hodnot, které se přiřazují k modelu. Default value: None
|
properties
|
Slovník vlastností klíčové hodnoty, které se přiřazují k modelu. Tyto vlastnosti nelze po vytvoření modelu změnit, je však možné přidat nové páry hodnot klíčů. Default value: None
|
model_framework
|
Architektura modelu, který se má zaregistrovat. Aktuálně podporované architektury: TensorFlow, ScikitLearn, Onnx, Custom, Multi Default value: None
|
model_framework_version
|
Verze architektury registrovaného modelu. Default value: None
|
description
|
Volitelný popis modelu. Default value: None
|
datasets
|
Seznam řazených kolekcí členů, kde první prvek popisuje vztah datové sady a modelu a druhý prvek je datová sada. Default value: None
|
sample_input_dataset
|
Nepovinný parametr. Ukázková vstupní datová sada pro zaregistrovaný model Default value: None
|
sample_output_dataset
|
Nepovinný parametr. Ukázková výstupní datová sada pro zaregistrovaný model Default value: None
|
resource_configuration
|
Nepovinný parametr. Konfigurace prostředků pro spuštění zaregistrovaného modelu Default value: None
|
kwargs
Vyžadováno
|
Volitelné parametry. |
Návraty
Typ | Description |
---|---|
Registrovaný model. |
Poznámky
model = best_run.register_model(model_name = 'best_model', model_path = 'outputs/model.pkl')
remove_tags
Odstraňte seznam měnitelných značek při tomto spuštění.
remove_tags(tags)
Parametry
Name | Description |
---|---|
tags
Vyžadováno
|
Seznam značek, které se mají odebrat. |
Návraty
Typ | Description |
---|---|
Značky uložené v objektu spuštění |
restore_snapshot
Obnovte snímek jako soubor ZIP. Vrátí cestu k souboru ZIP.
restore_snapshot(snapshot_id=None, path=None)
Parametry
Name | Description |
---|---|
snapshot_id
|
ID snímku, které se má obnovit. Pokud není zadána, použije se nejnovější hodnota. Default value: None
|
path
|
Cesta, kam se stažený soubor ZIP uloží. Default value: None
|
Návraty
Typ | Description |
---|---|
Cesta. |
set_tags
Přidejte nebo upravte sadu značek za běhu. Značky nepředané ve slovníku zůstanou nedotčené.
Můžete také přidat jednoduché značky řetězců. Když se tyto značky zobrazí ve slovníku značek jako klíče, mají hodnotu None. Další informace najdete v tématu Označování a hledání spuštění.
set_tags(tags)
Parametry
Name | Description |
---|---|
tags
Vyžadováno
|
Značky uložené v objektu spuštění. |
start
Označte spuštění jako spuštěné.
To se obvykle používá v pokročilých scénářích, kdy spuštění vytvořil jiný objekt actor.
start()
submit_child
Odešle experiment a vrátí aktivní podřízené spuštění.
submit_child(config, tags=None, **kwargs)
Parametry
Name | Description |
---|---|
config
Vyžadováno
|
Konfigurace, která se má odeslat. |
tags
|
Značky, které se mají přidat do odeslaného spuštění, například {"tag": "value"}. Default value: None
|
kwargs
Vyžadováno
|
Další parametry používané ve funkci submit pro konfigurace. |
Návraty
Typ | Description |
---|---|
Objekt spuštění. |
Poznámky
Submit je asynchronní volání platformy Azure Machine Learning za účelem provedení zkušební verze na místním nebo vzdáleném hardwaru. V závislosti na konfiguraci nástroj submit automaticky připraví spouštěcí prostředí, spustí kód a zaznamená zdrojový kód a výsledky do historie spuštění experimentu.
Pokud chcete experiment odeslat, musíte nejprve vytvořit objekt konfigurace popisující způsob spuštění experimentu. Konfigurace závisí na typu požadované zkušební verze.
Příklad odeslání podřízeného experimentu z místního počítače pomocí ScriptRunConfig je následující:
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 = parent_run.submit_child(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()
Podrobnosti o konfiguraci spuštění najdete v tématu submit.
tag
Označte spuštění pomocí klíče řetězce a volitelné hodnoty řetězce.
tag(key, value=None)
Parametry
Name | Description |
---|---|
key
Vyžadováno
|
Klíč značky |
value
|
Volitelná hodnota značky Default value: None
|
Poznámky
Značky a vlastnosti při spuštění jsou slovníky řetězce -> string. Rozdíl mezi nimi je v proměnlivosti: Značky se dají nastavit, aktualizovat a odstranit, zatímco Vlastnosti se dají jenom přidávat. Díky tomu jsou vlastnosti vhodnější pro triggery chování související se systémem nebo pracovními postupy, zatímco značky jsou obecně určené pro uživatele a jsou smysluplné pro uživatele experimentu.
run = experiment.start_logging()
run.tag('DeploymentCandidate')
run.tag('modifiedBy', 'Master CI')
run.tag('modifiedBy', 'release pipeline') # Careful, tags are mutable
run.add_properties({'BuildId': os.environ.get('VSTS_BUILD_ID')}) # Properties are not
tags = run.get_tags()
# tags = { 'DeploymentCandidate': None, 'modifiedBy': 'release pipeline' }
take_snapshot
Uložte snímek vstupního souboru nebo složky.
take_snapshot(file_or_folder_path)
Parametry
Name | Description |
---|---|
file_or_folder_path
Vyžadováno
|
Soubor nebo složka obsahující zdrojový kód spuštění. |
Návraty
Typ | Description |
---|---|
Vrátí ID snímku. |
Poznámky
Snímky mají být zdrojovým kódem použitým ke spuštění experimentu. Ty se ukládají spolu se spuštěním, aby bylo možné zkušební verzi spuštění replikovat v budoucnu.
Poznámka
Snímky se pořizují automaticky při submit zavolání. Tato metoda take_snapshot se obvykle vyžaduje pouze pro interaktivní spuštění (poznámkového bloku).
upload_file
Nahrajte soubor do záznamu spuštění.
upload_file(name, path_or_stream, datastore_name=None)
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název souboru, který se má nahrát. |
path_or_stream
Vyžadováno
|
Relativní místní cesta nebo datový proud k souboru, který se má nahrát. |
datastore_name
Vyžadováno
|
Volitelný název úložiště dat |
Návraty
Typ | Description |
---|---|
Poznámky
run = experiment.start_logging()
run.upload_file(name='important_file', path_or_stream="path/on/disk/file.txt")
Poznámka
Spustí automaticky zachytávání souboru v zadaném výstupním adresáři, který u většiny typů spuštění používá výchozí hodnotu ./outputs. Upload_file používejte jenom v případě, že je potřeba nahrát další soubory nebo není zadaný výstupní adresář.
upload_files
Nahrajte soubory do záznamu spuštění.
upload_files(names, paths, return_artifacts=False, timeout_seconds=None, datastore_name=None)
Parametry
Name | Description |
---|---|
names
Vyžadováno
|
Názvy souborů, které se mají nahrát. Pokud je tato možnost nastavená, musí být nastaveny také cesty. |
paths
Vyžadováno
|
Relativní místní cesty k souborům, které se mají nahrát. Pokud je nastavená, jsou názvy povinné. |
return_artifacts
Vyžadováno
|
Označuje, že pro každý nahraný soubor by se měl vrátit objekt artefaktu. |
timeout_seconds
Vyžadováno
|
Časový limit pro nahrávání souborů. |
datastore_name
Vyžadováno
|
Volitelný název úložiště dat |
Poznámky
upload_files
má stejný vliv jako upload_file
na samostatné soubory, ale při použití upload_files
má výhody z hlediska výkonu a využití prostředků.
import os
run = experiment.start_logging()
file_name_1 = 'important_file_1'
file_name_2 = 'important_file_2'
run.upload_files(names=[file_name_1, file_name_2],
paths=['path/on/disk/file_1.txt', 'other/path/on/disk/file_2.txt'])
run.download_file(file_name_1, 'file_1.txt')
os.mkdir("path") # The path must exist
run.download_file(file_name_2, 'path/file_2.txt')
Poznámka
Spustí automatické zachytávání souborů v zadaném výstupním adresáři, který u většiny typů spuštění ve výchozím nastavení používá hodnotu ./outputs. Upload_files používejte pouze v případě, že je potřeba nahrát další soubory nebo není zadán výstupní adresář.
upload_folder
Nahrajte zadanou složku do zadaného názvu předpony.
upload_folder(name, path, datastore_name=None)
Parametry
Name | Description |
---|---|
name
Vyžadováno
|
Název složky souborů, které se mají nahrát. |
folder
Vyžadováno
|
Relativní místní cesta ke složce, kterou chcete nahrát. |
datastore_name
Vyžadováno
|
Volitelný název úložiště dat |
Poznámky
run = experiment.start_logging()
run.upload_folder(name='important_files', path='path/on/disk')
run.download_file('important_files/existing_file.txt', 'local_file.txt')
Poznámka
Spustí automatické zachytávání souborů v zadaném výstupním adresáři, který u většiny typů spuštění ve výchozím nastavení používá hodnotu ./outputs. Upload_folder používejte pouze v případě, že je potřeba nahrát další soubory nebo není zadán výstupní adresář.
wait_for_completion
Počkejte na dokončení tohoto spuštění. Vrátí objekt stavu po čekání.
wait_for_completion(show_output=False, wait_post_processing=False, raise_on_error=True)
Parametry
Name | Description |
---|---|
show_output
|
Určuje, jestli se má zobrazit výstup spuštění na sys.stdout. Default value: False
|
wait_post_processing
|
Určuje, jestli se má počkat na dokončení následného zpracování po dokončení spuštění. Default value: False
|
raise_on_error
|
Označuje, jestli je vyvolána chyba, když je spuštění ve stavu selhání. Default value: True
|
Návraty
Typ | Description |
---|---|
Objekt stavu. |
Atributy
description
Vraťte popis spuštění.
Volitelný popis spuštění je řetězec zadaný uživatelem, který je užitečný pro popis spuštění.
Návraty
Typ | Description |
---|---|
Popis spuštění. |
display_name
Vrátí zobrazovaný název spuštění.
Volitelný zobrazovaný název spuštění je řetězec zadaný uživatelem, který je užitečný pro pozdější identifikaci spuštění.
Návraty
Typ | Description |
---|---|
Zobrazovaný název spuštění. |
experiment
Získejte experiment obsahující spuštění.
Návraty
Typ | Description |
---|---|
Načte experiment odpovídající spuštění. |
id
Získejte ID spuštění.
ID spuštění je identifikátor jedinečný v rámci experimentu, který obsahuje.
Návraty
Typ | Description |
---|---|
ID spuštění. |
name
ZASTARALÉ. Použijte display_name.
Volitelný název spuštění je řetězec zadaný uživatelem, který je užitečný pro pozdější identifikaci spuštění.
Návraty
Typ | Description |
---|---|
ID spuštění. |
number
Získejte číslo spuštění.
Monotónně rostoucí číslo představující pořadí spuštění v rámci experimentu.
Návraty
Typ | Description |
---|---|
Číslo spuštění. |
parent
Načtěte nadřazené spuštění pro toto spuštění ze služby.
Spuštění můžou mít volitelný nadřazený objekt, což vede k potenciální stromové hierarchii spuštění. Pokud chcete protokolovat metriky do nadřazeného běhu, použijte metodu log nadřazeného objektu, run.parent.log()
například .
Návraty
Typ | Description |
---|---|
Nadřazené spuštění nebo Žádné, pokud není nastaveno. |
properties
Vrátí neměnné vlastnosti tohoto spuštění.
Návraty
Typ | Description |
---|---|
Vlastnosti spuštění uložené místně v mezipaměti. |
Poznámky
Vlastnosti zahrnují neměnné systémově generované informace, jako je doba trvání, datum spuštění, uživatel atd.
status
Vrátí stav objektu spuštění.
tags
Při tomto spuštění vraťte sadu proměnlivých značek.
Návraty
Typ | Description |
---|---|
Značky uložené v objektu spuštění. |
type
Získejte typ spuštění.
Označuje, jak bylo spuštění vytvořeno nebo nakonfigurováno.
Návraty
Typ | Description |
---|---|
Typ spuštění. |