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>' ]
참고
명명된 인자를 사용하면 인자 순서에 관계없이 코드를 더 쉽게 읽을 수 있습니다. 하지만 다음 예제에서처럼 위치 인자를 사용할 수도 있습니다.
CREATE SNOWFLAKE.ML.FORECAST <name>(
'<input_data>', '<series_colname>', '<timestamp_colname>', '<target_colname>'
);
매개 변수¶
model_name
모델에 대한 식별자를 지정하는데, 모델이 생성된 스키마에 대해 고유한 식별자여야 합니다.
모델 식별자가 (
db_name.schema_name.name
또는schema_name.name
형식으로) 정규화되지 않은 경우 이 명령은 세션의 현재 스키마에서 모델을 생성합니다.또한, 식별자는 알파벳 문자로 시작해야 하며 전체 식별자 문자열을 큰따옴표(예:
"My object"
)로 묶지 않는 한 공백이나 특수 문자를 포함할 수 없습니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.자세한 내용은 식별자 요구 사항 섹션을 참조하십시오.
생성자 인자¶
필수:
INPUT_DATA => input_data
입력 데이터에 대한 참조. 참조를 사용하면 제한된 권한으로 실행되는 학습 프로세스에서 사용자의 권한을 사용해 데이터에 액세스하도록 할 수 있습니다. 데이터가 해당 양식에 이미 있는 경우 테이블 또는 뷰에 대한 참조를 사용하거나, 쿼리 참조 를 사용하여 데이터를 얻기 위해 실행할 쿼리를 제공할 수 있습니다.
이 참조를 생성하려면 테이블 이름, 뷰 이름 또는 쿼리와 함께 TABLE 키워드 를 사용하거나 SYSTEM$REFERENCE 또는 SYSTEM$QUERY_REFERENCE 함수를 호출하면 됩니다.
참조 데이터는 예측 모델에서 사용하는 전체 학습 데이터입니다.
input_data
에timestamp_colname
,target_colname
또는series_colname
으로 명명되지 않은 열이 포함된 경우 이들은 외생 변수(추가 특징)로 간주됩니다. 입력 데이터의 열 순서는 중요하지 않습니다.입력 데이터에는 사용 사례에 알맞은 유형의 열이 있어야 합니다. 각 사용 사례에 대한 자세한 내용은 예 섹션을 참조하십시오.
사용 사례
열 및 유형
단일 시계열
타임스탬프 열: TIMESTAMP_NTZ.
대상 값 열: FLOAT.
다중 시계열
계열 열: 숫자 값과 텍스트를 포함한 VARIANT.
타임스탬프 열: TIMESTAMP_NTZ.
대상 값 열: FLOAT.
외생 변수가 있는 단일 시계열
타임스탬프 열: TIMESTAMP_NTZ.
대상 값 열: FLOAT.
외생 변수가 있는 다중 시계열
계열 열: 숫자 값과 텍스트를 포함한 VARIANT.
타임스탬프 열: TIMESTAMP_NTZ.
대상 값 열: FLOAT.
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
'MODE'
카테고리형 특징에 대한 집계 메서드입니다. 지원되는 값은 다음과 같습니다.
'MODE'
: 가장 빈번한 값입니다.'FIRST'
: 가장 빠른 값입니다.'LAST'
: 최신 값입니다.
aggregation_numeric
'MEAN'
숫자형 특징에 대한 집계 메서드입니다. 지원되는 값은 다음과 같습니다.
'MEAN'
: 값의 평균입니다.'MEDIAN'
: 중간값입니다.MODE
: 가장 빈번한 값입니다.'MIN'
: 가장 작은 값입니다.'MAX'
: 가장 큰 값입니다.'SUM'
: 값의 총합입니다.'FIRST'
: 가장 빠른 값입니다.'LAST'
: 최신 값입니다.
aggregation_target
aggregation_numeric
과 동일하거나, 지정되지 않을 경우'MEAN'
입니다.목표 값에 대한 집계 메서드입니다. 지원되는 값은 다음과 같습니다.
'MEAN'
: 값의 평균입니다.'MEDIAN'
: 중간값입니다.MODE
: 가장 빈번한 값입니다.'MIN'
: 가장 작은 값입니다.'MAX'
: 가장 큰 값입니다.'SUM'
: 값의 총합입니다.'FIRST'
: 가장 빠른 값입니다.'LAST'
: 최신 값입니다.
aggregation_column
해당 없음
특정 열에 대한 집계 방법을 지정하는 키-값 페어(둘 다 문자열)를 포함하는 오브젝트입니다. 키는 열 이름이고 값은 집계 방법입니다. 열이 지정되지 않은 경우 모델은
aggregation_numeric
또는aggregation_categorical
로 지정된 방법을 사용하거나 해당 열 유형의 기본값(숫자형의 경우MEAN
, 카테고리형의 경우MODE
)을 사용합니다.evaluate
TRUE
평가 메트릭을 생성해야 하는지 여부입니다. TRUE인 경우
evaluation_config
의 매개 변수를 사용하여 교차 검증을 위해 추가 모델이 학습됩니다.evaluation_config
아래의 평가 구성 섹션을 참조하십시오.
샘플 외부 평가 메트릭을 생성하는 방법을 지정하는 선택적 구성 오브젝트입니다.
frequency
해당 없음
시계열의 빈도입니다. 지정하지 않으면 모델이 빈도를 추론합니다. 값은
'1 day'
와 같이 기간을 나타내는 문자열이어야 합니다. 지원되는 단위에는 초, 분, 시간, 일, 주, 월, 분기, 년이 있습니다. 간격 이름에는 단수형(“hour”) 또는 복수형(“hours”)을 사용할 수 있지만, 약어를 사용할 수는 없습니다.on_error
'ABORT'
모델 학습 작업의 오류 처리 방법을 지정하는 문자열(상수)입니다. 이는 여러 계열을 학습할 때 가장 유용합니다. 지원되는 값은 다음과 같습니다.
'abort'
: 시계열에서 오류가 발생하면 학습 작업을 중단합니다.'skip'
: 학습에서 오류가 발생하는 시계열을 건너뜁니다. 이를 통해 다른 시계열에 대한 모델 학습이 성공할 수 있습니다. 어떤 계열이 실패했는지 확인하려면 모델의 <model_name>!SHOW_TRAINING_LOGS 메서드를 사용하십시오.
평가 구성¶
evaluation_config
오브젝트에는 교차 검증을 구성하는 키-값 페어가 포함되어 있습니다. 이러한 매개 변수는 scikit-learn의 TimeSeriesSplit 에서 가져온 것입니다.
사용법 노트¶
복제 는 CUSTOM_CLASSIFIER 클래스의 인스턴스를 제외한 클래스 인스턴스에 대해 지원되지 않습니다.
예¶
예 섹션을 참조하십시오.