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 |
Stáhněte soubory z dané předpony úložiště (název složky) nebo z celého kontejneru, pokud není předpona určená. |
fail |
Označte spuštění jako neúspěšné. Volitelně nastavte 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íská všechny podřízené položky pro aktuální spuštění vybrané pomocí zadaných filtrů. |
get_context |
Vrátí 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 spuštění ve stavu Zařazeno do fronty, 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í, která byla použita při tomto spuštění. |
get_file_names |
Vypíše soubory, které jsou uloženy ve spojení se spuštěním. |
get_metrics |
Načtěte metriky zaprotokolované ke spuštění. Pokud |
get_properties |
Načte ze služby nejnovější vlastnosti spuštění. |
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íská 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 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_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ů Tím se zaznamená 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 binované a směrodatné odchylky se počítají pro chybové úsečky ve spojnicovém grafu. |
log_residuals |
Protokolujte rezidua do úložiště artefaktů. Tím se protokolují data potřebná k zobrazení histogramu reziduí pro regresní úlohu. Rezidua jsou predikována – skutečná. Počet počtů by měl být o jednu hranu vyšší. 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 běhu 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 zprovoznění |
remove_tags |
Odstraňte seznam proměnlivý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, které nejsou předány ve slovníku, zůstanou nedotčené. Můžete také přidat jednoduché značky řetězců. Pokud 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ý aktér. |
submit_child |
Odešlete experiment a vrátíte 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
Stáhněte soubory z dané předpony úložiště (název složky) nebo z celého kontejneru, pokud není předpona určená.
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í v dávce. Výchozí hodnota je 100 souborů. |
append_prefix
Vyžadováno
|
Volitelný příznak, jestli se má zadaná předpona připojit 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ě nastavte 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á událost stavu odeslat ke 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
|
Obsahující pracovní prostor. |
run_id
Vyžadováno
|
ID spuštění. |
Návraty
Typ | Description |
---|---|
Odeslané spuštění. |
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án, 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íská všechny podřízené položky pro aktuální spuštění vybrané pomocí zadaných filtrů.
get_children(recursive=False, tags=None, properties=None, type=None, status=None, _rehydrate_runs=True)
Parametry
Name | Description |
---|---|
recursive
|
Určuje, jestli se má projít všemi potomky. 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 zadaný, vrátí spuštění odpovídající zadané vlastnosti nebo {"property": "value"}. Default value: None
|
type
|
Pokud je zadaný, vrátí spuštění odpovídající tomuto typu. Default value: None
|
status
|
Pokud je zadaný, vrátí spuštění se zadaným stavem "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átí 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í), akce proti objektu Run se vytisknou 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
|
Umožněte kontextu služby vrátit se 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é spuštění. |
Poznámky
Tato funkce se běžně používá k načtení ověřeného objektu Run uvnitř skriptu, který se odešle ke spuštění prostřednictvím příkazu experiment.submit(). Tento spuštěný objekt 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 spuštění ve stavu Zařazeno do fronty, 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 jako hodnota vrácená z get_status().
details: 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 jako hodnota vrácená 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 neúspěšné) v ISO8601.
Tento klíč neexistuje, pokud spuštění stále probíhá.
properties: Neměnné páry klíč-hodnota přidružené ke spuštění. Mezi výchozí vlastnosti patří ID snímku spuštění a informace o úložišti Git, ze kterého se spuštění vytvořilo (pokud existuje). Další vlastnosti je možné přidat do spuštění pomocí příkazu add_properties.
inputDatasets: Vstupní datové sady přidružené ke spuštění.
outputDatasets: Výstupní datové sady přidružené ke spuštění.
Logfiles
odeslal(a)
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í, která byla použita při tomto spuštění.
get_environment()
Návraty
Typ | Description |
---|---|
Vraťte objekt prostředí. |
get_file_names
Vypíše soubory, které jsou uloženy 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 zaprotokolované ke spuštění.
Pokud recursive
je hodnota True (ve výchozím nastavení False), 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, jestli se má projít všemi potomky. 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čte ze služby nejnovější vlastnosti spuštění.
get_properties()
Návraty
Typ | Description |
---|---|
Vlastnosti spuštění. |
Poznámky
Vlastnosti jsou neměnné systémem 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í 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ý chcete vrátit tajný kód. |
Návraty
Typ | Description |
---|---|
Hodnota tajného kódu. |
get_secrets
Získá 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 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(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 – jedná se o dočasný stav objektů spuštění na straně klienta, které jsou v 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, když se pro danou úlohu vytváří výpočetní prostředky na vyžádání.
Příprava – připravuje se prostředí spuštění:
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ů
Tím se zaznamená 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 binované 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
Protokolujte rezidua do úložiště artefaktů.
Tím se protokolují data potřebná k zobrazení histogramu reziduí pro regresní úlohu. Rezidua jsou predikována – skutečná.
Počet počtů by měl být o jednu hranu vyšší. 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 běhu 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í log_row
se vytvoří metrika tabulky se sloupci, jak je popsáno v kwargs. Každý pojmenovaný parametr vygeneruje sloupec se zadanou hodnotou.
log_row
lze volat jednou za účelem protokolování libovolné řazené kolekce členů nebo vícekrá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, ve kterém jsou klíče sloupce, které se mají publikovat do služby. |
description
Vyžadováno
|
Volitelný popis metriky. |
register_model
Registrace modelu pro zprovoznění
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/modelname".
Pokud není zadán (Žádný), 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
|
Rámec 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 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ředku 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 proměnlivý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áno, použije se nejnovější. Default value: None
|
path
|
Cesta, kam je stažený soubor ZIP uložen. Default value: None
|
Návraty
Typ | Description |
---|---|
Cesta. |
set_tags
Přidejte nebo upravte sadu značek za běhu. Značky, které nejsou předány ve slovníku, zůstanou nedotčené.
Můžete také přidat jednoduché značky řetězců. Pokud 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 run. |
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ý aktér.
start()
submit_child
Odešlete experiment a vrátíte aktivní podřízené spuštění.
submit_child(config, tags=None, **kwargs)
Parametry
Name | Description |
---|---|
config
Vyžadováno
|
Konfigurace, která má být odeslána. |
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 odeslání pro konfigurace |
Návraty
Typ | Description |
---|---|
Objekt spuštění. |
Poznámky
Odeslat je asynchronní volání platformy Azure Machine Learning ke spuštění zkušební verze na místním nebo vzdáleném hardwaru. V závislosti na konfiguraci nástroj Submit automaticky připraví vaše spouštěcí prostředí, spustí kód a zachytí 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í, jak se má experiment spustit. 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 string -> 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ím postupem, zatímco značky jsou obecně pro uživatele a 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í společně se spuštěním, aby bylo možné zkušební verzi spustit v budoucnu replikovat.
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 stream 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í ve výchozím nastavení používá 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 také nastaveny 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 měl být vrácen 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ý účinek jako upload_file
u samostatných souborů, při použití upload_files
však existují výhody 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í. |