Share via


Esquema YAML da tarefa de comando de Previsão de ML Automatizada da CLI (v2)

APLICA-SE A:Extensão v2 da CLI do Azure (atual)

O esquema JSON de origem pode ser encontrado em https://azuremlschemas.azureedge.net/latest/autoMLForecastingJob.schema.json

Nota

A sintaxe YAML detalhada neste documento baseia-se no esquema JSON da versão mais recente da extensão da CLI v2 do ML. Esta sintaxe é garantida apenas para funcionar com a versão mais recente da extensão da CLI v2 do ML. Pode encontrar os esquemas para versões de extensões mais antigas em https://azuremlschemasprod.azureedge.net/.

Sintaxe YAML

Chave Tipo Description Valores permitidos Valor predefinido
$schema string A localização/URL para carregar o esquema YAML.
Se o utilizador utilizar a extensão do VS Code do Azure Machine Learning para criar o ficheiro YAML, incluindo $schema na parte superior do ficheiro, permite que o utilizador invoque as conclusões do esquema e dos recursos.
compute string Obrigatório.
O nome da infraestrutura de computação AML em que executar a tarefa.
A computação pode ser uma referência a uma máquina de computação existente na área de trabalho
Nota: as tarefas no pipeline não suportam "local" como compute. O "local" aqui significa que a instância de computação foi criada na área de trabalho estúdio do Azure Machine Learning do utilizador.
1. padrão [^azureml:<compute_name>] para utilizar a computação existente,
2.'local' para utilizar a execução local
'local'
limits objeto Representa um objeto de dicionário que consiste em configurações de limite da tarefa tabular ML Automatizada.
A chave é o nome do limite no contexto da tarefa e o valor é o valor limite. Veja limites para descobrir as propriedades deste objeto.
name string O nome da tarefa de ML Automatizada submetida.
Tem de ser exclusivo em todas as tarefas na área de trabalho. Se não for especificado, o Azure Machine Learning gera automaticamente um GUID para o nome.
description string A descrição da tarefa de ML Automatizado.
display_name string O nome da tarefa que o utilizador quer apresentar na IU do estúdio. Pode não ser exclusivo na área de trabalho. Se for omitido, o Azure Machine Learning gera automaticamente um identificador adjetivo-substantivo legível por humanos para o nome a apresentar.
experiment_name string O nome da experimentação.
As experimentações são registos das suas tarefas de preparação de ML no Azure. As experimentações contêm os resultados das suas execuções, juntamente com registos, gráficos e gráficos. O registo de execução de cada tarefa está organizado na experimentação correspondente no separador "Experimentações" do estúdio.
Nome do diretório de trabalho no qual foi criado
environment_variables objeto Um objeto de dicionário de variáveis de ambiente a definir no processo em que o comando está a ser executado.
outputs objeto Representa um dicionário de configurações de saída da tarefa. A chave é um nome para a saída no contexto da tarefa e o valor é a configuração de saída. Veja o resultado da tarefa para descobrir as propriedades deste objeto.
log_files objeto Um objeto de dicionário que contém registos de uma execução de tarefa de ML Automatizado
log_verbosity string O nível de verbosidade do registo para escrever no ficheiro de registo.
Os valores aceitáveis são definidos na biblioteca de registos do Python.
'not_set', 'debug', 'info', 'warning', 'error', 'critical' 'info'
type constante Obrigatório.
O tipo de tarefa.
automl automl
task constante Obrigatório.
O tipo de tarefa de ML Automatizado a executar.
forecasting forecasting
target_column_name string Obrigatório.
Representa o nome da coluna a prever. A tarefa de ML Automatizado gera um erro se não for especificado.
featurization objeto Um objeto de dicionário que define a configuração da caracterização personalizada. Caso não seja criada, a configuração do ML Automatizado aplica a caracterização automática. Veja a caracterização para ver as propriedades deste objeto.
forecasting objeto Um objeto de dicionário que define as definições da tarefa de previsão. Veja a previsão para descobrir as propriedades deste objeto.
n_cross_validations cadeia ou número inteiro O número de validações cruzadas a executar durante a seleção do modelo/pipeline, se validation_data não for especificado.
No caso de tanto validation_data como este parâmetro não ser fornecido ou definido como None, a tarefa ML Automatizada defina-a como auto por predefinição. distributed_featurization Caso esteja ativado e validation_data não esteja especificado, está definido como 2 por predefinição.
'auto', [int] None
primary_metric string Uma métrica que o ML Automatizado otimiza para a seleção do modelo de Previsão de Série Temporal.
Se allowed_training_algorithms tiver "tcn_forecaster" para utilizar na preparação, o ML Automatizado só suporta "normalized_root_mean_squared_error" e "normalized_mean_absolute_error" para ser utilizado como primary_metric.
"spearman_correlation", "normalized_root_mean_squared_error", "r2_score""normalized_mean_absolute_error" "normalized_root_mean_squared_error"
training objeto Um objeto de dicionário que define a configuração utilizada na preparação de modelos.
Veja a preparação para descobrir as propriedades deste objeto.
training_data objeto Obrigatório
Um objeto de dicionário que contém a configuração MLTable que define os dados de preparação a utilizar como entrada para a preparação de modelos. Estes dados são um subconjunto de dados e devem ser compostos por funcionalidades/colunas independentes e pela funcionalidade/coluna de destino. O utilizador pode utilizar uma MLTable registada na área de trabalho com o formato ":" (por exemplo, Input(mltable='my_mltable:1')) OU pode utilizar um ficheiro ou pasta local como uma MLTable(por exemplo, Input(mltable=MLTable(local_path="./data")). Este objeto tem de ser fornecido. Se a funcionalidade de destino não estiver presente no ficheiro de origem, o ML Automatizado gera um erro. Verifique a preparação, a validação ou os dados de teste para descobrir as propriedades deste objeto.
validation_data objeto Um objeto de dicionário que contém a configuração MLTable que define os dados de validação a serem utilizados na experimentação de ML Automatizado para validação cruzada. Deve ser composto por funcionalidades/colunas independentes e funcionalidade/coluna de destino, se este objeto for fornecido. Os exemplos de dados de preparação e dados de validação não se podem sobrepor numa dobra.
Veja preparação, validação ou dados de teste para descobrir as propriedades deste objeto. Caso este objeto não esteja definido, o ML Automatizado utiliza n_cross_validations para dividir os dados de validação dos dados de preparação definidos no training_data objeto.
test_data objeto Um objeto de dicionário que contém a configuração MLTable que define os dados de teste a serem utilizados na execução de testes para predições na utilização do melhor modelo e avalia o modelo com métricas definidas. Deve ser composto apenas por funcionalidades independentes utilizadas nos dados de preparação (sem funcionalidade de destino) se este objeto for fornecido.
Verifique a preparação, a validação ou os dados de teste para descobrir as propriedades deste objeto. Se não for fornecido, o ML Automatizado utiliza outros métodos incorporados para sugerir o melhor modelo a utilizar para inferência.

limites

Chave Tipo Description Valores permitidos Valor predefinido
enable_early_termination boolean Representa se pretende ativar a terminação de experimentação se a pontuação de perda não melhorar após o número de iterações "x".
Numa tarefa de ML Automatizado, não é aplicada nenhuma paragem antecipada nas primeiras 20 iterações. A janela de paragem antecipada começa apenas após as primeiras 20 iterações.
true, false true
max_concurrent_trials número inteiro O número máximo de tentativas (trabalhos subordinados) que seriam executadas em paralelo. É altamente recomendado definir o número de execuções simultâneas para o número de nós no cluster (computação aml definida em compute). 1
max_trials número inteiro Representa o número máximo de tentativas que uma tarefa de ML Automatizado pode tentar executar um algoritmo de preparação com uma combinação diferente de hiperparâmetros. O valor predefinido está definido como 1000. Se enable_early_termination estiver definido, o número de tentativas utilizadas para executar algoritmos de preparação pode ser menor. 1000
max_cores_per_trial número inteiro Representa o número máximo de núcleos por que estão disponíveis para serem utilizados por cada versão de avaliação. O valor predefinido está definido como -1, o que significa que todos os núcleos são utilizados no processo. -1
timeout_minutes número inteiro A quantidade máxima de tempo em minutos que a tarefa de ML Automatizado submetida pode demorar a ser executada. Após o período de tempo especificado, a tarefa é terminada. Este tempo limite inclui configuração, caracterização, execuções de preparação, ensembling e explicação do modelo (se for fornecido) de todas as avaliações.
Tenha em atenção que não inclui as execuções de explicação de modelos e de emembling no final do processo se a tarefa não for concluída no fornecido, uma vez que estas funcionalidades estão disponíveis assim que todas as avaliações (trabalhos subordinados timeout_minutes ) estiverem concluídas.
O valor predefinido está definido como 360 minutos (6 horas). Para especificar um tempo limite inferior ou igual a 1 hora (60 minutos), o utilizador deve certificar-se de que o tamanho do conjunto de dados não é superior a 10 000 000 (linhas vezes coluna) ou resultados de um erro.
360
trial_timeout_minutes número inteiro A quantidade máxima de tempo em minutos que cada avaliação (trabalho subordinado) na tarefa de ML Automatizada submetida pode ser executada. Após o período de tempo especificado, a tarefa subordinada será terminada. 30
exit_score float A pontuação a alcançar através de uma experimentação. A experimentação termina após a pontuação especificada ser alcançada. Se não for especificado (sem critérios), a experimentação é executada até que não sejam feitos mais progressos no definido primary metric.

previsão

Chave Tipo Description Valores permitidos Valor predefinido
time_column_name string Obrigatório
O nome da coluna no conjunto de dados que corresponde ao eixo de tempo de cada série temporal. O conjunto de dados de entrada para preparação, validação ou teste tem de conter esta coluna se a tarefa for forecasting. Se não for fornecido ou definido como , a Nonetarefa de previsão de ML automatizado gera um erro e termina a experimentação.
forecast_horizon cadeia ou número inteiro O horizonte de previsão máximo em unidades de frequência de série temporal. Estas unidades baseiam-se no intervalo de tempo inferido dos seus dados de preparação (por exemplo, mensalmente, semanalmente) que o meteorologista utiliza para prever. Se estiver definido como Nenhum ou auto, o valor predefinido é 1, o que significa "t+1" do último carimbo de data/hora nos dados de entrada. auto, [int] 1
frequency string A frequência com que a geração de previsão é desejada, por exemplo, diária, semanal, anual, etc.
Se não for especificado ou definido como Nenhum, o respetivo valor predefinido é inferido a partir do índice de tempo do conjunto de dados. O utilizador pode definir o seu valor maior do que a frequência inferida do conjunto de dados, mas não menor do que o mesmo. Por exemplo, se a frequência do conjunto de dados for diária, pode levar valores como diariamente, semanalmente, mensalmente, mas não por hora, uma vez que a hora é inferior à diária (24 horas).
Veja a documentação do pandas para obter mais informações.
None
time_series_id_column_names cadeia ou lista(cadeias) Os nomes das colunas nos dados a serem utilizados para agrupar dados em várias séries temporizados. Se time_series_id_column_names não estiver definido ou definido como Nenhum, o ML Automatizado utiliza a lógica de deteção automática para detetar as colunas. None
feature_lags string Representa se o utilizador quer gerar atrasos automaticamente para as funcionalidades numéricas fornecidas. A predefinição está definida como auto, o que significa que o ML Automatizado utiliza heurística baseada em correlação automática para selecionar automaticamente encomendas de atraso e gerar funcionalidades de atraso correspondentes para todas as funcionalidades numéricas. "Nenhum" significa que não são gerados atrasos para quaisquer funcionalidades numéricas. 'auto', None None
country_or_region_for_holidays string O país ou região a utilizar para gerar funcionalidades de feriados. Estes carateres devem ser representados em códigos ISO 3166 de país/região de duas letras, por exemplo "EUA" ou "GB". A lista de códigos ISO pode ser encontrada em https://wikipedia.org/wiki/List_of_ISO_3166_country_codes. None
cv_step_size cadeia ou número inteiro O número de períodos entre o origin_time de uma dobra de CV e a dobra seguinte. Por exemplo, se estiver definido como 3 para dados diários, a hora de origem de cada dobra tem três dias de diferença. Se estiver definido como Nenhum ou não especificado, está definido como auto por predefinição. Se for do tipo de número inteiro, o valor mínimo que pode ter é 1, caso contrário, gera um erro. auto, [int] auto
seasonality cadeia ou número inteiro A sazonalidade da série temporal como um múltiplo inteiro da frequência da série. Se a sazonalidade não for especificada, o respetivo valor é definido como 'auto', o que significa que é inferido automaticamente pelo ML Automatizado. Se este parâmetro não estiver definido como None, o ML Automatizado assume a série temporal como não sazonal, o que equivale a defini-lo como valor inteiro 1. 'auto', [int] auto
short_series_handling_config string Representa a forma como o ML Automatizado deve processar séries de tempo curtos, se especificado. São necessários os seguintes valores:
  • 'auto' : as séries curtas são acolchoadas se não existirem séries longas, caso contrário, as séries curtas são removidas.
  • 'pad': todas as séries curtas são acolchoadas com zeros.
  • 'drop': todas as séries curtas são removidas.
  • None: a série curta não foi modificada.
    'auto', 'pad', 'drop', None auto
    target_aggregate_function string Representa a função de agregação a ser utilizada para agregar a coluna de destino em série temporal e gerar as previsões com uma frequência especificada (definida em freq). Se este parâmetro estiver definido, mas o freq parâmetro não estiver definido, será gerado um erro. É omitido ou definido como Nenhum e, em seguida, não é aplicada nenhuma agregação. 'sum', 'max', 'min', 'mean' auto
    target_lags cadeia ou número inteiro ou lista(número inteiro) O número de períodos passados/históricos a utilizar para desfasar dos valores de destino com base na frequência do conjunto de dados. Por predefinição, este parâmetro está desativado. A 'auto' definição permite que o sistema utilize o atraso automático baseado em heurística.
    Esta propriedade lag deve ser utilizada quando a relação entre as variáveis independentes e a variável dependente não estiver correlacionada por predefinição. Para obter mais informações, veja Funcionalidades atrasadas para a previsão de série temporal no ML Automatizado.
    'auto', [int] None
    target_rolling_window_size cadeia ou número inteiro O número de observações anteriores a utilizar para criar uma média de janela temporal da coluna de destino. Ao prever, este parâmetro representa n períodos históricos a utilizar para gerar valores previstos, <= tamanho do conjunto de preparação. Se omitido, n é o tamanho completo do conjunto de preparação. Especifique este parâmetro quando quiser considerar apenas uma determinada quantidade de histórico ao preparar o modelo. 'auto', número inteiro, None None
    use_stl string Os componentes a gerar ao aplicar a decomposição de STL em séries temporizadas. Se não for fornecido ou definido como Nenhum, não é gerado nenhum componente de série temporal.
    use_stl pode ter dois valores:
    'season' : para gerar o componente de estação.
    'season_trend' : para gerar o ML Automatizado de estação e os componentes de tendência.
    'season', 'seasontrend' None

    formação, validação ou dados de teste

    Chave Tipo Description Valores permitidos Valor predefinido
    datastore string O nome do arquivo de dados onde os dados são carregados pelo utilizador.
    path string O caminho a partir do qual os dados devem ser carregados. Pode ser um file caminho, folder caminho ou pattern caminhos.
    pattern especifica um padrão de pesquisa para permitir globbing(* e **) de ficheiros e pastas que contêm dados. Os tipos de URI suportados são azureml, https, wasbs, abfsse adl. Para obter mais informações, veja Sintaxe yaml core para compreender como utilizar o azureml:// formato URI. URI da localização do ficheiro de artefacto. Se este URI não tiver um esquema (por exemplo, http:, azureml: etc.), é considerado uma referência local e o ficheiro para o qual aponta é carregado para o armazenamento de blobs da área de trabalho predefinido à medida que a entidade é criada.
    type constante O tipo de dados de entrada. Para gerar modelos de imagem digitalizada, o utilizador tem de trazer dados de imagem etiquetados como entrada para a preparação de modelos sob a forma de uma MLTable. mltable mltable

    formação

    Chave Tipo Description Valores permitidos Valor predefinido
    allowed_training_algorithms list(string) Uma lista de algoritmos de Previsão de Série Temporal para experimentar como modelo base para preparação de modelos numa experimentação. Se for omitido ou definido como Nenhum, todos os algoritmos suportados são utilizados durante a experimentação, exceto os algoritmos especificados em 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) Uma lista de algoritmos de Previsão de Série Temporal para não serem executados como modelo base durante a preparação de modelos numa experimentação. Se for omitido ou definido como Nenhum, todos os algoritmos suportados são utilizados durante a preparação do modelo. '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 Um sinalizador para ativar ou desativar a inclusão de modelos baseados em DNN para experimentar durante a seleção do modelo. True, False False
    enable_model_explainability boolean Representa um sinalizador para ativar a explicação do modelo, como a importância da funcionalidade, do melhor modelo avaliado pelo sistema ML Automatizado. True, False True
    enable_vote_ensemble boolean Um sinalizador para ativar ou desativar a ativação de alguns modelos base com o algoritmo de Voto. Para obter mais informações sobre conjuntos, consulte Configurar a preparação automática. true, false true
    enable_stack_ensemble boolean Um sinalizador para ativar ou desativar a desembolsação de alguns modelos base com o algoritmo De pilha. Nas tarefas de previsão, este sinalizador está desativado por predefinição, para evitar riscos de sobreajuste devido ao pequeno conjunto de preparação utilizado na adaptação do metadutor. Para obter mais informações sobre conjuntos, consulte Configurar a preparação automática. true, false false

    caracterização

    Chave Tipo Description Valores permitidos Valor predefinido
    mode string O modo de caracterização a utilizar pela tarefa de ML Automatizado.
    Definindo-o como:
    'auto' indica se o passo de caracterização deve ser feito automaticamente
    'off' indica que nenhuma caracterização<'custom' indica se a caracterização personalizada deve ser utilizada.

    Nota: se os dados de entrada forem dispersos, a caracterização não pode ser ativada.
    'auto', 'off', 'custom' None
    blocked_transformers list(string) Uma lista de nomes de transformador a serem bloqueados durante o passo de caracterização pelo ML Automatizado, se a caracterização mode estiver definida como "personalizada". '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 objeto Um objeto de dicionário que consiste em nomes de colunas como chave de ditado e tipos de funcionalidade utilizados para atualizar a finalidade da coluna como valor associado, se a caracterização mode estiver definida como "personalizada".
    transformer_params objeto Um objeto de dicionário aninhado que consiste no nome do transformador como chave e parâmetros de personalização correspondentes em colunas de conjuntos de dados para caracterização, se a caracterização mode estiver definida como "personalizada".
    A previsão só suporta imputer o transformador para personalização.
    Consulte column_transformers para saber como criar parâmetros de personalização.
    None

    column_transformers

    Chave Tipo Description Valores permitidos Valor predefinido
    fields list(string) Deve ser aplicada uma lista de nomes de colunas fornecidos transformer_params .
    parameters objeto Um objeto de dicionário que consiste em "estratégia" como chave e valor como estratégia de imputação.
    São fornecidos mais detalhes sobre como pode ser fornecido em exemplos aqui.

    Saídas de tarefas

    Chave Tipo Description Valores permitidos Valor predefinido
    type string O tipo de saída da tarefa. Para o tipo predefinido uri_folder , o resultado corresponde a uma pasta. uri_folder , mlflow_model, custom_model uri_folder
    mode string O modo de como os ficheiros de saída são entregues no armazenamento de destino. Para o modo de montagem leitura-escrita (rw_mount), o diretório de saída é um diretório montado. Para o modo de carregamento, os ficheiros escritos são carregados no final da tarefa. rw_mount, upload rw_mount

    Como executar a tarefa de previsão através da 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]