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í se používají k monitorování asynchronního spuštění zkušební verze, metrik protokolů a ukládání výstupu zkušební verze a k analýze výsledků a přístupových artefaktů generovaných 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í AutoML. Objekt Spustit se vytvoří také vy submit nebo start_logging s Experiment třídou.
Pokud chcete začít s experimenty a spuštěními, přečtěte si téma
Inicializace objektu Spustit
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íkdalšíchch |
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íkdalšíchch |
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, metrik protokolů 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á uvnitř 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 metrik a výsledků generovaných.
Funkce Spustit zahrnuje:
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ý lze zprovoznit
Ukládání, úpravy 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í vytváření snímků souboru nebo adresáře pro reprodukovatelnost
Tato třída pracuje s Experiment těmito scénáři:
Vytvoření spuštění 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 způsob spuštění experimentu. 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 můžete do spuštění přidat následující metriky.
Skalární
Log a numeric or string value to the run with the given name using log. Protokolování metriky ke spuštění způsobí, že se metrika uloží do záznamu spuštění v experimentu. Stejnou metriku můžete během spuštění protokolovat vícekrát. Výsledek se považuje za vektor této metriky.
Příklad:
run.log("accuracy", 0.95)
Seznam
Zapíše do spuštění seznam hodnot s daným názvem pomocí log_list.
Příklad:
run.log_list("accuracies", [0.6, 0.7, 0.87])
Řada
Použití log_row vytvoří metriku s více sloupci, jak je popsáno v tématu
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 pro vygenerování úplné tabulky.Příklad:
run.log_row("Y over X", x=1, y=0.4)
Tabulka
Log a dictionary object to the run with the given name using log_table.
Příklad:
run.log_table("Y over X", {"x":[1, 2, 3], "y":[0.6, 0.7, 0.89]})
Obrázek
Zaznamenejte image do záznamu spuštění. Slouží log_image k protokolování souboru obrázku nebo diagramu matplotlib ke spuštění. Tyto image 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 vytvoří 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 Značky 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 je přidružená úloha s nastaveným polem cancel_uri, ukončete tuto úlohu také. |
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 předpona předpony není zadána, stáhněte si soubory z dané předpony úložiště (název složky) nebo 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 . |
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átí aktuální kontext služby. Tuto metodu použijte k načtení kontextu aktuální 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 protokolu a další podrobnosti o spuštění. |
get_details_with_logs |
Návratový stav spuštění, včetně obsahu souboru protokolu. |
get_environment |
Získejte definici prostředí používanou tímto spuštěním. |
get_file_names |
Zobrazte seznam souborů uložených v přidružení ke spuštění. |
get_metrics |
Načtěte metriky protokolované ke spuštění. Pokud |
get_properties |
Načtěte nejnovější vlastnosti spuštění ze služby. |
get_secret |
Získá hodnotu tajného kódu 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 ve službě 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ů v 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 kódu odkazuje na hodnotu uloženou ve službě 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ů v trénovacích spuštěních. |
get_snapshot_id |
Získejte nejnovější ID snímku. |
get_status |
Načtěte nejnovější stav spuštění. Mezi vrácené běžné hodnoty patří Running (Spuštěno), Completed (Dokončeno) a Failed (Selhání). |
get_submitted_run |
ZAVRHOVANÝ. Použijte get_context. Získejte odeslané spuštění pro tento experiment. |
get_tags |
Načtěte nejnovější sadu proměnlivých značek při spuštění ze služby. |
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 |
Zapíše 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 metrika s více použitím, která není skalární, která se dá použít k vytvoření více typů spojnicových grafů, které se průběžně liší v prostoru předpovídaných pravděpodobností. Příkladem těchto grafů jsou ROC, přesnost a křivky metodou "lift". Výpočet tabulky přesnosti je podobný výpočtu křivky ROC. Křivka ROC ukládá skutečné kladné míry a falešně pozitivní sazby v mnoha různých prahových hodnotách pravděpodobnosti. Tabulka přesnosti ukládá nezpracovaný počet pravdivě pozitivních výsledků, falešně pozitivních výsledků, pravdivě negativních výsledků a falešně negativních výsledků v 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 v tom, jak vzorkují z prostoru předpovídané pravděpodobnosti. Prahové hodnoty pravděpodobnosti jsou rovnoměrně rozložené prahové hodnoty 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, sekunda na 25. percentilu, třetí na 50. a tak dále. Tabulky pravděpodobnosti a percentilové tabulky jsou 3D seznamy, kde první dimenze představuje popisek třídy, druhá dimenze představuje vzorek na 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í jedné vs. strategie rest. Další podrobnosti najdete na následujícím odkazu: https://en.wikipedia.org/wiki/Multiclass_classification N = # vzorků v ověřovací datové sadě (v příkladu 200) M = # prahové hodnoty = # vzorky odebrané z prostoru pravděpodobnosti (5 v příkladu) C = # třídy v úplné datové sadě (3 v příkladu) Některé invarianty tabulky přesnosti:
Poznámka: M může být libovolná hodnota a řídí rozlišení grafů, které jsou nezávislé na datové sadě, jsou definovány při výpočtu metrik a vymění prostor úložiště, výpočetní čas 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 plovoucí. |
log_confusion_matrix |
Zapíše do úložiště artefaktů konfuzní matici. Tím se zaprotokoluje obálka kolem konfuzní matice sklearnu. Data metrik obsahují popisky tříd a seznam 2D 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 |
Zaznamenejte do záznamu spuštění metriku image. |
log_list |
Zapíše do spuštění seznam hodnot metrik s daným názvem. |
log_predictions |
Predikce protokolů 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 |
Protokolovat rezidua do úložiště artefaktů Tím se zaznamená data potřebná k zobrazení histogramu reziduí pro regresní úlohu. Rezidua jsou predikována – skutečná. Měl by existovat ještě jeden okraj než počet počtů. Příklady použití počtů a hran k reprezentaci histogramu najdete v dokumentaci k numpy histogramu. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html |
log_row |
Zaznamená do spuštění metriku řádku s daným názvem. |
log_table |
Log a table metric to the run with the given name. |
register_model |
Zaregistrujte model pro operacionalizaci. |
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 při spuštění. Značky, které nejsou předány 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( Žádné). 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šlete 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 daného názvu předpony. |
wait_for_completion |
Počkejte na dokončení tohoto spuštění. Vrátí stavový objekt 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 vytvoří 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 Značky a hledání spuštění.
add_properties(properties)
Parametry
Name | Description |
---|---|
properties
Vyžadováno
|
Skryté vlastnosti uložené v objektu run. |
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. Příklady zahrnují "hyperdrive" nebo "azureml.scriptrun", ale dají se 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 je přidružená úloha s nastaveným polem cancel_uri, ukončete tuto úlohu také.
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 určený pro "část". Default value: None
|
run_id
|
Volitelné ID spuštění pro podřízenou položku, jinak se automaticky vygeneruje. Obvykle tento parametr není nastaven. Default value: None
|
outputs
|
Volitelný výstupní adresář, který se má sledovat pro podřízené. Default value: None
|
Návraty
Typ | Description |
---|---|
Podřízený běh. |
Poznámky
Slouží k izolaci části pododdílu. To lze provést pro identifikovatelné "části" spuštění, které jsou zajímavé k oddělení, nebo k zachycení nezávislých metrik v rámci meziprocesu.
Pokud je pro podřízené spuštění nastaven výstupní adresář, obsah tohoto adresáře se po dokončení podřízeného záznamu spuštění 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ýchsouborůch |
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á událost stavu odeslat ke 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 objektech. Default value: None
|
tag_Values
Vyžadováno
|
Volitelný seznam hodnot mapovaných na Značky[tag_key] pro seznam vytvořených spuštění. |
tag_values
|
Default value: None
|
Návraty
Typ | Description |
---|---|
Seznampodřízených |
Poznámky
count
Parametr OR parametry tag_key
AND tag_values
musí být zadán.
download_file
download_files
Pokud předpona předpony není zadána, stáhněte si soubory z dané předpony úložiště (název složky) nebo 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 cesty k souboru v kontejneru, ze kterého chcete 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 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 má být připojena zadaná předpona z konečné výstupní cesty k souboru. Pokud je false, předpona se odebere z cesty k výstupnímu souboru. |
timeout_seconds
Vyžadováno
|
Časový limit 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 .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 úloh Default value: 300
|
get
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í zadaný, vytvoří se v adresáři projektu adresář pojmenovaný jako 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á provést rekurse prostřednictvím všech potomků. Default value: False
|
tags
|
Pokud je zadáno, vrátí spuštění odpovídající zadané "tag" nebo {"tag": "value"}. Default value: None
|
properties
|
Pokud je zadáno, vrátí spuštění odpovídající zadané vlastnosti nebo {"property": "value"}. 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 zadaným stavem "status". Default value: None
|
_rehydrate_runs
|
Určuje, zda 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.
Tuto metodu použijte k načtení kontextu aktuální služby pro protokolování metrik a nahrávání souborů. Pokud allow_offline
je true (výchozí), akce proti objektu Spustit se vytisknou na standardní hodnotu.
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 kontextu služby návrat do offline režimu, aby bylo možné trénovací skript testovat místně bez odeslání úlohy pomocí sady SDK. True ve výchozím nastavení. 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 Spustit uvnitř skriptu, který se má odeslat k provedení prostřednictvím experiment.submit(). Tento objekt spuštění je ověřený kontext pro komunikaci se službami Azure Machine Learning a koncepční kontejner, 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
stav: Aktuální stav spuštění. Stejná hodnota jako vrácená 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 protokolu 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ílové
stav: Aktuální stav spuštění. Stejná hodnota jako vrácená z get_status().
startTimeUtc: čas UTC spuštění v ISO8601.
endTimeUtc: čas UTC dokončení tohoto spuštění (dokončeno nebo neúspěšné) v ISO8601.
Tento klíč neexistuje, pokud spuštění stále probíhá.
properties: Immutable key-value pairs associated with the run. Výchozí vlastnosti zahrnují ID snímku spuštění a informace o úložišti Git, ze kterého se spuštění vytvořilo (pokud existuje). Do spuštění lze přidat další vlastnosti pomocí 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
odeslaný uživatelem
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
Návratový 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í používanou tímto spuštěním.
get_environment()
Návraty
Typ | Description |
---|---|
Vrátí objekt prostředí. |
get_file_names
get_metrics
Načtěte metriky protokolované ke spuštění.
Pokud recursive
je true (false ve výchozím nastavení), 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á provést rekurse prostřednictvím všech potomků. Default value: False
|
run_type
|
Default value: None
|
populate
|
Určuje, zda 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é vygenerované 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, uloží se informace o úložišti jako vlastnosti. Tyto vlastnosti Gitu se při vytváření spuštění nebo volání Experiment.submit přidají. Další informace o vlastnostech Gitu najdete v tématu Integrace Gitu pro Azure Machine Learning.
get_secret
Získá hodnotu tajného kódu 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 ve službě 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ů v 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í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 kódu odkazuje na hodnotu uloženou ve službě 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ů v 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é mají být vráceny 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
get_status
Načtěte nejnovější stav spuštění.
Mezi vrácené běžné hodnoty patří Running (Spuštěno), Completed (Dokončeno) a Failed (Selhání).
get_status()
Návraty
Typ | Description |
---|---|
Nejnovější stav. |
Poznámky
NotStarted – Jedná se o dočasné objekty Run na straně klienta před odesláním 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áceno při vytváření výpočetních prostředků na vyžádání pro odeslání dané úlohy.
Příprava – Připravuje se běhové 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 stavu 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.
Dokončení – Uživatelský kód byl dokončen a spuštění je ve fázích následného zpracování.
CancelRequested – Pro úlohu bylo požadováno zrušení.
Dokončeno – spuštění bylo úspěšně dokončeno. To zahrnuje uživatelský kód i spuštění.
fáze následného zpracování.
Selhání – Spuštění se nezdařilo. Vlastnost Error při spuštění obvykle poskytne podrobnosti o tom, proč.
Zrušeno – následuje žádost o zrušení a indikuje, že spuštění je nyní úspěšně zrušeno.
Nereaguje – U spuštění s povolenými prezenčními signály se nedávno neodesílalo žádné prezenční signály.
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
ZAVRHOVANÝ. 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 nejnovější sadu proměnlivých značek při spuštění ze služby.
get_tags()
Návraty
Typ | Description |
---|---|
Značky uložené na objektu run. |
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 zadáno, vrátí spuštění odpovídající zadanému typu. Default value: None
|
tags
|
Pokud je zadáno, vrátí spuštění odpovídající zadané "tag" nebo {"tag": "value"}. Default value: None
|
properties
|
Pokud je zadáno, vrátí spuštění odpovídající zadané vlastnosti nebo {"property": "value"}. Default value: None
|
status
|
Pokud je zadáno, 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í, nejen ty nejvyšší úrovně. Default value: False
|
_rehydrate_runs
|
Pokud je nastavena hodnota True (ve výchozím nastavení), použije registrovaný zprostředkovatel k obnovení objektu pro tento typ místo základního spuštění. Default value: True
|
Návraty
Typ | Description |
---|---|
Seznamspuštěních |
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
|
Obsahuje výpočetní prostředky. |
type
|
Pokud je zadáno, vrátí spuštění odpovídající zadanému typu. Default value: None
|
tags
|
Pokud je zadáno, vrátí spuštění odpovídající zadané "tag" nebo {"tag": "value"}. Default value: None
|
properties
|
Pokud je zadáno, vrátí spuštění odpovídající zadané vlastnosti nebo {"property": "value"}. Default value: None
|
status
|
Pokud je zadáno, vrátí spuštění se zadaným stavem "status". Povolené hodnoty jsou "Spuštěno" a "Zařazeno do fronty". Default value: None
|
Návraty
Typ | Description |
---|---|
<xref:builtin.generator>
|
generátor ~_restclient.models.RunDto |
log
Zapíše 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á se má publikovat do služby. |
description
Vyžadováno
|
Volitelný popis metriky. |
step
|
Volitelná osa pro zadání pořadí hodnot v rámci metriky. Default value: None
|
Poznámky
Protokolování metriky ke spuštění způsobí, že se metrika uloží do záznamu spuštění v experimentu. Stejnou metriku můžete během spuštění protokolovat vícekrát. Výsledek se považuje za vektor této metriky. Pokud je krok zadán pro metriku, 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 metrika s více použitím, která není skalární, která se dá použít k vytvoření více typů spojnicových grafů, které se průběžně liší v prostoru předpovídaných pravděpodobností. Příkladem těchto grafů jsou ROC, přesnost a křivky metodou "lift".
Výpočet tabulky přesnosti je podobný výpočtu křivky ROC. Křivka ROC ukládá skutečné kladné míry a falešně pozitivní sazby v mnoha různých prahových hodnotách pravděpodobnosti. Tabulka přesnosti ukládá nezpracovaný počet pravdivě pozitivních výsledků, falešně pozitivních výsledků, pravdivě negativních výsledků a falešně negativních výsledků v 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 v tom, jak vzorkují z prostoru předpovídané pravděpodobnosti.
Prahové hodnoty pravděpodobnosti jsou rovnoměrně rozložené prahové hodnoty 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, sekunda na 25. percentilu, třetí na 50. a tak dále.
Tabulky pravděpodobnosti a percentilové tabulky jsou 3D seznamy, kde první dimenze představuje popisek třídy, druhá dimenze představuje vzorek na 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í jedné vs. strategie rest. Další podrobnosti najdete na následujícím odkazu: https://en.wikipedia.org/wiki/Multiclass_classification
N = # vzorků v ověřovací datové sadě (v příkladu 200) M = # prahové hodnoty = # vzorky odebrané z prostoru pravděpodobnosti (5 v příkladu) C = # třídy v úplné datové sadě (3 v příkladu)
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á ve všech prahových hodnotách pro libovolnou třídu.
- TN + FP je stejná ve všech prahových hodnotách pro libovolnou třídu.
- Tabulky pravděpodobnosti a percentilové tabulky mají tvar [C, M, 4]
Poznámka: M může být libovolná hodnota a řídí rozlišení grafů, které jsou nezávislé na datové sadě, jsou definovány při výpočtu metrik a vymění prostor úložiště, výpočetní čas 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 plovoucí.
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 zaprotokoluje obálka kolem konfuzní matice sklearnu. Data metrik obsahují popisky tříd a seznam 2D 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
Zaznamenejte 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 datový proud 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 image budou viditelné a srovnatelné v záznamu spuštění.
log_list
log_predictions
Predikce protokolů 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 předpovědí. |
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ů
Tím se zaznamená data potřebná k zobrazení histogramu reziduí pro regresní úlohu. Rezidua jsou predikována – skutečná.
Měl by existovat ještě jeden okraj než počet počtů. Příklady použití počtů a hran k reprezentaci histogramu najdete v dokumentaci k numpy histogramu. 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
Zaznamená 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
Použití log_row
vytvoří metriku tabulky se sloupci popsanými 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 pro vygenerování úplné tabulky.
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
Log a table metric to the run with the given name.
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í do služby publikovat. |
description
Vyžadováno
|
Volitelný popis metriky. |
register_model
Zaregistrujte model 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/modelname".
Pokud není zadána (Žádná), Default value: None
|
tags
|
Slovník značek klíčových hodnot, které se mají přiřadit k modelu. Default value: None
|
properties
|
Slovník vlastností klíč-hodnota, které se mají přiřadit k modelu. Tyto vlastnosti nelze po vytvoření modelu změnit, ale je možné přidat nové páry klíč-hodnota. 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 řazených kolekcí členů, kde první prvek popisuje vztah modelu datové sady a druhý prvek je datová sada. Default value: None
|
sample_input_dataset
|
Volitelný. Ukázková vstupní datová sada pro zaregistrovaný model Default value: None
|
sample_output_dataset
|
Volitelný. Ukázková výstupní datová sada pro registrovaný model Default value: None
|
resource_configuration
|
Volitelný. Konfigurace prostředků pro spuštění registrované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é chcete odebrat. |
Návraty
Typ | Description |
---|---|
Značky uložené na objektu run |
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é chcete obnovit. Pokud není zadána, použije se nejnovější verze. Default value: None
|
path
|
Cesta, kam je stažený zip uložen. Default value: None
|
Návraty
Typ | Description |
---|---|
Cesta. |
set_tags
Přidejte nebo upravte sadu značek při spuštění. Značky, které nejsou předány 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( Žádné). 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ý objekt actor.
start()
submit_child
Odešlete 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žité v funkci submit pro konfigurace. |
Návraty
Typ | Description |
---|---|
Objekt spuštění. |
Poznámky
Odeslání 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 odešle automaticky připraví spouštěcí prostředí, spustí váš kód a zachytí zdrojový kód a výsledky do historie spuštění experimentu.
Pokud chcete odeslat experiment, 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 následujícího postupu:
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 tom, jak nakonfigurovat 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 spuštění jsou slovníky řetězce –> řetězec. Rozdíl mezi nimi je proměnlivost: Značky je možné nastavit, aktualizovat a odstranit, zatímco vlastnosti lze přidat pouze. 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ě uživatelsky přístupné 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 jsou určené jako zdrojový kód použitý ke spuštění experimentu. Ty se ukládají se spuštěním, aby bylo možné zkušební verzi spustit v budoucnu replikovat.
Poznámka:
Snímky se po zavolání automaticky pořídí submit . Obvykle se tato metoda take_snapshot vyžaduje pouze pro interaktivní spuštění (poznámkový blok).
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ý chcete 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ý pro většinu typů spuštění výchozí hodnotu ./outputs. Používejte upload_file 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 nastavená sada, musí být také nastaveny cesty. |
paths
Vyžadováno
|
Relativní místní cesty k souborům, které se mají nahrát. Pokud je sada nastavená, názvy se vyžadují. |
return_artifacts
Vyžadováno
|
Označuje, že objekt artefaktu by se měl vrátit pro každý nahraný soubor. |
timeout_seconds
Vyžadováno
|
Časový limit pro nahrá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ů, ale při použití upload_files
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í automaticky zachytávání souborů v zadaném výstupním adresáři, který pro většinu typů spuštění ve výchozím nastavení používá hodnotu ./outputs. Použijte upload_files pouze v případě, že je potřeba nahrát další soubory nebo není zadaný výstupní adresář.
upload_folder
Nahrajte zadanou složku do dané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í automaticky zachytávání souborů v zadaném výstupním adresáři, který pro většinu typů spuštění ve výchozím nastavení používá hodnotu ./outputs. Použijte upload_folder pouze v případě, že je potřeba nahrát další soubory nebo není zadaný výstupní adresář.
wait_for_completion
Počkejte na dokončení tohoto spuštění. Vrátí stavový objekt po čekání.
wait_for_completion(show_output=False, wait_post_processing=False, raise_on_error=True)
Parametry
Name | Description |
---|---|
show_output
|
Určuje, zda se má zobrazit výstup spuštění v sys.stdout. Default value: False
|
wait_post_processing
|
Určuje, jestli se má po dokončení spuštění počkat na dokončení následného zpracování. Default value: False
|
raise_on_error
|
Určuje, jestli je při spuštění ve stavu selhání vyvolána chyba. Default value: True
|
Návraty
Typ | Description |
---|---|
Stavový objekt. |
Atributy
description
Vrátí 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 uživatelem zadaný řetězec 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í běhu. |
id
Získejte ID spuštění.
ID spuštění je identifikátor jedinečný v rámci obsahujícího experimentu.
Návraty
Typ | Description |
---|---|
ID spuštění. |
name
ZAVRHOVANÝ. 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í.
Monotonicky 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 volitelnou nadřazenou položku, což vede k potenciální stromové hierarchii spuštění. Pokud chcete protokolovat metriky do nadřazeného spuštění, použijte log metodu nadřazeného objektu, run.parent.log()
například .
Návraty
Typ | Description |
---|---|
Nadřazené spuštění nebo Žádné, pokud není nastaveno. |
properties
status
Vrátí stav objektu spuštění.
tags
Vrátí sadu proměnlivých značek při tomto spuštění.
Návraty
Typ | Description |
---|---|
Značky uložené na objektu run. |
type
Získejte typ spuštění.
Určuje, jak se spuštění vytvořilo nebo nakonfigurovalo.
Návraty
Typ | Description |
---|---|
Typ spuštění. |