ForecastingParameters Classe
Gerir parâmetros utilizados pela previsão de tarefas.
- Herança
-
builtins.objectForecastingParameters
Construtor
ForecastingParameters(time_column_name: str | None = None, forecast_horizon: str | int = 1, time_series_id_column_names: str | List[str] | None = None, group_column_names: str | List[str] | None = None, target_lags: List[int] | int | str | None = None, feature_lags: str | None = None, target_rolling_window_size: str | int | None = None, holiday_country: str | None = None, seasonality: str | int | None = 'auto', country_or_region_for_holidays: str | None = None, use_stl: str | None = None, short_series_handling: bool = True, short_series_handling_configuration: str | None = 'auto', freq: str | None = None, target_aggregation_function: str | None = None, cv_step_size: str | int | None = 'auto', features_unknown_at_forecast_time: str | List[str] | None = None, validate_parameters: bool = True, _enable_future_regressors: bool = False, **kwargs: Any)
Parâmetros
- time_column_name
- str
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.
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 de horas. 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 do identificador especificadas não identificarem todas as séries no conjunto de dados, os identificadores da série temporal serão criados automaticamente para o conjunto de dados.
O número de períodos passados 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 para atrasar 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.
Nota sobre a deteção automática de atrasos de destino e tamanho da janela de rolamento. Veja os comentários correspondentes na secção da janela de rolamento. Utilizamos o algoritmo seguinte para detetar o atraso de destino ideal e o tamanho da janela sem interrupção.
Estimize a ordem de atraso máximo para a seleção de funcionalidades de retroceder. 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áxima 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 o PACF – Função de Correlação Automática Parcial nos dados de (2) e procure pontos, em que a correlação automática é significativa, ou seja, o valor absoluto é mais do que 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 retroceder.
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 por insignificante, o atraso será 0 e não utilizaremos as funcionalidades de retroceder.
Sinalizar 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 rolante 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 definido como "automático", a janela de rolamento será estimada como o último valor em que o PACF é mais do que o limiar de significância. Consulte target_lags secção para obter detalhes.
Defina a sazonalidade da série temporal como um número inteiro múltiplo da frequência da série. Se a sazonalidade estiver definida como "automática", será inferida. Se definida como Nenhuma, a série temporal é assumida como não sazonal, o que é equivalente a sazonalidade=1.
O país/região utilizado para gerar funcionalidades de feriados. Estes devem ser códigos iso 3166 país/região de duas letras, por exemplo "E.U.A" ou "GB".
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, 'season' - apenas gerar componente de temporada e season_trend - gerar componentes de estação e tendência.
- short_series_handling
- bool
Configurar o processamento de séries curtas para a previsão de tarefas.
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.
- largar todas as séries curtas será removida".
- Nenhuma das séries curtas será modificada. Se estiver definida como 'pad', a tabela será acolchoada com os zeros e valores vazios para os regressores 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 mínimo acolchoado será cortado por zero. Entrada:
Data
numeric_value
string
destino
2020-01-01
23
green
55
Saída assumindo 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 a brevidade são marcados como handling_configuration e processamento, respetivamente).
processamento
handling_configuration
processamento resultante
resultante handling_configuration
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
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
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 correção da regularidade de dados
Nenhum (Predefinição)
Nenhum (Predefinição)
A agregação não é aplicada. Se a frequência válida não puder ser indeterminada, o erro será gerado.
Algum Valor
Nenhum (Predefinição)
A agregação não é aplicada. Se o número de pontos de dados em conformidade com a grelha de frequência for menor, 90%estes pontos serão removidos, caso contrário, o erro será gerado.
Nenhum (Predefinição)
Função de agregação
O erro sobre os parâmetros de frequência em falta é gerado.
Algum Valor
Função de agregação
Agregar à frequência com a função providedaggregation.
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.
- features_unknown_at_forecast_time
- _enable_future_regressors
Métodos
from_parameters_dict |
Construa a classe ForecastingParameters a partir de um ditado. |
validate_parameters |
Valide os parâmetros na classe ForecastingParameters. |
from_parameters_dict
Construa a classe ForecastingParameters a partir de um ditado.
static from_parameters_dict(parameter_dict: Dict[str, Any], validate_params: bool, show_deprecate_warnings: bool | None = True) -> ForecastingParameters
Parâmetros
- parameter_dict
O ditado contém todos os parâmetros de previsão.
- validate_params
Validar ou não o parâmetro de entrada.
- show_deprecate_warnings
Mude para mostrar o aviso de parâmetros preteridos.
validate_parameters
Valide os parâmetros na classe ForecastingParameters.
validate_parameters()
Atributos
country_or_region_for_holidays
O país/região utilizado para gerar funcionalidades de feriados. Estes devem ser CÓDIGO ISO 3166 código de país/região de duas letras, por exemplo"E.U.A. ou "GB".
cv_step_size
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.
drop_column_names
Os nomes das colunas a remover para as tarefas de previsão.
dropna
Configure o dropna no transformador de dados de intervalos de tempo.
feature_lags
Sinalizar para gerar atrasos para as funcionalidades numéricas.
features_unknown_at_forecast_time
Os nomes das colunas das funcionalidades disponíveis para preparação, mas desconhecidos no tempo de previsão/inferência. Se isto não estiver definido, presume-se que todas as colunas de funcionalidades são conhecidas no momento da previsão.
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.
formatted_drop_column_names
Os nomes formatados das colunas a remover para as tarefas de previsão.
formatted_group_column_names
formatted_target_lags
O número formatado de períodos passados a desfasar da coluna de destino.
formatted_time_series_id_column_names
Os nomes das colunas utilizadas para agrupar uma série de horas. Pode ser utilizado para criar várias séries. Se time_series_id_column_names não estiver definido, assume-se que o conjunto de dados é uma série temporal.
formatted_unknown_features
Os nomes das colunas das funcionalidades disponíveis para preparação, mas desconhecidos no tempo de previsão/inferência. Se isto não estiver definido, presume-se que todas as colunas de funcionalidades são conhecidas no momento da previsão. Apenas suportado em dnn/tcn. Quando o utilizador não especifica nada, as funcionalidades futuras não são ativadas no dnn. No entanto, se fornecerem uma lista vazia, as funcionalidades futuras serão ativadas e todas as colunas de funcionalidades serão consideradas conhecidas no momento da previsão.
freq
A frequência do conjunto de dados.
group_column_names
holiday_country
O país/região utilizado para gerar funcionalidades de feriados. Estes devem ser CÓDIGO ISO 3166 código de país/região de duas letras, por exemplo"E.U.A. ou "GB".
overwrite_columns
Configure overwrite_columns no transformador de dados de intervalos de tempo.
seasonality
Sazonalidade da série temporal como um número inteiro múltiplo da frequência da série.
short_series_handling_configuration
Devolver se o grão curto deve ser acolchoado.
target_aggregation_function
Devolver a função de agregação de destino.
target_lags
O número de períodos passados a desfasar da coluna de destino.
target_rolling_window_size
time_column_name
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.
time_series_id_column_names
Os nomes das colunas utilizadas para agrupar uma série de horas. Pode ser utilizado para criar várias séries. Se time_series_id_column_names não estiver definido, assume-se que o conjunto de dados é uma série temporal.
transform_dictionary
Configure transform_dictionary no transformador de dados de intervalos de tempo.
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, 'season' - apenas gerar componente de temporada e season_trend - gerar componentes de estação e tendência.
DEFAULT_TIMESERIES_VALUE
DEFAULT_TIMESERIES_VALUE = {'_enable_future_regressors': False, 'cv_step_size': 'auto', 'feature_lags': None, 'features_unknown_at_forecast_time': None, 'forecast_horizon': 1, 'freq': None, 'max_horizon': 1, 'seasonality': 'auto', 'short_series_handling': True, 'short_series_handling_configuration': 'auto', 'target_aggregation_function': None, 'target_lags': None, 'target_rolling_window_size': None, 'use_stl': None}
DEPRECATED_DICT
DEPRECATED_DICT = {'country': 'country_or_region_for_holidays', 'country_or_region': 'country_or_region_for_holidays', 'grain_column_names': 'time_series_id_column_names', 'holiday_country': 'country_or_region_for_holidays', 'max_horizon': 'forecast_horizon'}
EMPTY_TIME_COLUMN_NAME
EMPTY_TIME_COLUMN_NAME = '_EMPTY_TIME_COLUMN_NAME'
MAX_LAG_LENGTH
MAX_LAG_LENGTH = 2000
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários