ForecastingJob 클래스
AutoML 예측 작업에 대한 구성입니다.
새 AutoML 예측 작업을 초기화합니다.
- 상속
-
azure.ai.ml.entities._job.automl.tabular.automl_tabular.AutoMLTabularForecastingJob
생성자
ForecastingJob(*, primary_metric: str | None = None, forecasting_settings: ForecastingSettings | None = None, **kwargs)
매개 변수
메서드
dump |
YAML 형식의 파일로 작업 콘텐츠를 덤프합니다. |
set_data |
데이터 구성을 정의합니다. |
set_featurization |
기능 엔지니어링 구성을 정의합니다. |
set_forecast_settings |
예측 작업에 사용되는 매개 변수를 관리합니다. |
set_limits |
작업에 대한 제한을 설정합니다. |
set_training |
예측 학습 관련 설정을 구성하는 방법입니다. |
dump
YAML 형식의 파일로 작업 콘텐츠를 덤프합니다.
dump(dest: str | PathLike | IO, **kwargs) -> None
매개 변수
YAML 콘텐츠를 쓸 로컬 경로 또는 파일 스트림입니다. dest가 파일 경로인 경우 새 파일이 만들어집니다. dest가 열려 있는 파일인 경우 파일이 직접 기록됩니다.
- kwargs
- dict
YAML serializer에 전달할 추가 인수입니다.
예외
dest가 파일 경로이고 파일이 이미 있는 경우 발생합니다.
dest가 열려 있는 파일이고 파일을 쓸 수 없는 경우 발생합니다.
set_data
데이터 구성을 정의합니다.
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
매개 변수
- training_data
- Input
학습 데이터입니다.
- target_column_name
- str
대상 열의 열 이름입니다.
예외
dest가 파일 경로이고 파일이 이미 있는 경우 발생합니다.
dest가 열려 있는 파일이고 파일을 쓸 수 없는 경우 발생합니다.
set_featurization
기능 엔지니어링 구성을 정의합니다.
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
매개 변수
- blocked_transformers
- Optional[List[Union[BlockedTransformers, str]]]
기능화 중에 차단할 변환기 이름 목록이며 기본값은 없음입니다.
열 용도 를 업데이트하는 데 사용되는 열 이름 및 기능 형식의 사전은 기본적으로 없음으로 설정됩니다.
데이터 세트에 포함된 언어에 대한 세 문자 ISO 639-3 코드입니다. 영어 이외의 언어는 GPU 사용 컴퓨팅을 사용하는 경우에만 지원됩니다. 데이터 세트에 여러 언어가 포함된 경우 language_code 'mul'을 사용해야 합니다. 다른 언어에 대한 ISO 639-3 코드를 찾으려면 을 참조 https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes하세요. 기본값은 없음입니다.
- transformer_params
- Optional[Dict[str, List[ColumnTransformer]]]
변환기 및 해당 사용자 지정 매개 변수의 사전은 기본적으로 없음으로 설정됩니다.
예외
dest가 파일 경로이고 파일이 이미 있는 경우 발생합니다.
dest가 열려 있는 파일이고 파일을 쓸 수 없는 경우 발생합니다.
set_forecast_settings
예측 작업에 사용되는 매개 변수를 관리합니다.
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
매개 변수
시간 열의 이름입니다. 이 매개 변수는 시계열을 빌드하고 빈도를 유추하는 데 사용되는 입력 데이터에서 날짜/시간 열을 지정하기 위해 예측할 때 필요합니다.
- forecast_horizon
시계열 빈도 단위로 표시되는 원하는 최대 예측 기간입니다. 기본값은 1입니다.
단위는 학습 데이터의 시간 간격(예: 예측자가 예측해야 하는 월별, 매주)을 기반으로 합니다. 작업 형식이 예측되면 이 매개 변수가 필요합니다. 예측 매개 변수 설정에 대한 자세한 내용은 시계열 예측 모델 자동 학습을 참조하세요.
시계열을 그룹화하는 데 사용되는 열의 이름입니다. 여러 계열을 만드는 데 사용할 수 있습니다. 시계열 ID 열 이름이 정의되지 않았거나 지정된 식별자 열이 데이터 세트의 모든 계열을 식별하지 않는 경우 데이터 집합에 대한 시계열 식별자가 자동으로 만들어집니다.
- target_lags
대상 열에서 지연되는 지난 기간의 수입니다. 기본적으로 지연은 꺼져 있습니다.
예측할 때 이 매개 변수는 데이터 빈도에 따라 대상 값을 지연시킬 행 수를 나타냅니다. 이는 목록 또는 단일 정수로 표시됩니다. 지연은 독립 변수와 종속 변수 간 관계가 일치하지 않거나 기본적으로 상관 관계가 없는 경우에 사용해야 합니다. 예를 들어 제품에 대한 수요를 예측하려고 할 때 특정 월의 수요는 3개월 전 특정 상품 가격에 따라 달라질 수 있습니다. 이 예에서는 모델이 올바른 관계를 학습하도록 대상(수요)을 -3개월 지연시킬 수 있습니다. 자세한 내용은 시계열 예측 모델 자동 학습을 참조하세요.
대상 지연 및 롤링 창 크기의 자동 검색에 대한 참고 사항입니다. 롤링 창 섹션에서 해당 설명을 참조하세요. 최적의 대상 지연과 롤링 창 크기를 검색하기 위해 다음 알고리즘을 사용합니다.
다시 확인 기능 선택에 대한 최대 지연 순서를 예측합니다. 이 경우 다음 날짜 빈도 세분성까지의 기간 수입니다. 즉, 빈도가 매일인 경우 1주일(7)이 되며, 1주일이면 월(4)이 됩니다. 2를 곱한 값은 지연/롤링 창의 가능한 가장 큰 값입니다. 이 예제에서는 각각 14와 8의 최대 지연 순서를 고려합니다.)
추세 및 잔차 구성 요소를 추가하여 계절화되지 않은 계열을 만듭니다. 이는 다음 단계에서 사용됩니다.
(2)의 데이터에 대한 PACF - 부분 자동 상관 관계 함수를 추정하고, 자동 상관 관계가 중요한 지점을 검색합니다. 즉, 절대값은 1.96/square_root(최대 지연 값)이며, 이는 95%의 중요도에 해당합니다.
모든 포인트가 중요한 경우 계절성이 강하다고 간주하고 다시 확인 기능을 만들지 않습니다.
처음부터 PACF 값을 검사하고 첫 번째 중요하지 않은 자동 상관 이전 값이 지연을 지정합니다. 첫 번째 중요한 요소(자신과 상관되는 값)가 중요하지 않은 경우 대기 시간은 0이 되고 다시 확인 기능을 사용하지 않습니다.
대상 열의 롤링 창 평균을 만드는 데 사용된 과거 기간의 수입니다.
예측할 때 이 매개 변수는 예측 값을 생성하는 데 사용할 n 과거 기간을 나타냅니다. <= 학습 집합 크기입니다. 생략하면 n은 전체 학습 세트 크기입니다. 모델을 학습시킬 때 특정한 양의 기록만 고려하려는 경우 이 매개 변수를 지정합니다. 'auto'로 설정하면 PACF가 유의 임계값보다 큰 마지막 값으로 롤링 윈도우가 예상됩니다. 자세한 내용은 target_lags 섹션을 참조하세요.
휴일 기능을 생성하는 데 사용되는 국가/지역입니다. ISO 3166 2자리 국가/지역 코드여야 합니다(예: 'US' 또는 'GB').
- use_stl
시계열 대상 열의 STL 분해를 구성합니다. use_stl은 세 가지 값을 사용할 수 있습니다. None(기본값) - stl 분해 없음, 'season' - 시즌 구성 요소만 생성 및 season_trend - 시즌 및 추세 구성 요소 모두 생성.
시계열 계절성을 계열 빈도의 정수배로 설정합니다. 계절성을 '자동'으로 설정하면 유추됩니다. None으로 설정하면 시계열은 계절성=1에 해당하는 비계절성으로 간주됩니다.
- short_series_handling_config
AutoML이 짧은 시계열을 처리해야 하는지 여부를 정의하는 매개 변수입니다.
가능한 값: 'auto'(기본값), 'pad', 'drop' 및 None.
- 긴 계열이 없으면 자동 짧은 계열이 패딩됩니다.
그렇지 않으면 짧은 계열이 삭제됩니다.
- 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으로 표시됨).
처리
handlingconfiguration
resultinghandling
resultinghandlingconfiguration
True
auto
True
auto
True
패드
True
auto
True
drop
True
auto
True
없음
거짓
없음
False
auto
거짓
없음
False
패드
거짓
없음
False
drop
거짓
없음
거짓
없음
거짓
없음
- frequency
예측 빈도입니다.
예측할 때 이 매개 변수는 예측이 필요한 기간을 나타냅니다(예: 매일, 매주, 매년 등). 예측 빈도는 기본적으로 데이터 세트 빈도입니다. 선택적으로 데이터 세트 빈도보다 크게(그러나 작지는 않음) 설정할 수 있습니다. 데이터를 집계하고 예측 빈도로 결과를 생성합니다. 예를 들어, 일별 데이터의 경우 빈도를 매일, 매주 또는 매월로 설정할 수 있지만 매시간은 설정할 수 없습니다. 빈도는 pandas 오프셋 별칭이어야 합니다. 자세한 내용은 pandas 설명서를 참조하세요. https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects
- target_aggregate_function
사용자가 지정한 빈도를 준수하기 위해 시계열 대상 열을 집계하는 데 사용되는 함수입니다. target_aggregation_function이 설정되었지만 freq 매개 변수가 설정되지 않은 경우 오류가 발생합니다. 가능한 대상 집계 함수는 "sum", "max", "min" 및 "mean"입니다.
대상 열 값은 지정된 작업을 기반으로 집계됩니다. 일반적으로 sum은 대부분의 시나리오에 적합합니다.
데이터의 숫자 예측 요소 열은 합계, 평균, 최솟값 및 최댓값으로 집계됩니다. 결과적으로 자동화된 ML은 집계 함수 이름이 접미사인 새 열을 생성하고 선택된 집계 작업을 적용합니다.
범주 예측요소 열의 경우 데이터는 기간 내에 가장 두드러진 범주인 최빈값으로 집계됩니다.
날짜 예측 열은 최솟값, 최댓값 및 최빈값으로 집계됩니다.
주파수
target_aggregation_function
데이터 규칙화 메커니즘
없음(기본값)
없음(기본값)
집계가 적용되지 않습니다. validfrequency가 bedetermineded를 수행할 수 없는 경우 errorwill이 발생합니다.
일부 값
없음(기본값)
집계가 적용되지 않습니다. numberof data pointscompliant togiven frequencygrid가 없는 경우 90%이 포인트will beremoved이면 오류가 발생합니다.
없음(기본값)
집계 함수
aboutmissingfrequencyparameter에 대한 오류는 평가됩니다.
일부 값
집계 함수
providedaggregationfunction을 사용하여 빈도를 집계합니다.
한 CV 접기의 origin_time과 다음 접기 사이의 기간 수입니다. 예를 들어 일일 데이터의 n_step = 3인 경우 각 접기에 대한 원점 시간이 3일 간격으로 지정됩니다.
학습에 사용할 수 있지만 예측/유추 시 알 수 없는 기능 열입니다. features_unknown_at_forecast_time 빈 목록으로 설정된 경우 데이터 세트의 모든 기능 열이 유추 시간에 알려져 있다고 가정합니다. 이 매개 변수가 설정되지 않은 경우 향후 기능에 대한 지원을 사용할 수 없습니다.
예외
dest가 파일 경로이고 파일이 이미 있는 경우 발생합니다.
dest가 열려 있는 파일이고 파일을 쓸 수 없는 경우 발생합니다.
set_limits
작업에 대한 제한을 설정합니다.
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
매개 변수
점수가 단기적으로 개선되지 않는 경우 조기 종료를 사용하도록 설정할지 여부는 기본적으로 없음으로 설정됩니다.
조기 중지 논리:
처음 20회 반복(랜드마크)에는 조기 중지가 없습니다.
조기 중지 기간은 21번째 반복에서 시작하고 early_stopping_n_iters 반복을 찾습니다.
(현재 10으로 설정). 즉, 중지가 발생할 수 있는 첫 번째 반복은 31번째입니다.
AutoML은 조기 중지 후에도 2개의 앙상블 반복을 예약하므로 점수가 높을 수 있습니다.
계산된 최고점의 절대값이 과거의
early_stopping_n_iters 반복에 대해 동일한 경우, 즉 early_stopping_n_iters 반복에 대한 점수가 개선되지 않은 경우 조기 중지가 트리거됩니다.
실험의 대상 점수입니다. 이 점수에 도달하면 실험이 종료됩니다. 지정되지 않으면(기준 없음) 실험은 기본 메트릭에서 더 이상 진행되지 않을 때까지 실행됩니다. 종료 조건에 대한 자세한 내용은 이 문서를 참조하세요. 기본값은 없음입니다.
병렬로 실행될 최대 반복 수입니다. 기본값은 1입니다.
- AmlCompute 클러스터는 노드당 하나의 반복을 지원합니다.
단일 AmlCompute 클러스터에서 병렬로 실행되는 여러 AutoML 실험 부모 실행의 경우 모든 실험에 대한 max_concurrent_trials
값의 합계는 최대 노드 수보다 작거나 같아야 합니다. 이에 해당하지 않으면 노드를 사용할 수 있을 때까지 실행이 대기열에 추가됩니다.
- DSVM은 노드당 여러 반복을 지원합니다.
max_concurrent_trials
해야
은 DSVM의 코어 수보다 작거나 같아야 합니다. 단일 DSVM에서 병렬로 실행되는 여러 실험의 경우 모든 실험에 대한 max_concurrent_trials
값의 합은 최대 노드 수보다 작거나 같아야 합니다.
- Databricks -
max_concurrent_trials
의 수보다 작거나 같아야 합니다.
Databricks의 작업자 노드.
max_concurrent_trials
는 로컬 실행에 적용되지 않습니다. 이전에는 이 매개 변수의 이름이 concurrent_iterations
로 지정되었습니다.
지정된 학습 반복에 사용할 최대 스레드 수입니다. 허용되는 값은 다음과 같습니다.
1보다 크고 컴퓨팅 대상의 최대 코어 수보다 작거나 같습니다.
-1과 같으며, 이는 자식 실행당 반복당 가능한 모든 코어를 사용함을 의미합니다.
기본값인 1과 같습니다.
[실험적] 분산 학습에 사용할 최대 노드 수입니다.
예측을 위해 각 모델은 max(2, int(max_nodes/max_concurrent_trials)) 노드를 사용하여 학습됩니다.
분류/회귀의 경우 각 모델은 max_nodes 노드를 사용하여 학습됩니다.
참고- 이 매개 변수는 공개 미리 보기로 제공되며 나중에 변경될 수 있습니다.
자동화된 ML 실험 중에 테스트할 다양한 알고리즘 및 매개 변수 조합의 총 개수입니다. 지정하지 않으면 기본값은 1,000회 반복입니다.
실험을 종료하기까지 모든 반복 조합에 소요되는 최대 시간(분)입니다. 지정하지 않으면 기본 실험 시간 제한은 6일입니다. 시간 제한을 1시간 미만 또는 같음으로 지정하려면 데이터 세트의 크기가 10,000,000(행 시간 열) 또는 오류 결과보다 크지 않은지 확인합니다. 기본값은 없음입니다.
각 반복이 종료되기 전에 실행할 수 있는 최대 시간(분)입니다. 지정하지 않으면 1개월 또는 43200분 값이 사용되며 기본값은 없음입니다.
예외
dest가 파일 경로이고 파일이 이미 있는 경우 발생합니다.
dest가 열려 있는 파일이고 파일을 쓸 수 없는 경우 발생합니다.
set_training
예측 학습 관련 설정을 구성하는 방법입니다.
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
매개 변수
- enable_onnx_compatible_models
ONNX 호환 모델 적용을 사용하거나 사용하지 않을지 여부입니다. 기본값은 False입니다. ONNX(Open Neural Network Exchange) 및 Azure Machine Learning에 대한 자세한 내용은 이 문서를 참조하세요.
모델을 선택하는 동안 DNN 기반 모델을 포함할지 여부입니다. 그러나 DNN NLP 태스크의 경우 기본값은 True이고 다른 모든 AutoML 작업에는 False입니다.
- enable_model_explainability
모든 AutoML 학습 반복이 끝날 때 최상의 AutoML 모델을 설명할 수 있는지 여부입니다. 자세한 내용은 해석 가능성: 자동화된 Machine Learning의 모델 설명을 참조하세요. , 기본값: 없음
- enable_stack_ensemble
StackEnsemble 반복을 사용하거나 사용하지 않을지 여부입니다. enable_onnx_compatible_models 플래그가 설정되면 StackEnsemble 반복을 사용할 수 없습니다. 마찬가지로, Timeseries 작업의 경우 StackEnsemble 반복을 기본적으로 사용할 수 없으므로 메타 학습자를 맞춤하는 데 사용되는 작은 학습 세트로 인한 과잉 맞춤의 위험을 방지합니다. 앙상블에 대한 자세한 내용은 앙상블 구성 , 기본값 없음을 참조하세요.
- enable_vote_ensemble
VotingEnsemble 반복을 사용하거나 사용하지 않을지 여부입니다. 앙상블에 대한 자세한 내용은 앙상블 구성 , 기본값 없음을 참조하세요.
- stack_ensemble_settings
- Optional[StackEnsembleSettings]
StackEnsemble 반복에 대한 설정, 기본값은 없음
VotingEnsemble 및 StackEnsemble 모델 생성 중에 이전 자식 실행의 여러 맞춤 모델이 다운로드됩니다. 더 많은 시간이 필요한 경우 이 매개 변수를 300초보다 높은 값으로 구성합니다. 기본값은 없음입니다.
실험을 검색할 모델 이름 목록입니다. 지정하지 않으면 작업에 지원되는 모든 모델이 사용되며, TensorFlow 모델에 지정 blocked_training_algorithms
되거나 사용되지 않는 모든 모델은 기본적으로 없음으로 사용됩니다.
- training_mode
[실험적] 사용할 학습 모드입니다. 가능한 값은 다음과 같습니다.
distributed- 지원되는 알고리즘에 대한 분산 학습을 사용하도록 설정합니다.
non_distributed- 분산 학습을 사용하지 않도록 설정합니다.
auto- 현재 non_distributed 동일합니다. 나중에 변경될 수 있습니다.
참고: 이 매개 변수는 공개 미리 보기로 제공되며 나중에 변경될 수 있습니다.
예외
dest가 파일 경로이고 파일이 이미 있는 경우 발생합니다.
dest가 열려 있는 파일이고 파일을 쓸 수 없는 경우 발생합니다.
특성
base_path
creation_context
featurization
forecasting_settings
id
inputs
limits
log_files
log_verbosity
AutoML 작업에 대한 로그 세부 정보를 가져옵니다.
반환
AutoML 작업에 대한 로그 세부 정보
반환 형식
outputs
primary_metric
status
작업의 상태.
반환되는 일반적인 값에는 “Running”, “Completed”, “Failed”가 포함됩니다. 가능한 모든 값은 다음과 같습니다.
NotStarted - 클라이언트 쪽 Run 개체가 클라우드 제출 전에 있는 임시 상태입니다.
Starting - 실행이 클라우드에서 처리되기 시작했습니다. 호출자에게는 이 시점에서 실행 ID가 있습니다.
프로비전 - 지정된 작업 제출을 위해 주문형 컴퓨팅을 만들고 있습니다.
준비 - 실행 환경이 준비되고 있으며 다음 두 단계 중 하나입니다.
Docker 이미지 빌드
conda 환경 설정
큐에 대기 - 작업이 컴퓨팅 대상에서 큐에 대기됩니다. 예를 들어 BatchAI에서 작업은 대기 상태입니다.
요청된 모든 노드가 준비될 때까지 기다리는 동안 대기 상태입니다.
실행 중 - 컴퓨팅 대상에서 작업이 실행되기 시작했습니다.
종료 - 사용자 코드 실행이 완료되었으며 실행이 사후 처리 단계에 있습니다.
CancelRequested - 작업에 대한 취소가 요청되었습니다.
완료됨 - 실행이 성공적으로 완료되었습니다. 여기에는 사용자 코드 실행 및 실행이 모두 포함됩니다.
사후 처리 단계입니다.
Failed - 실행이 실패했습니다. 일반적으로 실행의 오류 속성은 이유에 대한 세부 정보를 제공합니다.
Canceled - 취소 요청을 따르고 실행이 성공적으로 취소되었음을 나타냅니다.
NotResponding - 하트비트를 사용하도록 설정한 실행의 경우 최근에 하트비트를 보내지 않았습니다.
반환
작업의 상태.
반환 형식
studio_url
task_type
test_data
training
예측 학습 설정을 반환합니다.
반환
학습 설정.
반환 형식
training_data
type
validation_data
Azure SDK for Python
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기