CREATE SNOWFLAKE.ML.FORECAST

사용자가 제공하는 학습 데이터에서 새 예측 모델을 생성하거나 동일한 이름의 예측 모델을 바꿉니다.

구문

CREATE [ OR REPLACE ] SNOWFLAKE.ML.FORECAST [ IF NOT EXISTS ] <model_name>(
  INPUT_DATA => <input_data>,
  [ SERIES_COLNAME => '<series_colname>', ]
  TIMESTAMP_COLNAME => '<timestamp_colname>',
  TARGET_COLNAME => '<target_colname>',
  [ CONFIG_OBJECT => <config_object> ]
)
[ [ WITH ] TAG ( <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' , ... ] ) ]
[ COMMENT = '<string_literal>' ]
Copy

참고

명명된 인자를 사용하면 인자 순서에 관계없이 코드를 더 쉽게 읽을 수 있습니다. 하지만 다음 예제에서처럼 위치 인자를 사용할 수도 있습니다.

CREATE SNOWFLAKE.ML.FORECAST <name>(
  '<input_data>', '<series_colname>', '<timestamp_colname>', '<target_colname>'
);
Copy

매개 변수

model_name

모델에 대한 식별자를 지정하는데, 모델이 생성된 스키마에 대해 고유한 식별자여야 합니다.

모델 식별자가 (db_name.schema_name.name 또는 schema_name.name 형식으로) 정규화되지 않은 경우 이 명령은 세션의 현재 스키마에서 모델을 생성합니다.

또한, 식별자는 알파벳 문자로 시작해야 하며 전체 식별자 문자열을 큰따옴표(예: "My object")로 묶지 않는 한 공백이나 특수 문자를 포함할 수 없습니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.

자세한 내용은 식별자 요구 사항 섹션을 참조하십시오.

생성자 인자

필수:

INPUT_DATA => input_data

입력 데이터에 대한 참조. 참조를 사용하면 제한된 권한으로 실행되는 학습 프로세스에서 사용자의 권한을 사용해 데이터에 액세스하도록 할 수 있습니다. 데이터가 해당 양식에 이미 있는 경우 테이블 또는 뷰에 대한 참조를 사용하거나, 쿼리 참조 를 사용하여 데이터를 얻기 위해 실행할 쿼리를 제공할 수 있습니다.

이 참조를 생성하려면 테이블 이름, 뷰 이름 또는 쿼리와 함께 TABLE 키워드 를 사용하거나 SYSTEM$REFERENCE 또는 SYSTEM$QUERY_REFERENCE 함수를 호출하면 됩니다.

참조 데이터는 예측 모델에서 사용하는 전체 학습 데이터입니다. input_datatimestamp_colname, target_colname 또는 series_colname 으로 명명되지 않은 열이 포함된 경우 이들은 외생 변수(추가 특징)로 간주됩니다. 입력 데이터의 열 순서는 중요하지 않습니다.

입력 데이터에는 사용 사례에 알맞은 유형의 열이 있어야 합니다. 각 사용 사례에 대한 자세한 내용은 섹션을 참조하십시오.

사용 사례

열 및 유형

단일 시계열

다중 시계열

외생 변수가 있는 단일 시계열

외생 변수가 있는 다중 시계열

TIMESTAMP_COLNAME => 'timestamp_colname'

input_data 에 타임스탬프가 포함된 열의 이름입니다.

TARGET_COLNAME => 'target_colname'

input_data 에 대상(종속 값)이 포함된 열의 이름입니다.

선택 사항:

SERIES_COLNAME => 'series_colname'

다중 시계열 모델의 경우 input_data 에서 다중 시계열을 정의하는 열의 이름입니다. 이 열은 다중 계열에 대한 예측 에 표시된 것처럼 임의 유형의 값 또는 하나 이상의 다른 열의 값으로 구성된 배열일 수 있습니다.

인자를 위치에 따라 제공하는 경우 이것은 두 번째 인자여야 합니다.

CONFIG_OBJECT => config_object

모델 학습 작업 구성에 사용되는 키-값 페어를 포함한 OBJECT 입니다.

타입

기본값

설명

aggregation_categorical

STRING

'MODE'

카테고리형 특징에 대한 집계 메서드입니다. 지원되는 값은 다음과 같습니다.

  • 'MODE': 가장 빈번한 값입니다.

  • 'FIRST': 가장 빠른 값입니다.

  • 'LAST': 최신 값입니다.

aggregation_numeric

STRING

'MEAN'

숫자형 특징에 대한 집계 메서드입니다. 지원되는 값은 다음과 같습니다.

  • 'MEAN': 값의 평균입니다.

  • 'MEDIAN': 중간값입니다.

  • MODE: 가장 빈번한 값입니다.

  • 'MIN': 가장 작은 값입니다.

  • 'MAX': 가장 큰 값입니다.

  • 'SUM': 값의 총합입니다.

  • 'FIRST': 가장 빠른 값입니다.

  • 'LAST': 최신 값입니다.

aggregation_target

STRING

aggregation_numeric 과 동일하거나, 지정되지 않을 경우 'MEAN' 입니다.

목표 값에 대한 집계 메서드입니다. 지원되는 값은 다음과 같습니다.

  • 'MEAN': 값의 평균입니다.

  • 'MEDIAN': 중간값입니다.

  • MODE: 가장 빈번한 값입니다.

  • 'MIN': 가장 작은 값입니다.

  • 'MAX': 가장 큰 값입니다.

  • 'SUM': 값의 총합입니다.

  • 'FIRST': 가장 빠른 값입니다.

  • 'LAST': 최신 값입니다.

aggregation_column

오브젝트

해당 없음

특정 열에 대한 집계 방법을 지정하는 키-값 페어(둘 다 문자열)를 포함하는 오브젝트입니다. 키는 열 이름이고 값은 집계 방법입니다. 열이 지정되지 않은 경우 모델은 aggregation_numeric 또는 aggregation_categorical 로 지정된 방법을 사용하거나 해당 열 유형의 기본값(숫자형의 경우 MEAN, 카테고리형의 경우 MODE)을 사용합니다.

evaluate

BOOLEAN

TRUE

평가 메트릭을 생성해야 하는지 여부입니다. TRUE인 경우 evaluation_config 의 매개 변수를 사용하여 교차 검증을 위해 추가 모델이 학습됩니다.

evaluation_config

OBJECT

아래의 평가 구성 섹션을 참조하십시오.

샘플 외부 평가 메트릭을 생성하는 방법을 지정하는 선택적 구성 오브젝트입니다.

frequency

STRING

해당 없음

시계열의 빈도입니다. 지정하지 않으면 모델이 빈도를 추론합니다. 값은 '1 day' 와 같이 기간을 나타내는 문자열이어야 합니다. 지원되는 단위에는 초, 분, 시간, 일, 주, 월, 분기, 년이 있습니다. 간격 이름에는 단수형(“hour”) 또는 복수형(“hours”)을 사용할 수 있지만, 약어를 사용할 수는 없습니다.

on_error

STRING

'ABORT'

모델 학습 작업의 오류 처리 방법을 지정하는 문자열(상수)입니다. 이는 여러 계열을 학습할 때 가장 유용합니다. 지원되는 값은 다음과 같습니다.

  • 'abort': 시계열에서 오류가 발생하면 학습 작업을 중단합니다.

  • 'skip': 학습에서 오류가 발생하는 시계열을 건너뜁니다. 이를 통해 다른 시계열에 대한 모델 학습이 성공할 수 있습니다. 어떤 계열이 실패했는지 확인하려면 모델의 <model_name>!SHOW_TRAINING_LOGS 메서드를 사용하십시오.

평가 구성

evaluation_config 오브젝트에는 교차 검증을 구성하는 키-값 페어가 포함되어 있습니다. 이러한 매개 변수는 scikit-learn의 TimeSeriesSplit 에서 가져온 것입니다.

타입

기본값

설명

n_splits

INTEGER

1

분할 수입니다.

max_train_size

INTEGER 또는 NULL입니다(최대값 없음).

NULL

단일 학습 세트의 최대 크기입니다.

test_size

INTEGER 또는 NULL입니다.

NULL

테스트 세트의 크기를 제한하는 데 사용됩니다.

gap

INTEGER

0

테스트 세트 전에 각 학습 세트의 끝에서 제외할 샘플 수입니다.

prediction_interval

FLOAT

0.95

간격 메트릭 계산에 사용되는 예측 간격입니다.

사용법 노트

복제CUSTOM_CLASSIFIER 클래스의 인스턴스를 제외한 클래스 인스턴스에 대해 지원되지 않습니다.

섹션을 참조하십시오.