CLI (v2) Yaml-schema för automatiserat ML-prognostiseringskommando
GÄLLER FÖR: Azure CLI ml-tillägget v2 (aktuellt)
JSON-källschemat finns på https://azuremlschemas.azureedge.net/latest/autoMLForecastingJob.schema.json
Kommentar
YAML-syntaxen som beskrivs i det här dokumentet baseras på JSON-schemat för den senaste versionen av ML CLI v2-tillägget. Den här syntaxen är garanterad att endast fungera med den senaste versionen av ML CLI v2-tillägget. Du hittar scheman för äldre tilläggsversioner på https://azuremlschemasprod.azureedge.net/.
YAML-syntax
Nyckel | Typ | Beskrivning | Tillåtna värden | Standardvärde |
---|---|---|---|---|
$schema |
sträng | Platsen/url:en för att läsa in YAML-schemat. Om användaren använder Azure Machine Learning VS Code-tillägget för att skapa YAML-filen, inklusive $schema längst upp i filen, kan användaren anropa schema- och resursavslutningar. |
||
compute |
sträng | Obligatoriska. Namnet på den AML-beräkningsinfrastruktur som jobbet ska köras på. Beräkningen kan antingen vara en referens till en befintlig beräkningsdator på arbetsytan Obs! Jobb i pipeline stöder inte "lokal" som compute . Den "lokala" här innebär att beräkningsinstansen som skapats i användarens Azure Machine Learning-studio arbetsyta. |
1. mönster [^azureml:<compute_name>] för att använda befintlig beräkning,2. 'local' för att använda lokal körning |
'local' |
limits |
objekt | Representerar ett ordlisteobjekt som består av gränskonfigurationer för det automatiserade ML-tabelljobbet. Nyckeln är namnet på gränsen i jobbets kontext och värdet är gränsvärdet. Se begränsningar för att ta reda på egenskaperna för det här objektet. |
||
name |
sträng | Namnet på det skickade automatiserade ML-jobbet. Den måste vara unik för alla jobb på arbetsytan. Om det inte anges skapar Azure Machine Learning automatiskt ett GUID för namnet. |
||
description |
sträng | Beskrivningen av det automatiserade ML-jobbet. | ||
display_name |
sträng | Namnet på det jobb som användaren vill visa i studiogränssnittet. Den kan vara icke-unik på arbetsytan. Om det utelämnas skapar Azure Machine Learning automatiskt en adjektiv-substantividentifierare som kan läsas av människor för visningsnamnet. | ||
experiment_name |
sträng | Namnet på experimentet. Experiment är poster för dina ML-träningsjobb i Azure. Experiment innehåller resultatet av dina körningar, tillsammans med loggar, diagram och grafer. Varje jobbs körningspost ordnas under motsvarande experiment på studiofliken "Experiment". |
Namnet på arbetskatalogen där den skapades | |
environment_variables |
objekt | Ett ordlisteobjekt för miljövariabler som ska anges i processen där kommandot körs. | ||
outputs |
objekt | Representerar en ordlista med utdatakonfigurationer för jobbet. Nyckeln är ett namn på utdata i jobbets kontext och värdet är utdatakonfigurationen. Se jobbutdata för att ta reda på egenskaperna för det här objektet. | ||
log_files |
objekt | Ett ordlisteobjekt som innehåller loggar för en automatiserad ML-jobbkörning | ||
log_verbosity |
sträng | Loggverositetens nivå för att skriva till loggfilen. Acceptabla värden definieras i Python-loggningsbiblioteket. |
'not_set' , 'debug' , 'info' , 'warning' , , , 'error' 'critical' |
'info' |
type |
Const | Obligatoriska. Typen av jobb. |
automl |
automl |
task |
Const | Obligatoriska. Typen av automatiserad ML-uppgift som ska köras. |
forecasting |
forecasting |
target_column_name |
sträng | Obligatoriska. Representerar namnet på kolumnen som ska prognostiseras. Det automatiserade ML-jobbet genererar ett fel om det inte anges. |
||
featurization |
objekt | Ett ordlisteobjekt som definierar konfigurationen av anpassad funktionalisering. Om den inte skapas tillämpar den automatiserade ML-konfigurationen automatisk funktionalisering. Se funktionalisering för att se egenskaperna för det här objektet. | ||
forecasting |
objekt | Ett ordlisteobjekt som definierar inställningarna för prognostiseringsjobbet. Se prognostisering för att ta reda på egenskaperna för det här objektet. | ||
n_cross_validations |
sträng eller heltal | Antalet korsvalideringar som ska utföras under valet av modell/pipeline om validation_data det inte har angetts.Om både validation_data och den här parametern inte anges eller anges till None , anger automatiserat ML-jobb det som auto standard. Om är distributed_featurization aktiverat och validation_data inte har angetts är det inställt på 2 som standard. |
'auto' , [int] |
None |
primary_metric |
sträng | Ett mått som Automatiserad ML optimerar för val av modellval för Time Series Forecasting. Om allowed_training_algorithms har "tcn_forecaster" att använda för träning stöder automatiserad ML endast i "normalized_root_mean_squared_error" och "normalized_mean_absolute_error" som ska användas som primary_metric. |
"spearman_correlation" , , "normalized_root_mean_squared_error" "r2_score" "normalized_mean_absolute_error" |
"normalized_root_mean_squared_error" |
training |
objekt | Ett ordlisteobjekt som definierar konfigurationen som används i modellträningen. Kontrollera träningen för att ta reda på egenskaperna för det här objektet. |
||
training_data |
objekt | Krävs Ett ordlisteobjekt som innehåller MLTable-konfigurationen som definierar träningsdata som ska användas som indata för modellträning. Dessa data är en delmängd av data och bör bestå av både oberoende funktioner/kolumner och målfunktion/kolumn. Användaren kan använda en registrerad MLTable på arbetsytan med formatet ":" (t.ex. Input(mltable='my_mltable:1')) ELLER använda en lokal fil eller mapp som en MLTable(t.ex. Input(mltable=MLTable(local_path="./data")). Det här objektet måste anges. Om målfunktionen inte finns i källfilen genererar automatiserad ML ett fel. Kontrollera tränings- eller validerings- eller testdata för att ta reda på egenskaperna för det här objektet. |
||
validation_data |
objekt | Ett ordlisteobjekt som innehåller MLTable-konfigurationen som definierar valideringsdata som ska användas i automatiserat ML-experiment för korsvalidering. Den bör bestå av både oberoende funktioner/kolumner och målfunktion/kolumn om det här objektet tillhandahålls. Exempel i träningsdata och valideringsdata kan inte överlappa varandra. Se tränings- eller validerings- eller testdata för att ta reda på egenskaperna för det här objektet. Om det här objektet inte har definierats används n_cross_validations automatiserad ML för att dela upp valideringsdata från träningsdata som definierats i training_data objektet. |
||
test_data |
objekt | Ett ordlisteobjekt som innehåller MLTable-konfigurationen som definierar testdata som ska användas i testkörning för förutsägelser i att använda bästa modell och utvärderar modellen med hjälp av definierade mått. Den bör endast bestå av oberoende funktioner som används i träningsdata (utan målfunktion) om det här objektet tillhandahålls. Kontrollera tränings- eller validerings- eller testdata för att ta reda på egenskaperna för det här objektet. Om den inte tillhandahålls använder Automatiserad ML andra inbyggda metoder för att föreslå bästa modell att använda för slutsatsdragning. |
Gränser
Nyckel | Typ | Beskrivning | Tillåtna värden | Standardvärde |
---|---|---|---|---|
enable_early_termination |
boolean | Representerar om du vill aktivera experimentavslut om förlustpoängen inte förbättras efter "x" antal iterationer. I ett automatiserat ML-jobb tillämpas inget tidigt stopp på de första 20 iterationerna. Det tidiga stoppfönstret startar först efter de första 20 iterationerna. |
true , false |
true |
max_concurrent_trials |
integer | Det maximala antalet utvärderingsversioner (underordnade jobb) som skulle köras parallellt. Vi rekommenderar starkt att du anger antalet samtidiga körningar till antalet noder i klustret (aml-beräkning definierad i compute ). |
1 |
|
max_trials |
integer | Representerar det maximala antalet utvärderingsversioner som ett automatiserat ML-jobb kan försöka köra en träningsalgoritm med olika kombination av hyperparametrar. Standardvärdet är inställt på 1 000. Om enable_early_termination definieras kan antalet försök som används för att köra träningsalgoritmer vara mindre. |
1000 |
|
max_cores_per_trial |
integer | Representerar det maximala antalet kärnor per som är tillgängliga för användning av varje utvärderingsversion. Standardvärdet är -1, vilket innebär att alla kärnor används i processen. | -1 |
|
timeout_minutes |
integer | Den maximala tiden i minuter som det skickade automatiserade ML-jobbet kan ta att köra. Efter den angivna tiden avslutas jobbet. Den här tidsgränsen omfattar installation, funktionalisering, träningskörningar, montering och modellförklarbarhet (om det tillhandahålls) av alla utvärderingsversioner. Observera att den inte innehåller monterings- och modellförklarbarhetskörningar i slutet av processen om jobbet inte kan slutföras inom angivet timeout_minutes eftersom dessa funktioner är tillgängliga när alla utvärderingsversioner (underordnade jobb) har slutförts. Standardvärdet är 360 minuter (6 timmar). Om du vill ange en tidsgräns som är mindre än eller lika med 1 timme (60 minuter) bör användaren se till att datauppsättningens storlek inte är större än 10 000 000 (rader gånger kolumn) eller ett felresultat. |
360 |
|
trial_timeout_minutes |
integer | Den maximala tiden i minuter som varje utvärderingsversion (underordnat jobb) i det skickade automatiserade ML-jobbet kan ta körning. Efter den angivna tiden avslutas det underordnade jobbet. | 30 |
|
exit_score |
flyttal | Poängen som ska uppnås av ett experiment. Experimentet avslutas när den angivna poängen har nåtts. Om det inte anges (inga kriterier) körs experimentet förrän inga ytterligare framsteg har gjorts på den definierade primary metric . |
prognostisering
Nyckel | Typ | Beskrivning | Tillåtna värden | Standardvärde |
---|---|---|---|---|
time_column_name |
sträng | Krävs Namnet på kolumnen i datauppsättningen som motsvarar tidsaxeln för varje tidsserie. Indatauppsättningen för träning, validering eller test måste innehålla den här kolumnen om uppgiften är forecasting . Om det inte anges eller anges till None utlöser automatiserat ML-prognosjobb ett fel och avslutar experimentet. |
||
forecast_horizon |
sträng eller heltal | Den maximala prognoshorisonten i tidsseriefrekvensenheter. Dessa enheter baseras på det antagna tidsintervallet för dina träningsdata (till exempel varje månad, varje vecka) som prognosmakaren använder för att förutsäga. Om det är inställt på Ingen eller auto , är standardvärdet inställt på 1, vilket betyder "t+1" från den senaste tidsstämpeln t i indata. |
auto , [int] |
1 |
frequency |
sträng | Den frekvens med vilken prognosgenereringen önskas, till exempel dagligen, varje vecka, varje år osv. Om den inte har angetts eller angetts till Ingen härleds standardvärdet från datamängdens tidsindex. Användaren kan ange ett värde som är större än datauppsättningens härledda frekvens, men inte mindre än den. Om datauppsättningens frekvens till exempel är daglig kan det ta värden som varje dag, varje vecka, varje månad, men inte varje timme eftersom varje timme är mindre än varje dag (24 timmar). Mer information finns i Pandas-dokumentationen. |
None |
|
time_series_id_column_names |
sträng eller lista(strängar) | Namnen på kolumner i de data som ska användas för att gruppera data i flera tidsserier. Om time_series_id_column_names inte har definierats eller angetts till Ingen använder automatiserad ML logik för automatisk identifiering för att identifiera kolumnerna. | None |
|
feature_lags |
sträng | Representerar om användaren vill generera fördröjningar automatiskt för de angivna numeriska funktionerna. Standardvärdet är inställt på auto , vilket innebär att automatiserad ML använder autokorrelationsbaserad heuristik för att automatiskt välja fördröjningsbeställningar och generera motsvarande fördröjningsfunktioner för alla numeriska funktioner. "Ingen" innebär att inga fördröjningar genereras för numeriska funktioner. |
'auto' , None |
None |
country_or_region_for_holidays |
sträng | Det land eller den region som ska användas för att generera semesterfunktioner. Dessa tecken ska representeras i ISO 3166-lands-/regionkoder med två bokstäver, till exempel "US" eller "GB". Listan över ISO-koderna finns på https://wikipedia.org/wiki/List_of_ISO_3166_country_codes. | None |
|
cv_step_size |
sträng eller heltal | Antalet perioder mellan origin_time av en CV-vikning och nästa vik. Om den till exempel är inställd på 3 för dagliga data är ursprungstiden för varje vik tre dagars mellanrum. Om den har angetts till Ingen eller inte har angetts anges den som auto standard. Om det är av heltalstyp är det minsta värde det kan ta 1, annars uppstår ett fel. |
auto , [int] |
auto |
seasonality |
sträng eller heltal | Säsongsvariationen för tidsserier som en heltalsmultipel för seriefrekvensen. Om säsongsvariation inte anges anges dess värde till , vilket innebär att 'auto' det härleds automatiskt av automatiserad ML. Om den här parametern inte är inställd None på förutsätter automatiserad ML tidsserier som icke-säsongsbaserade, vilket motsvarar att ange den som heltalsvärde 1. |
'auto' , [int] |
auto |
short_series_handling_config |
sträng | Representerar hur automatiserad ML ska hantera korta tidsserier om det anges. Det tar följande värden:
|
'auto' , 'pad' , , 'drop' None |
auto |
target_aggregate_function |
sträng | Representerar den mängdfunktion som ska användas för att aggregera målkolumnen i tidsserier och generera prognoserna med angiven frekvens (definieras i freq ). Om den här parametern har angetts, men parametern freq inte har angetts, utlöses ett fel. Den utelämnas eller anges till Ingen. Sedan tillämpas ingen aggregering. |
'sum' , 'max' , , 'min' 'mean' |
auto |
target_lags |
sträng eller heltal eller lista(heltal) | Antalet tidigare/historiska perioder som ska användas för att släpa efter målvärdena baserat på datamängdsfrekvensen. Som standard är den här parametern inaktiverad. Med 'auto' inställningen kan systemet använda automatisk heuristisk fördröjning. Den här fördröjningsegenskapen bör användas när relationen mellan de oberoende variablerna och den beroende variabeln inte korrelerar som standard. Mer information finns i Fördröjda funktioner för prognostisering av tidsserier i automatiserad ML. |
'auto' , [int] |
None |
target_rolling_window_size |
sträng eller heltal | Antalet tidigare observationer som ska användas för att skapa ett rullande fönstergenomsnitt för målkolumnen. Vid prognostisering representerar den här parametern n historiska perioder som ska användas för att generera prognostiserade värden, <= träningsuppsättningsstorlek. Om det utelämnas är n den fullständiga träningsuppsättningens storlek. Ange den här parametern när du bara vill överväga en viss mängd historik när du tränar modellen. | 'auto' heltal None |
None |
use_stl |
sträng | De komponenter som ska genereras genom att tillämpa STL-nedbrytning i tidsserier. Om den inte anges eller anges till Ingen genereras ingen tidsseriekomponent. use_stl kan ta två värden: 'season' : för att generera säsongskomponenten. 'season_trend' : för att generera både säsongens automatiserade ML- och trendkomponenter. |
'season' , 'seasontrend' |
None |
tränings- eller validerings- eller testdata
Nyckel | Typ | Beskrivning | Tillåtna värden | Standardvärde |
---|---|---|---|---|
datastore |
sträng | Namnet på det datalager där data laddas upp av användaren. | ||
path |
sträng | Sökvägen där data ska läsas in. Det kan vara en file sökväg, folder sökväg eller pattern för sökvägar. pattern anger ett sökmönster för att tillåta globbning(* och ** ) av filer och mappar som innehåller data. URI-typer som stöds är azureml , https , wasbs , abfss och adl . Mer information finns i Core yaml-syntax för att förstå hur du använder azureml:// URI-formatet. URI för platsen för artefaktfilen. Om den här URI:n inte har något schema (till exempel http:, azureml: etc.) anses den vara en lokal referens och filen som den pekar på laddas upp till standardlagringen för arbetsytans blob när entiteten skapas. |
||
type |
Const | Typ av indata. För att generera modeller för visuellt innehåll måste användaren ta med märkta bilddata som indata för modellträning i form av en MLTable. | mltable |
mltable |
träning
Nyckel | Typ | Beskrivning | Tillåtna värden | Standardvärde |
---|---|---|---|---|
allowed_training_algorithms |
list(string) | En lista över algoritmer för tidsserieprognoser som ska testas som basmodell för modellträning i ett experiment. Om den utelämnas eller anges till Ingen används alla algoritmer som stöds under experimentet, förutom algoritmer som anges i 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(string) | En lista över algoritmer för tidsserieprognoser som inte ska köras som basmodell under modellträning i ett experiment. Om den utelämnas eller anges till Ingen används alla algoritmer som stöds under modellträningen. | '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 | En flagga för att aktivera eller inaktivera inkludering av DNN-baserade modeller som ska provas under modellval. | True , False |
False |
enable_model_explainability |
boolean | Representerar en flagga för att aktivera modellförklaring som funktionsvikt, av bästa modell som utvärderas av automatiserat ML-system. | True , False |
True |
enable_vote_ensemble |
boolean | En flagga för att aktivera eller inaktivera montering av vissa basmodeller med hjälp av röstningsalgoritmen. Mer information om ensembler finns i Konfigurera automatisk träning. | true , false |
true |
enable_stack_ensemble |
boolean | En flagga för att aktivera eller inaktivera montering av vissa basmodeller med hjälp av stackningsalgoritm. I prognosuppgifter är den här flaggan inaktiverad som standard för att undvika risker för överanpassning på grund av en liten träningsuppsättning som används för att passa metainläraren. Mer information om ensembler finns i Konfigurera automatisk träning. | true , false |
false |
funktionalisering
Nyckel | Typ | Beskrivning | Tillåtna värden | Standardvärde |
---|---|---|---|---|
mode |
sträng | Funktionaliseringsläget som ska användas av automatiserat ML-jobb. Ställ in den på: 'auto' anger om funktionaliseringssteget ska utföras automatiskt'off' anger att ingen funktionalisering<'custom' anger om anpassad funktionalisering ska användas. Obs! Om indata är glesa går det inte att aktivera funktionalisering. |
'auto' , , 'off' 'custom' |
None |
blocked_transformers |
list(string) | En lista över transformatornamn som ska blockeras under funktionaliseringssteget av automatiserad ML, om funktionalisering mode är inställd på "anpassad". |
'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 |
objekt | Ett ordlisteobjekt som består av kolumnnamn som dikteringsnyckel och funktionstyper som används för att uppdatera kolumnsyftet som associerat värde, om funktionalisering mode är inställt på "anpassad". |
||
transformer_params |
objekt | Ett kapslat ordlisteobjekt som består av transformeringsnamn som nyckel och motsvarande anpassningsparametrar för datauppsättningskolumner för funktionalisering, om funktionalisering mode är inställt på "anpassad".Prognostiseringen stöder imputer endast transformering för anpassning.Kolla in column_transformers för att ta reda på hur du skapar anpassningsparametrar. |
None |
column_transformers
Nyckel | Typ | Beskrivning | Tillåtna värden | Standardvärde |
---|---|---|---|---|
fields |
list(string) | En lista med kolumnnamn som tillhandahålls transformer_params ska tillämpas. |
||
parameters |
objekt | Ett ordlisteobjekt som består av "strategi" som nyckel och värde som imputationsstrategi. Mer information om hur det kan tillhandahållas finns i exempel här. |
Jobbutdata
Nyckel | Typ | Beskrivning | Tillåtna värden | Standardvärde |
---|---|---|---|---|
type |
sträng | Typ av jobbutdata. För standardtypen uri_folder motsvarar utdata en mapp. |
uri_folder , , mlflow_model custom_model |
uri_folder |
mode |
sträng | Läget för hur utdatafiler levereras till mållagringen. För skrivskyddat monteringsläge (rw_mount ) är utdatakatalogen en monterad katalog. För uppladdningsläge laddas de filer som skrivs upp i slutet av jobbet. |
rw_mount , upload |
rw_mount |
Så här kör du prognostiseringsjobb via CLI
az ml job create --file [YOUR_CLI_YAML_FILE] --workspace-name [YOUR_AZURE_WORKSPACE] --resource-group [YOUR_AZURE_RESOURCE_GROUP] --subscription [YOUR_AZURE_SUBSCRIPTION]
Snabblänkar för ytterligare referens:
- Installera och använda CLI (v2)
- Så här kör du ett automatiserat ML-jobb via CLI
- Så här tränar du prognoser automatiskt
- CLI-prognostiseringsexempel:
Prognostisering för apelsinjuiceförsäljning
Prognostisering av efterfrågan på energi
Prognostisering för cykelresursefterfrågan
Prognos för dagliga aktiva GitHub-användare