ForecastingJob Classe
Configuração da Tarefa de Previsão de AutoML.
Inicialize uma nova tarefa de Previsão de AutoML.
- Herança
-
azure.ai.ml.entities._job.automl.tabular.automl_tabular.AutoMLTabularForecastingJob
Construtor
ForecastingJob(*, primary_metric: str | None = None, forecasting_settings: ForecastingSettings | None = None, **kwargs)
Parâmetros
Métodos
dump |
Captura o conteúdo da tarefa num ficheiro no formato YAML. |
set_data |
Definir a configuração de dados. |
set_featurization |
Definir a configuração de engenharia de funcionalidades. |
set_forecast_settings |
Gerir parâmetros utilizados pela previsão de tarefas. |
set_limits |
Defina limites para a tarefa. |
set_training |
O método para configurar as definições relacionadas com a preparação de previsão. |
dump
Captura o conteúdo da tarefa num ficheiro no formato YAML.
dump(dest: str | PathLike | IO, **kwargs) -> None
Parâmetros
O caminho local ou o fluxo de ficheiros para o qual escrever o conteúdo YAML. Se dest for um caminho de ficheiro, será criado um novo ficheiro. Se dest for um ficheiro aberto, o ficheiro será escrito diretamente.
- kwargs
- dict
Argumentos adicionais para passar para o serializador YAML.
Exceções
Gerado se dest é um caminho de ficheiro e o ficheiro já existe.
Gerado se o dest for um ficheiro aberto e o ficheiro não for gravável.
set_data
Definir a configuração de dados.
set_data(*, training_data: Input, target_column_name: str, weight_column_name: str | None = None, validation_data: Input | None = None, validation_data_size: float | None = None, n_cross_validations: str | int | None = None, cv_split_column_names: List[str] | None = None, test_data: Input | None = None, test_data_size: float | None = None) -> None
Parâmetros
- training_data
- Input
Dados de preparação.
- target_column_name
- str
Nome da coluna de destino.
Exceções
Gerado se dest é um caminho de ficheiro e o ficheiro já existe.
Gerado se o dest for um ficheiro aberto e o ficheiro não for gravável.
set_featurization
Definir a configuração de engenharia de funcionalidades.
set_featurization(*, blocked_transformers: List[BlockedTransformers | str] | None = None, column_name_and_types: Dict[str, str] | None = None, dataset_language: str | None = None, transformer_params: Dict[str, List[ColumnTransformer]] | None = None, mode: str | None = None, enable_dnn_featurization: bool | None = None) -> None
Parâmetros
- blocked_transformers
- Optional[List[Union[BlockedTransformers, str]]]
Uma lista de nomes de transformadores a serem bloqueados durante a caracterização, predefinições para Nenhum
Um dicionário de nomes de colunas e tipos de funcionalidades utilizados para atualizar a finalidade da coluna, predefinições para Nenhum
Código ISO 639-3 de três carateres para os idiomas contidos no conjunto de dados. Os idiomas que não o inglês só são suportados se utilizar computação ativada por GPU. A language_code "mula" deve ser utilizada se o conjunto de dados contiver vários idiomas. Para localizar códigos ISO 639-3 para idiomas diferentes, veja https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes, predefinições para Nenhum
- transformer_params
- Optional[Dict[str, List[ColumnTransformer]]]
Um dicionário do transformador e dos parâmetros de personalização correspondentes, predefinições para Nenhum
Se pretende incluir métodos de engenharia de funcionalidades baseados em DNN, a predefinição é Nenhuma
Exceções
Gerado se dest é um caminho de ficheiro e o ficheiro já existe.
Gerado se o dest for um ficheiro aberto e o ficheiro não for gravável.
set_forecast_settings
Gerir parâmetros utilizados pela previsão de tarefas.
set_forecast_settings(*, time_column_name: str | None = None, forecast_horizon: str | int | None = None, time_series_id_column_names: str | List[str] | None = None, target_lags: str | int | List[int] | None = None, feature_lags: str | None = None, target_rolling_window_size: str | int | None = None, country_or_region_for_holidays: str | None = None, use_stl: str | None = None, seasonality: str | int | None = None, short_series_handling_config: str | None = None, frequency: str | None = None, target_aggregate_function: str | None = None, cv_step_size: int | None = None, features_unknown_at_forecast_time: str | List[str] | None = None) -> None
Parâmetros
O nome da coluna time. Este parâmetro é necessário ao prever para especificar a coluna datetime nos dados de entrada utilizados para criar a série temporal e inferir a respetiva frequência.
- forecast_horizon
O horizonte de previsão máximo pretendido em unidades de frequência de série temporal. O valor predefinido é 1.
As unidades baseiam-se no intervalo de tempo dos seus dados de preparação, por exemplo, mensalmente, semanalmente que o meteorologista deve prever. Quando o tipo de tarefa está a ser previsto, este parâmetro é necessário. Para obter mais informações sobre como definir parâmetros de previsão, veja Preparar automaticamente um modelo de previsão de série temporal.
Os nomes das colunas utilizadas para agrupar uma série temporal. Pode ser utilizado para criar várias séries. Se os nomes das colunas de ID da série temporal não estiverem definidos ou as colunas de identificador especificadas não identificarem todas as séries no conjunto de dados, os identificadores de série temporal serão criados automaticamente para o conjunto de dados.
- target_lags
O número de períodos anteriores a desfasar da coluna de destino. Por predefinição, os atrasos estão desativados.
Ao prever, este parâmetro representa o número de linhas a desfasar os valores de destino com base na frequência dos dados. Isto é representado como uma lista ou um único número inteiro. O atraso deve ser utilizado quando a relação entre as variáveis independentes e a variável dependente não corresponder ou correlacionar por predefinição. Por exemplo, ao tentar prever a procura de um produto, a procura em qualquer mês pode depender do preço de mercadorias específicas 3 meses antes. Neste exemplo, poderá querer atrasar negativamente o destino (procura) em 3 meses para que o modelo esteja a preparar a relação correta. Para obter mais informações, veja Preparar automaticamente um modelo de previsão de série temporal.
Tenha em atenção a deteção automática de atrasos de destino e o tamanho da janela temporal. Veja os comentários correspondentes na secção de janela temporal. Utilizamos o algoritmo seguinte para detetar o desfasamento ideal do destino e o tamanho da janela temporal.
Estimize a ordem de atraso máximo para a seleção de funcionalidades de aspeto anterior. No nosso caso, é o número de períodos até à próxima granularidade de frequência de data, ou seja, se a frequência for diária, será uma semana (7), se for uma semana, será mês (4). Esses valores multiplicados por dois são os maiores valores possíveis de lags/rolling windows. Nos nossos exemplos, vamos considerar a ordem de atraso máximo de 14 e 8, respetivamente).
Crie uma série não sazonalizada ao adicionar tendências e componentes residuais. Esta ação será utilizada no próximo passo.
Estimize a Função PACF – Correlação Automática Parcial nos dados de (2) e procure pontos, em que a correlação automática é significativa, ou seja, o seu valor absoluto é superior a 1,96/square_root(valor de atraso máximo), que correspondem à significância de 95%.
Se todos os pontos forem significativos, consideramos que é uma sazonalidade forte e não criamos funcionalidades de olhar para trás.
Analisamos os valores pacf desde o início e o valor antes da primeira correlação automática insignificante designará o atraso. Se o primeiro elemento significativo (valor correlacionado consigo próprio) for seguido de insignificante, o atraso será 0 e não utilizaremos as funcionalidades de retrospetivo.
Sinalizador para gerar atrasos para as funcionalidades numéricas com "auto" ou Nenhum.
O número de períodos anteriores utilizados 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. Se estiver definido como "automático", a janela temporal será estimada como o último valor em que o PACF é mais, então o limiar de significância. Consulte target_lags secção para obter detalhes.
O país/região utilizado para gerar funcionalidades de feriados. Estes devem ser códigos de país/região ISO 3166 de duas letras, por exemplo "EUA" ou "GB".
- use_stl
Configure a Decomposição de STL da coluna de destino da série temporal. use_stl pode levar três valores: Nenhum (predefinição) - sem decomposição stl, 'temporada' - apenas gerar componente de estação e season_trend - gerar componentes de estação e tendência.
Defina a sazonalidade de série temporal como um múltiplo inteiro da frequência da série. Se a sazonalidade estiver definida como "automática", será inferida. Se estiver definida como Nenhuma, a série temporal é assumida como não sazonal, o que é equivalente a sazonalidade=1.
- short_series_handling_config
O parâmetro que define como se o AutoML deve processar séries de tempo curtos.
Valores possíveis: "auto" (predefinição), "pad", "drop" e None.
- as séries curtas automáticas serão acolchoadas se não existirem séries longas,
caso contrário, as séries curtas serão removidas.
- todas as séries curtas serão acolchoadas.
- remover todas as séries curtas será removida".
- Nenhuma das séries curtas não será modificada.
Se estiver definida como 'pad', a tabela será preenchida com os zeros e valores vazios para os regressors e valores aleatórios para o destino com a média igual à mediana do valor de destino para um determinado ID de série temporal. Se a mediana for mais ou igual a zero, o valor acolchoado mínimo será cortado por zero: Entrada:
Data
numeric_value
string
destino
2020-01-01
23
green
55
O resultado pressupõe que o número mínimo de valores é quatro:
Data
numeric_value
string
destino
2019-12-29
0
ND
55.1
2019-12-30
0
ND
55.6
2019-12-31
0
ND
54.5
2020-01-01
23
green
55
Nota: Temos dois parâmetros short_series_handling_configuration e short_series_handling legados. Quando ambos os parâmetros estão definidos, estamos a sincronizá-los conforme mostrado na tabela abaixo (short_series_handling_configuration e short_series_handling para brevidade são marcados como handling_configuration e a processar, respetivamente).
processamento
handlingconfiguration
resultinghandling
resultinghandlingconfiguration
Verdadeiro
auto
Verdadeiro
auto
Verdadeiro
teclado
Verdadeiro
auto
Verdadeiro
drop
Verdadeiro
auto
Verdadeiro
Nenhuma
Falso
Nenhuma
Falso
auto
Falso
Nenhuma
Falso
teclado
Falso
Nenhuma
Falso
drop
Falso
Nenhuma
Falso
Nenhuma
Falso
Nenhuma
- frequency
Frequência de previsão.
Ao prever, este parâmetro representa o período com o qual a previsão é pretendida, por exemplo, diariamente, semanalmente, anualmente, etc. Por predefinição, a frequência de previsão é a frequência do conjunto de dados. Opcionalmente, pode defini-lo como maior (mas não menor) do que a frequência do conjunto de dados. Vamos agregar os dados e gerar os resultados na frequência de previsão. Por exemplo, para dados diários, pode definir a frequência como diária, semanal ou mensal, mas não por hora. A frequência tem de ser um alias de deslocamento pandas. Veja a documentação do pandas para obter mais informações: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects
- target_aggregate_function
A função a ser utilizada para agregar a coluna de destino da série temporal para estar em conformidade com uma frequência especificada por um utilizador. Se o target_aggregation_function estiver definido, mas o parâmetro freq não estiver definido, o erro será gerado. As possíveis funções de agregação de destino são: "sum", "max", "min" e "mean".
Os valores da coluna de destino são agregados com base na operação especificada. Normalmente, a soma é adequada para a maioria dos cenários.
As colunas do preditor numérico nos seus dados são agregadas por soma, média, valor mínimo e valor máximo. Como resultado, o ML automatizado gera novas colunas sufixadas com o nome da função de agregação e aplica a operação de agregação selecionada.
Para colunas do preditor categórico, os dados são agregados por modo, a categoria mais proeminente na janela.
As colunas do preditor de datas são agregadas pelo valor mínimo, valor máximo e modo.
freq
target_aggregation_function
Mecanismo de regularidade de dados
Nenhum (Predefinição)
Nenhum (Predefinição)
A agregação não é aplicada. Se não for possível determinar a validfrequência, será gerado o erro.
Algum Valor
Nenhum (Predefinição)
A agregação não é aplicada. Se a numberof data pointscompliant togiven frequencygrid for inválida, 90%estes pontos serão movidos, caso contrário, o erro será gerado.
Nenhum (Predefinição)
Função de agregação
O erro aboutmissingfrequencyparameter israised.
Algum Valor
Função de agregação
Agregar a tofrequência comprovidedaggregationfunction.
Número de períodos entre o origin_time de uma dobra de CV e a dobra seguinte. Por exemplo, se n_step = 3 para dados diários, a hora de origem para cada dobra terá três dias de diferença.
As colunas de funcionalidades disponíveis para preparação, mas desconhecidas no momento da previsão/inferência. Se features_unknown_at_forecast_time estiver definido como uma lista vazia, presume-se que todas as colunas de funcionalidades no conjunto de dados são conhecidas no momento da inferência. Se este parâmetro não estiver definido, o suporte para funcionalidades futuras não está ativado.
Exceções
Gerado se dest é um caminho de ficheiro e o ficheiro já existe.
Gerado se o dest for um ficheiro aberto e o ficheiro não for gravável.
set_limits
Defina limites para a tarefa.
set_limits(*, enable_early_termination: bool | None = None, exit_score: float | None = None, max_concurrent_trials: int | None = None, max_cores_per_trial: int | None = None, max_nodes: int | None = None, max_trials: int | None = None, timeout_minutes: int | None = None, trial_timeout_minutes: int | None = None) -> None
Parâmetros
Se ativar a terminação antecipada se a classificação não estiver a melhorar a curto prazo, a predefinição é Nenhuma.
Lógica de paragem precoce:
Nenhuma paragem antecipada para as primeiras 20 iterações (marcos).
A janela de paragem antecipada começa na 21.ª iteração e procura iterações early_stopping_n_iters
(atualmente definido como 10). Isto significa que a primeira iteração onde a paragem pode ocorrer é a 31ª.
O AutoML ainda agenda 2 iterações de conjunto após a paragem antecipada, o que pode resultar em pontuações mais altas.
A paragem antecipada é acionada se o valor absoluto da melhor classificação calculada for o mesmo para o passado
early_stopping_n_iters iterações, ou seja, se não houver melhorias na classificação para iterações early_stopping_n_iters.
Classificação de destino para experimentação. A experimentação termina depois de esta classificação ser atingida. Se não for especificada (sem critérios), a experimentação é executada até que não sejam feitos mais progressos na métrica primária. Para obter mais informações sobre critérios de saída, veja este artigo , predefinições para Nenhum
Este é o número máximo de iterações que seriam executadas em paralelo. O valor predefinido é 1.
- Os clusters AmlCompute suportam uma iteração em execução por nó.
Para múltiplas execuções principais de experimentação autoML executadas em paralelo num único cluster AmlCompute, a soma dos max_concurrent_trials
valores de todas as experimentações deve ser menor ou igual ao número máximo de nós. Caso contrário, as execuções serão colocadas em fila até que os nós estejam disponíveis.
- A DSVM suporta várias iterações por nó.
max_concurrent_trials
deve
ser menor ou igual ao número de núcleos na DSVM. Para várias experimentações executadas em paralelo numa única DSVM, a soma dos max_concurrent_trials
valores para todas as experimentações deve ser menor ou igual ao número máximo de nós.
- Databricks –
max_concurrent_trials
deve ser menor ou igual ao número de
nós de trabalho no Databricks.
max_concurrent_trials
não se aplica a execuções locais. Anteriormente, este parâmetro era denominado concurrent_iterations
.
O número máximo de threads a utilizar para uma determinada iteração de preparação. Valores aceitáveis:
Maior que 1 e menor ou igual ao número máximo de núcleos no destino de computação.
Igual a -1, o que significa utilizar todos os núcleos possíveis por iteração por execução subordinada.
Igual a 1, a predefinição.
[Experimental] O número máximo de nós a utilizar para preparação distribuída.
Para a previsão, cada modelo é preparado com nós máximo(2, int(max_nodes/max_concurrent_trials)).
Para classificação/regressão, cada modelo é preparado com max_nodes nós.
Nota: este parâmetro está em pré-visualização pública e poderá mudar no futuro.
O número total de diferentes combinações de algoritmos e parâmetros a testar durante uma experimentação de ML automatizada. Se não for especificado, a predefinição é 1000 iterações.
Período máximo de tempo em minutos que todas as iterações combinadas podem demorar até que a experimentação termine. Se não for especificado, o tempo limite da experimentação predefinido é de 6 dias. Para especificar um tempo limite inferior ou igual a 1 hora, certifique-se de que o tamanho do conjunto de dados não é superior a 10 000 000 (linhas vezes coluna) ou resultados de erros, predefinições para Nenhum
Tempo máximo em minutos para o qual cada iteração pode ser executada antes de terminar. Se não for especificado, é utilizado um valor de 1 mês ou 43200 minutos, predefinição para Nenhum
Exceções
Gerado se dest é um caminho de ficheiro e o ficheiro já existe.
Gerado se o dest for um ficheiro aberto e o ficheiro não for gravável.
set_training
O método para configurar as definições relacionadas com a preparação de previsão.
set_training(*, enable_onnx_compatible_models: bool | None = None, enable_dnn_training: bool | None = None, enable_model_explainability: bool | None = None, enable_stack_ensemble: bool | None = None, enable_vote_ensemble: bool | None = None, stack_ensemble_settings: StackEnsembleSettings | None = None, ensemble_model_download_timeout: int | None = None, allowed_training_algorithms: List[str] | None = None, blocked_training_algorithms: List[str] | None = None, training_mode: str | TrainingMode | None = None) -> None
Parâmetros
- enable_onnx_compatible_models
Quer ativar ou desativar a imposição dos modelos compatíveis com ONNX. A predefinição é Falso. Para obter mais informações sobre o Open Neural Network Exchange (ONNX) e o Azure Machine Learning, veja este artigo.
Se pretende incluir modelos baseados em DNN durante a seleção de modelos. No entanto, a predefinição é True para tarefas NLP DNN e é Falso para todas as outras tarefas de AutoML.
- enable_model_explainability
Se pretende ativar a explicação do melhor modelo autoML no final de todas as iterações de preparação autoML. Para obter mais informações, veja Interpretability: model explanations in automated machine learning (Interpretabilidade: explicações de modelos na aprendizagem automática automatizada). , predefinições para Nenhum
- enable_stack_ensemble
Quer ativar/desativar a iteração stackEnsemble. Se enable_onnx_compatible_models sinalizador estiver a ser definido, a iteração StackEnsemble será desativada. Da mesma forma, para tarefas do Timeseries, a iteração StackEnsemble será desativada por predefinição, para evitar riscos de sobreajuste devido ao pequeno conjunto de preparação utilizado na adaptação do meta-aluno. Para obter mais informações sobre conjuntos, veja Configuração do conjunto , predefinições para Nenhum
- enable_vote_ensemble
Quer ativar/desativar a iteração VotingEnsemble. Para obter mais informações sobre conjuntos, veja Configuração do conjunto , predefinições para Nenhum
- stack_ensemble_settings
- Optional[StackEnsembleSettings]
Definições da iteração StackEnsemble, predefinições para Nenhuma
Durante a geração de modelos VotingEnsemble e StackEnsemble, são transferidos vários modelos ajustados das execuções subordinadas anteriores. Configure este parâmetro com um valor superior a 300 segundos, se for necessário mais tempo, a predefinição é Nenhuma
Uma lista de nomes de modelos para procurar uma experimentação. Se não for especificado, todos os modelos suportados para a tarefa são utilizados menos os especificados em blocked_training_algorithms
modelos tensorFlow ou preteridos, predefinições para Nenhum
Uma lista de algoritmos a ignorar para uma experimentação, predefinição para Nenhum
- training_mode
[Experimental] O modo de preparação a utilizar. Os valores possíveis são:
distributed – permite a preparação distribuída para algoritmos suportados.
non_distributed- desativa a preparação distribuída.
auto- Atualmente, é o mesmo que non_distributed. No futuro, isto pode mudar.
Nota: este parâmetro está em pré-visualização pública e poderá mudar no futuro.
Exceções
Gerado se dest é um caminho de ficheiro e o ficheiro já existe.
Gerado se o dest for um ficheiro aberto e o ficheiro não for gravável.
Atributos
base_path
creation_context
O contexto de criação do recurso.
Devoluções
Os metadados de criação do recurso.
Tipo de retorno
featurization
Obtenha as definições de caracterização tabular para a tarefa autoML.
Devoluções
Definições de caracterização tabular para a tarefa de AutoML
Tipo de retorno
forecasting_settings
Devolva as definições de previsão.
Devoluções
definições de previsão.
Tipo de retorno
id
O ID do recurso.
Devoluções
O ID global do recurso, um ID do Azure Resource Manager (ARM).
Tipo de retorno
inputs
limits
Obtenha os limites tabulares da tarefa autoML.
Devoluções
Limites tabulares para a tarefa de AutoML
Tipo de retorno
log_files
Ficheiros de saída da tarefa.
Devoluções
O dicionário de nomes de registo e URLs.
Tipo de retorno
log_verbosity
Obtenha a verbosidade do registo para a tarefa autoML.
Devoluções
verbosidade do registo para a tarefa de AutoML
Tipo de retorno
outputs
primary_metric
Devolva a métrica primária a utilizar para a seleção de modelos.
Devoluções
A métrica primária para a seleção de modelos.
Tipo de retorno
status
O estado da tarefa.
Os valores comuns devolvidos incluem "Running", "Completed" e "Failed". Todos os valores possíveis são:
NotStarted - este é um estado temporário em que os objetos Run do lado do cliente estão antes da submissão da cloud.
A iniciar – a Execução começou a ser processada na cloud. O autor da chamada tem um ID de execução neste momento.
Aprovisionamento – a computação a pedido está a ser criada para uma determinada submissão de tarefas.
Preparação – o ambiente de execução está a ser preparado e está numa de duas fases:
Compilação de imagens do Docker
configuração do ambiente conda
Em fila – a tarefa está em fila de espera no destino de computação. Por exemplo, no BatchAI, a tarefa está num estado em fila
enquanto aguarda que todos os nós pedidos estejam prontos.
Em execução – a tarefa começou a ser executada no destino de computação.
Finalização – a execução do código do utilizador foi concluída e a execução encontra-se em fases de pós-processamento.
CancelRequested - Foi pedido o cancelamento para a tarefa.
Concluído – a execução foi concluída com êxito. Isto inclui a execução do código de utilizador e a execução
fases de pós-processamento.
Falha - A execução falhou. Normalmente, a propriedade Erro numa execução irá fornecer detalhes sobre o motivo.
Cancelado – segue um pedido de cancelamento e indica que a execução foi cancelada com êxito.
NotResponding – para execuções com Heartbeats ativados, não foi enviado nenhum heartbeat recentemente.
Devoluções
Estado da tarefa.
Tipo de retorno
studio_url
Ponto final do Azure ML Studio.
Devoluções
O URL para a página de detalhes da tarefa.
Tipo de retorno
task_type
Obter tipo de tarefa.
Devoluções
O tipo de tarefa a executar. Os valores possíveis incluem: "classificação", "regressão", "previsão".
Tipo de retorno
test_data
training
Devolva as definições de preparação de previsão.
Devoluções
definições de preparação.
Tipo de retorno
training_data
type
validation_data
Azure SDK for Python