다음을 통해 공유


ForecastingParameters 클래스

예측 작업에 사용되는 매개 변수를 관리합니다.

상속
builtins.object
ForecastingParameters

생성자

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)

매개 변수

time_column_name
str
기본값: None

시간 열의 이름입니다. 이 매개 변수는 시계열을 빌드하고 빈도를 유추하는 데 사용되는 입력 데이터에서 날짜/시간 열을 지정하기 위해 예측할 때 필요합니다.

forecast_horizon
int 또는 str
기본값: 1

시계열 빈도 단위로 표시되는 원하는 최대 예측 기간입니다. 기본값은 1입니다.

단위는 학습 데이터의 시간 간격(예: 예측자가 예측해야 하는 월별, 매주)을 기반으로 합니다. 작업 형식이 예측되면 이 매개 변수가 필요합니다. 예측 매개 변수 설정에 대한 자세한 내용은 시계열 예측 모델 자동 학습을 참조하세요.

time_series_id_column_names
str 또는 list(str)
기본값: None

시계열을 그룹화하는 데 사용되는 열의 이름입니다. 여러 계열을 만드는 데 사용할 수 있습니다. 시계열 ID 열 이름이 정의되지 않았거나 지정된 식별자 열이 데이터 세트의 모든 시리즈를 식별하지 않는 경우 데이터 세트에 대한 시계열 식별자가 자동으로 만들어집니다.

group_column_names
str 또는 list(str)
기본값: None
target_lags
int, str 또는 list(int)
기본값: None

대상 열에서 지연되는 지난 기간의 수입니다. 기본적으로 지연은 꺼져 있습니다.

예측할 때 이 매개 변수는 데이터 빈도에 따라 대상 값을 지연시킬 행 수를 나타냅니다. 이는 목록 또는 단일 정수로 표시됩니다. 지연은 독립 변수와 종속 변수 간 관계가 일치하지 않거나 기본적으로 상관 관계가 없는 경우에 사용해야 합니다. 예를 들어 제품에 대한 수요를 예측하려고 할 때 특정 월의 수요는 3개월 전 특정 상품 가격에 따라 달라질 수 있습니다. 이 예에서는 모델이 올바른 관계를 학습하도록 대상(수요)을 -3개월 지연시킬 수 있습니다. 자세한 내용은 시계열 예측 모델 자동 학습을 참조하세요.

대상 지연 및 롤링 창 크기의 자동 검색에 대한 참고 사항입니다. 롤링 창 섹션에서 해당 설명을 참조하세요. 최적의 대상 지연과 롤링 창 크기를 검색하기 위해 다음 알고리즘을 사용합니다.

  1. 다시 확인 기능 선택에 대한 최대 지연 순서를 예측합니다. 이 경우 다음 날짜 빈도 세분성까지의 기간 수입니다. 즉, 빈도가 매일인 경우 1주일(7)이 되며, 1주일이면 월(4)이 됩니다. 2를 곱한 값은 지연/롤링 창의 가능한 가장 큰 값입니다. 이 예제에서는 각각 14와 8의 최대 지연 순서를 고려합니다.)

  2. 추세 및 잔차 구성 요소를 추가하여 계절화되지 않은 계열을 만듭니다. 이는 다음 단계에서 사용됩니다.

  3. (2)의 데이터에 대한 PACF - 부분 자동 상관 관계 함수를 추정하고, 자동 상관 관계가 중요한 지점을 검색합니다. 즉, 절대값은 1.96/square_root(최대 지연 값)이며, 이는 95%의 중요도에 해당합니다.

  4. 모든 포인트가 중요한 경우 계절성이 강하다고 간주하고 다시 확인 기능을 만들지 않습니다.

  5. 처음부터 PACF 값을 검사하고 첫 번째 중요하지 않은 자동 상관 이전 값이 지연을 지정합니다. 첫 번째 중요한 요소(자신과 상관되는 값)가 중요하지 않은 경우 대기 시간은 0이 되고 다시 확인 기능을 사용하지 않습니다.

feature_lags
str 또는 None
기본값: None

'auto' 또는 None을 사용하여 숫자 기능에 대한 지연을 생성하기 위한 플래그입니다.

target_rolling_window_size
int, str 또는 None
기본값: None

대상 열의 롤링 창 평균을 만드는 데 사용된 과거 기간의 수입니다.

예측할 때 이 매개 변수는 예측 값을 생성하는 데 사용할 n 과거 기간을 나타냅니다. <= 학습 집합 크기입니다. 생략하면 n은 전체 학습 세트 크기입니다. 모델을 학습시킬 때 특정한 양의 기록만 고려하려는 경우 이 매개 변수를 지정합니다. 'auto'로 설정하면 PACF가 유의 임계값보다 큰 마지막 값으로 롤링 윈도우가 예상됩니다. 자세한 내용은 target_lags 섹션을 참조하세요.

holiday_country
str 또는 None
기본값: None
seasonality
int, str 또는 None
기본값: auto

시계열 계절성을 계열 빈도의 정수배로 설정합니다. 계절성을 '자동'으로 설정하면 유추됩니다. None으로 설정하면 시계열은 계절성=1에 해당하는 비계절성으로 간주됩니다.

country_or_region_for_holidays
str 또는 None
기본값: None

휴일 기능을 생성하는 데 사용되는 국가/지역입니다. ISO 3166 2자리 국가/지역 코드여야 합니다(예: 'US' 또는 'GB').

use_stl
str 또는 None
기본값: None

시계열 대상 열의 STL 분해를 구성합니다. use_stl은 세 가지 값을 사용할 수 있습니다. None(기본값) - stl 분해 없음, 'season' - 시즌 구성 요소만 생성 및 season_trend - 시즌 및 추세 구성 요소 모두 생성.

short_series_handling
bool
기본값: True

예측 작업에 대한 짧은 시리즈 처리를 구성합니다.

short_series_handling_configuration
str 또는 None
기본값: auto

AutoML이 짧은 시계열을 처리해야 하는지 여부를 정의하는 매개 변수입니다.

가능한 값: 'auto'(기본값), 'pad', 'drop' 및 None.

  • auto 긴 시리즈가 없으면 짧은 시리즈가 채워지고, 그렇지 않으면 짧은 시리즈가 삭제됩니다.
  • pad 모든 짧은 시리즈가 채워집니다.
  • drop 모든 짧은 계열이 삭제됩니다."
  • None 짧은 시리즈가 수정되지 않습니다. 'pad'로 설정하면 테이블은 회귀 변수에 대한 0과 빈 값으로 채워지고 대상의 임의 값은 지정된 시계열 ID의 대상 값 중앙값과 같은 평균으로 채워집니다. 중앙값이 0보다 크거나 같으면 최소 패딩 값이 0으로 잘립니다. 입력:

날짜

numeric_value

string

대상

2020-01-01

23

green

55

최소 값 수가 4라고 가정한 출력:

날짜

numeric_value

string

대상

2019-12-29

0

해당 없음

55.1

2019-12-30

0

해당 없음

55.6

2019-12-31

0

해당 없음

54.5

2020-01-01

23

green

55

참고: short_series_handling_configuration 매개 변수와 레거시 short_series_handling 매개 변수가 두 개 있습니다. 두 매개 변수가 모두 설정되면 아래 표와 같이 동기화됩니다(간결함을 위해 short_series_handling_configuration 및 short_series_handling은 각각 handling_configuration 및 handling으로 표시됨).

처리

handling_configuration

결과 처리

결과 handling_configuration

True

auto

True

auto

True

패드

True

auto

True

drop

True

auto

True

없음

거짓

없음

거짓

auto

거짓

없음

거짓

패드

거짓

없음

거짓

drop

거짓

없음

거짓

없음

거짓

없음

freq
str 또는 None
기본값: None

예측 빈도입니다.

예측할 때 이 매개 변수는 예측이 필요한 기간을 나타냅니다(예: 매일, 매주, 매년 등). 예측 빈도는 기본적으로 데이터 세트 빈도입니다. 선택적으로 데이터 세트 빈도보다 크게(그러나 작지는 않음) 설정할 수 있습니다. 데이터를 집계하고 예측 빈도로 결과를 생성합니다. 예를 들어, 일별 데이터의 경우 빈도를 매일, 매주 또는 매월로 설정할 수 있지만 매시간은 설정할 수 없습니다. 빈도는 pandas 오프셋 별칭이어야 합니다. 자세한 내용은 pandas 설명서를 참조하세요. https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects

target_aggregation_function
str 또는 None
기본값: None

사용자가 지정한 빈도를 준수하기 위해 시계열 대상 열을 집계하는 데 사용되는 함수입니다. target_aggregation_function이 설정되었지만 freq 매개 변수가 설정되지 않은 경우 오류가 발생합니다. 가능한 대상 집계 함수는 "sum", "max", "min" 및 "mean"입니다.

  • 대상 열 값은 지정된 작업을 기반으로 집계됩니다. 일반적으로 sum은 대부분의 시나리오에 적합합니다.

  • 데이터의 숫자 예측 요소 열은 합계, 평균, 최솟값 및 최댓값으로 집계됩니다. 결과적으로 자동화된 ML은 집계 함수 이름이 접미사인 새 열을 생성하고 선택된 집계 작업을 적용합니다.

  • 범주 예측요소 열의 경우 데이터는 기간 내에 가장 두드러진 범주인 최빈값으로 집계됩니다.

  • 날짜 예측 열은 최솟값, 최댓값 및 최빈값으로 집계됩니다.

주파수

target_aggregation_function

데이터 규칙 수정 메커니즘

없음(기본값)

없음(기본값)

집계가 적용되지 않습니다. 유효한 빈도를 잠정할 수 없는 경우 오류가 발생합니다.

일부 값

없음(기본값)

집계가 적용되지 않습니다. 지정된 빈도 그리드에 규격된 데이터 포인트 수가 90% 미만이면 이러한 점이 제거되고, 그렇지 않으면 오류가 발생합니다.

없음(기본값)

집계 함수

누락된 빈도 매개 변수에 대한 오류가 발생했습니다.

일부 값

집계 함수

제공된 집계 함수를 사용하여 빈도로 집계합니다.

cv_step_size
str, int 또는 None
기본값: auto

한 CV 접기의 origin_time과 다음 접기 사이의 기간 수입니다. 예를 들어 일일 데이터의 n_step = 3인 경우 각 접기에 대한 원점 시간이 3일 간격으로 지정됩니다.

validate_parameters
bool
기본값: True

입력 매개 변수의 유효성을 검사하도록 구성합니다.

features_unknown_at_forecast_time
기본값: None
_enable_future_regressors
기본값: False

메서드

from_parameters_dict

dict에서 ForecastingParameters 클래스를 구성합니다.

validate_parameters

ForecastingParameters 클래스의 매개 변수의 유효성을 검사합니다.

from_parameters_dict

dict에서 ForecastingParameters 클래스를 구성합니다.

static from_parameters_dict(parameter_dict: Dict[str, Any], validate_params: bool, show_deprecate_warnings: bool | None = True) -> ForecastingParameters

매개 변수

parameter_dict
필수

dict에는 모든 예측 매개 변수가 포함됩니다.

validate_params
필수

입력 매개 변수의 유효성을 검사할지 여부입니다.

show_deprecate_warnings
기본값: True

더 이상 사용되지 않는 매개 변수 경고를 표시하도록 전환합니다.

validate_parameters

ForecastingParameters 클래스의 매개 변수의 유효성을 검사합니다.

validate_parameters()

특성

country_or_region_for_holidays

휴일 기능을 생성하는 데 사용되는 국가/지역입니다. ISO 3166 2자리 국가/지역 코드(예: 'US' 또는 'GB')여야 합니다.

cv_step_size

한 CV 접기의 origin_time과 다음 접기 사이의 기간 수입니다. 예를 들어 일일 데이터의 n_step = 3인 경우 각 접기에 대한 원점 시간이 3일 간격으로 지정됩니다.

drop_column_names

예측 작업을 위해 삭제할 열의 이름입니다.

dropna

시계열 데이터 변환기에서 dropna를 구성합니다.

feature_lags

숫자 기능에 대한 지연을 생성하기 위한 플래그입니다.

features_unknown_at_forecast_time

학습에 사용할 수 있지만 예측/유추 시간에 알 수 없는 기능의 열 이름입니다. 정의되지 않은 경우 모든 기능 열이 예측 시간에 알려진 것으로 간주됩니다.

forecast_horizon

시계열 빈도 단위로 표시되는 원하는 최대 예측 기간입니다. 기본값은 1입니다. 단위는 예측자가 예측해야 하는 학습 데이터의 시간 간격(예: 월별, 주별)을 기반으로 합니다.

formatted_drop_column_names

예측 작업을 위해 삭제할 열의 형식이 지정된 이름입니다.

formatted_group_column_names

formatted_target_lags

대상 열에서 지연되는 형식화된 과거 기간 수입니다.

formatted_time_series_id_column_names

시계열을 그룹화하는 데 사용되는 열의 이름입니다. 여러 계열을 만드는 데 사용할 수 있습니다. time_series_id_column_names가 정의되지 않은 경우 데이터 세트는 하나의 시계열로 간주됩니다.

formatted_unknown_features

학습에 사용할 수 있지만 예측/유추 시간에 알 수 없는 기능의 열 이름입니다. 정의되지 않은 경우 모든 기능 열이 예측 시간에 알려진 것으로 간주됩니다. dnn/tcn에서만 지원합니다. 사용자가 아무 것도 지정하지 않으면 향후 기능은 dnn에서 사용하도록 설정되지 않습니다. 그러나 빈 목록을 제공하는 경우 향후 기능이 사용하도록 설정되고 모든 기능 열이 예측 시간에 알려진 것으로 간주됩니다.

freq

데이터 세트의 빈도입니다.

group_column_names

holiday_country

휴일 기능을 생성하는 데 사용되는 국가/지역입니다. ISO 3166 2자리 국가/지역 코드(예: 'US' 또는 'GB')여야 합니다.

overwrite_columns

시계열 데이터 변환기에서 덮어쓰기 열을 구성합니다.

seasonality

시계열 계절성은 계열 빈도의 정수 배수입니다.

short_series_handling_configuration

가로결을 패딩해야 하는 경우 반환합니다.

target_aggregation_function

대상 집계 함수를 반환합니다.

target_lags

대상 열에서 지연되는 지난 기간의 수입니다.

target_rolling_window_size

time_column_name

시간 열의 이름입니다. 이 매개 변수는 시계열을 빌드하고 빈도를 유추하는 데 사용되는 입력 데이터에서 날짜/시간 열을 지정하기 위해 예측할 때 필요합니다.

time_series_id_column_names

시계열을 그룹화하는 데 사용되는 열의 이름입니다. 여러 계열을 만드는 데 사용할 수 있습니다. time_series_id_column_names가 정의되지 않은 경우 데이터 세트는 하나의 시계열로 간주됩니다.

transform_dictionary

시계열 데이터 변환기에서 변환 사전을 구성합니다.

use_stl

시계열 대상 열의 STL 분해를 구성합니다. use_stl은 세 가지 값을 사용할 수 있습니다. None(기본값) - stl 분해 없음, 'season' - 시즌 구성 요소만 생성 및 season_trend - 시즌 및 추세 구성 요소 모두 생성.

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