Rozhraní příkazového řádku (v2) Schéma úlohy YAML automatizovaného prognózování ML
PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)
Zdrojové schéma JSON najdete na adrese https://azuremlschemas.azureedge.net/latest/autoMLForecastingJob.schema.json
Poznámka
Syntaxe YAML podrobně popsaná v tomto dokumentu je založená na schématu JSON pro nejnovější verzi rozšíření ML CLI v2. Tato syntaxe zaručuje, že bude fungovat jenom s nejnovější verzí rozšíření ML CLI v2. Schémata pro starší verze rozšíření najdete na adrese https://azuremlschemasprod.azureedge.net/.
Syntaxe YAML
Klíč | Typ | Popis | Povolené hodnoty | Výchozí hodnota |
---|---|---|---|---|
$schema |
řetězec | Umístění nebo adresa URL pro načtení schématu YAML Pokud uživatel použije rozšíření Azure Machine Learning VS Code k vytvoření souboru YAML, včetně $schema v horní části souboru, umožní uživateli vyvolat doplňování schématu a prostředků. |
||
compute |
řetězec | Požadované. Název výpočetní infrastruktury AML, ve které se má úloha spustit. Výpočetní prostředky mohou být odkazem na existující výpočetní počítač v pracovním prostoru. Poznámka: Úlohy v kanálu nepodporují místní jako compute . Místní znamená, že výpočetní instance vytvořená v pracovním prostoru studio Azure Machine Learning uživatele. |
1. vzor [^azureml:<compute_name>] pro použití stávajících výpočetních prostředků,2. 'local' použití místního spuštění |
'local' |
limits |
object | Představuje objekt slovníku, který se skládá z konfigurací omezení tabulkové úlohy automatizovaného strojového učení. Klíč je název limitu v kontextu úlohy a hodnota je hodnota limitu. Projděte si omezení a zjistěte vlastnosti tohoto objektu. |
||
name |
řetězec | Název odeslané úlohy automatizovaného strojového učení. Musí být jedinečný pro všechny úlohy v pracovním prostoru. Pokud není zadaný, Azure Machine Learning automaticky vygeneruje identifikátor GUID pro název. |
||
description |
řetězec | Popis úlohy automatizovaného strojového učení | ||
display_name |
řetězec | Název úlohy, kterou chce uživatel zobrazit v uživatelském rozhraní studia. V rámci pracovního prostoru může být jedinečný. Pokud je vynechán, Azure Machine Learning automaticky vygeneruje pro zobrazovaný název identifikátor adjektivního jména čitelný pro člověka. | ||
experiment_name |
řetězec | Název experimentu. Experimenty jsou záznamy trénovacích úloh ML v Azure. Experimenty obsahují výsledky spuštění spolu s protokoly, grafy a grafy. Záznam spuštění každé úlohy je uspořádaný pod odpovídajícím experimentem na kartě Experimenty ve studiu. |
Název pracovního adresáře, ve kterém byl vytvořen | |
environment_variables |
object | Slovníkový objekt proměnných prostředí, který se má nastavit v procesu, ve kterém se příkaz spouští. | ||
outputs |
object | Představuje slovník výstupních konfigurací úlohy. Klíč je název výstupu v kontextu úlohy a hodnota je konfigurace výstupu. Podívejte se na výstup úlohy a zjistěte vlastnosti tohoto objektu. | ||
log_files |
object | Objekt slovníku obsahující protokoly automatizovaného spuštění úlohy ML | ||
log_verbosity |
řetězec | Úroveň podrobností protokolu pro zápis do souboru protokolu. Přijatelné hodnoty jsou definované v knihovně protokolování Pythonu. |
'not_set' , 'debug' , 'info' , 'warning' , 'error' , 'critical' |
'info' |
type |
const | Požadované. Typ úlohy. |
automl |
automl |
task |
const | Požadované. Typ úlohy automatizovaného strojového učení, která se má spustit. |
forecasting |
forecasting |
target_column_name |
řetězec | Požadované. Představuje název sloupce, který má být prognózován. Úloha automatizovaného strojového učení vyvolá chybu, pokud není zadána. |
||
featurization |
object | Objekt slovníku definující konfiguraci vlastního featurizace. V případě, že se nevytvořil, použije konfigurace automatizovaného strojového učení automatickou funkci. Viz featurizace zobrazit vlastnosti tohoto objektu. | ||
forecasting |
object | Objekt slovníku definující nastavení úlohy prognózování. Projděte si prognózy a zjistěte vlastnosti tohoto objektu. | ||
n_cross_validations |
řetězec nebo celé číslo | Počet křížových ověření, která se mají provést při výběru modelu nebo kanálu, pokud validation_data není zadáno.V případě, že parametr a validation_data není zadaný nebo nastavený na None hodnotu , pak ho ve výchozím nastavení nastavte na auto hodnotu Automatizovaná úloha ML. V případě distributed_featurization , že je povolená a validation_data není zadána, je ve výchozím nastavení nastavená na hodnotu 2. |
'auto' , [int] |
None |
primary_metric |
řetězec | Metrika, kterou automatizované strojové učení optimalizuje pro výběr modelu prognózování časových řad. Pokud allowed_training_algorithms se používá tcn_forecaster pro trénování, automatizované strojové učení podporuje pouze normalized_root_mean_squared_error a normalized_mean_absolute_error, které se mají používat jako primary_metric. |
"spearman_correlation" , "normalized_root_mean_squared_error" , "r2_score" "normalized_mean_absolute_error" |
"normalized_root_mean_squared_error" |
training |
object | Objekt slovníku definující konfiguraci, která se používá při trénování modelu. Projděte si trénování a zjistěte vlastnosti tohoto objektu. |
||
training_data |
object | Povinné Objekt slovníku obsahující konfiguraci MLTable definující trénovací data, která se mají použít jako vstup pro trénování modelu. Tato data jsou podmnožinou dat a měla by se skládat jak z nezávislých funkcí nebo sloupců, tak z cílové funkce nebo sloupce. Uživatel může použít zaregistrovanou tabulku MLTable v pracovním prostoru ve formátu :(např. Input(mltable='my_mltable:1')) NEBO může použít místní soubor nebo složku jako mlTable(např. Input(mltable=MLTable(local_path="./data").). Tento objekt musí být zadaný. Pokud cílová funkce ve zdrojovém souboru není, automatizované strojové učení vyvolá chybu. Zkontrolujte trénovací, ověřovací nebo testovací data a zjistěte vlastnosti tohoto objektu. |
||
validation_data |
object | Objekt slovníku obsahující konfiguraci MLTable definující ověřovací data, která se mají použít v experimentu automatizovaného strojového učení pro křížové ověření. Měl by se skládat jak z nezávislých funkcí/sloupců, tak z cílové funkce/sloupce, pokud je tento objekt k dispozici. Ukázky v trénovacích datech a ověřovacích datech se nemůžou překrývat. Projděte si trénovací nebo ověřovací nebo testovací data a zjistěte vlastnosti tohoto objektu. V případě, že tento objekt není definovaný, automatizované strojové učení použije n_cross_validations k rozdělení ověřovacích dat od trénovacích dat definovaných v training_data objektu. |
||
test_data |
object | Objekt slovníku obsahující konfiguraci MLTable definující testovací data, která se mají použít v testovacím běhu pro předpovědi v rámci nejlepšího modelu, a vyhodnocuje model pomocí definovaných metrik. Měl by se skládat pouze z nezávislých funkcí používaných v trénovacích datech (bez cílové funkce), pokud je tento objekt k dispozici. Zkontrolujte trénovací, ověřovací nebo testovací data a zjistěte vlastnosti tohoto objektu. Pokud není k dispozici, automatizované strojové učení použije k návrhu nejlepšího modelu pro odvozování další předdefinované metody. |
Limity
Klíč | Typ | Popis | Povolené hodnoty | Výchozí hodnota |
---|---|---|---|---|
enable_early_termination |
boolean | Představuje, zda povolit ukončení experimentu, pokud se skóre ztráty nezlepší po x počtu iterací. V úloze automatizovaného strojového učení se u prvních 20 iterací nepoužívá žádné předčasné zastavení. Počáteční zastavující okno se spustí až po prvních 20 iteracích. |
true , false |
true |
max_concurrent_trials |
integer | Maximální počet zkušebních pokusů (podřízených úloh), které by se spustily paralelně. Důrazně doporučujeme nastavit počet souběžných spuštění na počet uzlů v clusteru (aml výpočetních prostředků definovaných v compute ). |
1 |
|
max_trials |
integer | Představuje maximální počet zkušebních verzí, které se může úloha automatizovaného strojového učení pokusit spustit trénovací algoritmus s různou kombinací hyperparametrů. Výchozí hodnota je nastavená na 1000. Pokud enable_early_termination je definován, může být počet zkušebních verzí použitých ke spouštění trénovacích algoritmů menší. |
1000 |
|
max_cores_per_trial |
integer | Představuje maximální počet jader na každou zkušební verzi, která jsou k dispozici pro použití. Jeho výchozí hodnota je nastavená na -1, což znamená, že se v procesu používají všechna jádra. | -1 |
|
timeout_minutes |
integer | Maximální doba v minutách, kterou může spuštění odeslané úlohy automatizovaného strojového učení trvat. Po uplynutí zadané doby se úloha ukončí. Tento časový limit zahrnuje nastavení, funkciaturizaci, trénovací běhy, ensembling a vysvětlitelnost modelu (pokud je k dispozici) všech zkušebních verzí. Všimněte si, že nezahrnuje ensembling a vysvětlitelnost modelu spuštění na konci procesu, pokud se úloha nepodaří dokončit v rámci poskytnuté služby timeout_minutes , protože tyto funkce jsou k dispozici po dokončení všech zkušebních verzí (podřízených úloh). Jeho výchozí hodnota je nastavená na 360 minut (6 hodin). Pokud chce uživatel zadat časový limit kratší nebo roven 1 hodině (60 minut), měl by se ujistit, že velikost datové sady není větší než 10 000 000 (sloupec řádky krát) nebo že dojde k chybě. |
360 |
|
trial_timeout_minutes |
integer | Maximální doba v minutách, po kterou může proběhnout spuštění každé zkušební verze (podřízené úlohy) v odeslané úloze automatizovaného strojového učení. Po uplynutí zadané doby se podřízená úloha ukončí. | 30 |
|
exit_score |
float | Skóre, které má experiment dosáhnout. Experiment se ukončí po dosažení zadaného skóre. Pokud není zadáno (bez kritérií), experiment se spustí, dokud na definovaném primary metric objektu nedojde k žádnému dalšímu postupu. |
Prognózování
Klíč | Typ | Popis | Povolené hodnoty | Výchozí hodnota |
---|---|---|---|---|
time_column_name |
řetězec | Povinné Název sloupce v datové sadě, který odpovídá časové ose každé časové řady. Vstupní datová sada pro trénování, ověřování nebo testování musí obsahovat tento sloupec, pokud je forecasting úkol . Pokud není tato možnost poskytnuta nebo nastavena na None , úloha prognózování automatizovaného strojového učení vyvolá chybu a ukončí experiment. |
||
forecast_horizon |
řetězec nebo celé číslo | Maximální horizont prognózy v jednotkách frekvence časových řad. Tyto jednotky vycházejí z odvozeného časového intervalu trénovacích dat (například měsíčních, týdenních), které prognóza používá k předpovídání. Pokud je nastavená na Hodnotu Žádné nebo auto , je jeho výchozí hodnota nastavena na hodnotu 1, což znamená t+1 od posledního časového razítka t ve vstupních datech. |
auto , [int] |
1 |
frequency |
řetězec | Frekvence, s jakou je generování prognózy žádoucí, například denně, týdně, ročně atd. Pokud není zadaný nebo nastavený na Hodnotu Žádný, jeho výchozí hodnota se odvodí z indexu času datové sady. Uživatel může nastavit hodnotu větší, než je odvozená frekvence datové sady, ale ne menší. Pokud je například frekvence datové sady denní, může trvat hodnoty jako denní, týdenní, měsíční, ale ne každou hodinu, protože hodinová hodnota je menší než denně (24 hodin). Další informace najdete v dokumentaci k knihovně pandas . |
None |
|
time_series_id_column_names |
string nebo list(strings) | Názvy sloupců v datech, které se mají použít k seskupení dat do více časových řad. Pokud time_series_id_column_names není definována nebo nastavena na hodnotu None ,automatizované strojové učení používá k detekci sloupců logiku automatické detekce. | None |
|
feature_lags |
řetězec | Představuje, jestli chce uživatel automaticky generovat prodlevy pro zadané číselné funkce. Výchozí hodnota je nastavená na auto , což znamená, že automatizované strojové učení používá heuristiku založenou na automatických opravách k automatickému výběru pořadí prodlev a generování odpovídajících funkcí prodlevy pro všechny číselné funkce. "Žádné" znamená, že se negenerují žádné prodlevy pro žádné číselné funkce. |
'auto' , None |
None |
country_or_region_for_holidays |
řetězec | Země nebo oblast, která se má použít k vygenerování prázdninových funkcí. Tyto znaky by měly být reprezentovány v dvoumísmenných kódech země/oblasti ISO 3166, například "US" nebo "GB". Seznam kódů ISO najdete na adrese https://wikipedia.org/wiki/List_of_ISO_3166_country_codes. | None |
|
cv_step_size |
řetězec nebo celé číslo | Počet období mezi origin_time jednoho přeložení cv a dalším záhybem. Pokud je například pro denní data nastavená na hodnotu 3, čas počátku každého záhybů je od sebe tři dny. Pokud je nastavená na Hodnotu Žádné nebo není zadáno, je ve výchozím nastavení nastavená na auto hodnotu . Pokud je typu celé číslo, může být minimální hodnota 1, jinak vyvolá chybu. |
auto , [int] |
auto |
seasonality |
řetězec nebo celé číslo | Sezónnost časových řad jako celočíselný násobek frekvence řady. Pokud sezónnost není zadána, je její hodnota nastavena na 'auto' , což znamená, že se automaticky odvodí pomocí automatizovaného strojového učení. Pokud tento parametr není nastaven na None hodnotu , automatizované strojové učení předpokládá časovou řadu jako nezásadní, což odpovídá nastavení jako celočíselné hodnoty 1. |
'auto' , [int] |
auto |
short_series_handling_config |
řetězec | Představuje způsob, jakým by automatizované strojové učení mělo zpracovávat krátké časové řady, pokud je zadáno. Má následující hodnoty:
|
'auto' , 'pad' , 'drop' , None |
auto |
target_aggregate_function |
řetězec | Představuje agregační funkci, která se má použít k agregaci cílového sloupce v časových řadách a generování prognóz se zadanou frekvencí (definovanou v freq ). Pokud je tento parametr nastavený, ale freq není nastavený, vyvolá se chyba. Je vynechána nebo nastavena na Žádný a pak se nepoužije žádná agregace. |
'sum' , 'max' , 'min' , 'mean' |
auto |
target_lags |
string, integer nebo list(integer) | Počet minulých nebo historických období, která se mají použít ke zpoždění od cílových hodnot na základě četnosti datové sady. Ve výchozím nastavení je tento parametr vypnutý. Nastavení 'auto' umožňuje systému používat automatické heuristické zpoždění založené na heuristickém základě. Tato vlastnost lag by se měla použít, pokud vztah mezi nezávislými proměnnými a závislými proměnnými ve výchozím nastavení nekoreluje. Další informace najdete v tématu Opožděné funkce pro prognózování časových řad v automatizovaném strojovém učení. |
'auto' , [int] |
None |
target_rolling_window_size |
řetězec nebo celé číslo | Počet minulých pozorování, která se mají použít pro vytvoření průměru posuvného okna cílového sloupce. Při prognózování tento parametr představuje n historických období, která se mají použít ke generování předpokládaných hodnot, <= velikost trénovací sady. Pokud tento parametr vynecháte, n je úplná velikost trénovací sady. Tento parametr zadejte, pokud chcete při trénování modelu vzít v úvahu jenom určitou část historie. | 'auto' Celé číslo None |
None |
use_stl |
řetězec | Komponenty, které se mají generovat použitím rozkladu STL na časové řady. Pokud není zadaná nebo nastavená žádná, nevygeneruje se žádná komponenta časové řady. use_stl může mít dvě hodnoty: 'season' : k vygenerování komponenty řady. 'season_trend' : k vygenerování komponent automatizovaného strojového učení i trendu. |
'season' , 'seasontrend' |
None |
trénování, ověřování nebo testování dat
Klíč | Typ | Popis | Povolené hodnoty | Výchozí hodnota |
---|---|---|---|---|
datastore |
řetězec | Název úložiště dat, do kterého uživatel nahrává data. | ||
path |
řetězec | Cesta, ze které se mají načíst data. Může to být file cesta, folder cesta nebo pattern cesta. pattern určuje způsob hledání, který umožňuje globbing(* a ** ) souborů a složek obsahujících data. Podporované typy identifikátorů URI jsou azureml , https , wasbs , abfss a adl . Další informace najdete v tématu Základní syntaxe YAML , kde najdete informace o tom, jak používat formát identifikátoru azureml:// URI. Identifikátor URI umístění souboru artefaktu. Pokud tento identifikátor URI nemá schéma (například http:, azureml: atd.), považuje se za místní odkaz a soubor, na který odkazuje, se při vytváření entity nahraje do výchozího úložiště objektů blob pracovního prostoru. |
||
type |
const | Typ vstupních dat. Aby bylo možné generovat modely počítačového zpracování obrazu, musí uživatel jako vstup pro trénování modelu přinést označená data obrázků ve formě tabulky MLTable. | mltable |
mltable |
Školení
Klíč | Typ | Popis | Povolené hodnoty | Výchozí hodnota |
---|---|---|---|---|
allowed_training_algorithms |
list(řetězec) | Seznam algoritmů prognózování časových řad, které můžete vyzkoušet jako základní model pro trénování modelu v experimentu. Pokud je vynechána nebo je nastavena na hodnotu Žádný, pak se během experimentu použijí všechny podporované algoritmy s výjimkou algoritmů zadaných v blocked_training_algorithms . |
'auto_arima' , 'prophet' , 'naive' ,'seasonal_naive' , 'average' , 'seasonal_average' , 'exponential_smoothing' , 'arimax' , 'tcn_forecaster' , 'elastic_net' , 'gradient_boosting' , 'decision_tree' , 'knn' , 'lasso_lars' , 'sgd' , 'random_forest' , 'extreme_random_trees' , 'light_gbm' , 'xg_boost_regressor' |
None |
blocked_training_algorithms |
list(řetězec) | Seznam algoritmů prognózování časových řad, které se při trénování modelu v experimentu nespustí jako základní model. Pokud je vynechána nebo je nastavená na Hodnotu Žádný, pak se při trénování modelu použijí všechny podporované algoritmy. | 'auto_arima' , 'prophet' , 'naive' , 'seasonal_naive' , 'average' , 'seasonal_average' , 'exponential_smoothing' , 'arimax' ,'tcn_forecaster' , 'elastic_net' , 'gradient_boosting' , 'decision_tree' , 'knn' , 'lasso_lars' , 'sgd' , 'random_forest' , 'extreme_random_trees' , 'light_gbm' , 'xg_boost_regressor' |
None |
enable_dnn_training |
boolean | Příznak pro zapnutí nebo vypnutí zahrnutí modelů založených na DNN, které se mají vyzkoušet během výběru modelu. | True , False |
False |
enable_model_explainability |
boolean | Představuje příznak pro zapnutí vysvětlitelnosti modelu, jako je důležitost funkce, nejlepšího modelu vyhodnoceného systémem automatizovaného strojového učení. | True , False |
True |
enable_vote_ensemble |
boolean | Příznak, který povolí nebo zakáže přemístání některých základních modelů pomocí algoritmu Voting. Další informace o souborech najdete v tématu Nastavení automatického trénování. | true , false |
true |
enable_stack_ensemble |
boolean | Příznak pro povolení nebo zakázání přeskakování některých základních modelů pomocí algoritmu stacking. V úlohách prognózování je tento příznak ve výchozím nastavení vypnutý, aby se zabránilo riziku přeurčení kvůli malé trénovací sadě použité k přizpůsobení metaučáka. Další informace o souborech najdete v tématu Nastavení automatického trénování. | true , false |
false |
featurizace
Klíč | Typ | Popis | Povolené hodnoty | Výchozí hodnota |
---|---|---|---|---|
mode |
řetězec | Režim extrakce příznaků, který má používat úloha automatizovaného strojového učení. Nastavení na: 'auto' určuje, jestli má být krok extrakce příznaků proveden automaticky.'off' indikuje, že žádná extrakce<'custom' příznaků indikuje, zda by se měla použít přizpůsobená featurizace. Poznámka: Pokud jsou vstupní data zhuštěná, není možné funkcionalizaci zapnout. |
'auto' , 'off' , 'custom' |
None |
blocked_transformers |
list(řetězec) | Seznam názvů transformátorů, které mají být blokovány během kroku extrakce příznaků automatizovaným ml, pokud je funkce extrakce mode nastavena na "vlastní". |
'text_target_encoder' , 'one_hot_encoder' , 'cat_target_encoder' , 'tf_idf' , 'wo_e_target_encoder' , 'label_encoder' , 'word_embedding' , 'naive_bayes' , 'count_vectorizer' , 'hash_one_hot_encoder' |
None |
column_name_and_types |
object | Objekt slovníku skládající se z názvů sloupců jako klíče diktování a typů funkcí používaných k aktualizaci účelu sloupce jako přidružené hodnoty, pokud je funkce extrakce mode příznaků nastavena na "vlastní". |
||
transformer_params |
object | Vnořený objekt slovníku skládající se z názvu transformátoru jako klíče a odpovídajících parametrů přizpůsobení ve sloupcích datové sady pro extrakci příznaků, pokud je extrakce mode příznaků nastavena na "vlastní".Prognózování podporuje imputer pouze transformátor pro přizpůsobení.Podívejte se na column_transformers , kde se dozvíte, jak vytvářet parametry přizpůsobení. |
None |
column_transformers
Klíč | Typ | Popis | Povolené hodnoty | Výchozí hodnota |
---|---|---|---|---|
fields |
list(řetězec) | Seznam názvů sloupců, pro které transformer_params je třeba použít. |
||
parameters |
object | Objekt slovníku skládající se z "strategie" jako klíče a hodnoty jako strategie imputace. Další podrobnosti o tom, jak se dají poskytnout, najdete v příkladech tady. |
Výstupy úloh
Klíč | Typ | Popis | Povolené hodnoty | Výchozí hodnota |
---|---|---|---|---|
type |
řetězec | Typ výstupu úlohy. Pro výchozí uri_folder typ výstup odpovídá složce. |
uri_folder , mlflow_model , custom_model |
uri_folder |
mode |
řetězec | Režim, jakým se výstupní soubory doručují do cílového úložiště. Pro režim připojení pro čtení i zápis (rw_mount ) je výstupním adresářem připojený adresář. V režimu nahrávání se zapsané soubory nahrají na konci úlohy. |
rw_mount , upload |
rw_mount |
Jak spustit úlohu prognózování prostřednictvím rozhraní příkazového řádku
az ml job create --file [YOUR_CLI_YAML_FILE] --workspace-name [YOUR_AZURE_WORKSPACE] --resource-group [YOUR_AZURE_RESOURCE_GROUP] --subscription [YOUR_AZURE_SUBSCRIPTION]
Rychlé odkazy pro další referenci:
- Instalace a použití rozhraní příkazového řádku (v2)
- Jak spustit úlohu automatizovaného strojového učení prostřednictvím rozhraní příkazového řádku
- Automatické trénování prognóz
- Příklady prognózování rozhraní příkazového řádku:
Orange Juice Sale Forecasting
Prognózování poptávky po energii
Prognózování poptávky bike share
Předpověď denních aktivních uživatelů GitHubu