예측 모델 사용자 지정 및 처리(중급 데이터 마이닝 자습서)
Microsoft 시계열 알고리즘은 모델을 만들고 시간 데이터를 분석하는 방법에 영향을 주는 여러 매개 변수를 제공합니다. 이러한 속성을 변경하면 마이닝 모델이 예측을 수행하는 방식에 큰 영향을 줄 수 있습니다.
자습서에서 이러한 태스크를 위해 다음 작업을 수행하여 모델을 변경합니다.
PERIODICITY_HINT에 대한 새 값을 추가하여 모델에서 기간을 처리하는 방법을 사용자 지정합니다.
Microsoft 시계열 알고리즘의 기타 중요 매개 변수 설정 두 가지 즉, 예측에 사용되는 메서드를 제어할 수 있는 FORECAST_METHOD 및 장기 및 단기 예측의 혼합을 사용자 지정할 수 있는 PREDICTION_SMOOTHING에 대해 학습합니다.
필요에 따라 귀속되는 누락된 값의 처리 방식을 알고리즘에 알려 줍니다.
모든 변경이 적용되면 모델을 배포하고 처리합니다.
시계열 매개 변수 설정
주기성 힌트
PERIODICITY_HINT 매개 변수는 데이터에 표시되는 추가 기간에 대한 정보를 알고리즘에 제공합니다. 기본적으로 시계열 모델은 자동으로 데이터에서 패턴을 감지하려고 합니다. 그러나 예측 시간 주기를 이미 알고 있는 경우 주기성 힌트를 제공하여 잠재적으로 모델의 정확도를 개선할 수 있습니다. 반면 잘못된 주기성 힌트를 제공한 경우 정확도를 떨어뜨릴 수 있으므로, 사용해야 할 값에 확신이 없는 경우 기본값을 사용하는 것이 최선입니다.
예를 들어, 이 모델에 사용된 뷰에서는 Adventure Works DW Multidimensional 2012 로부터 판매 데이터를 월별로 집계합니다. 따라서 모델에 사용된 각 시간 조각은 한 달을 나타내며 또한 모든 예측은 개월 수 기준입니다. 1년에는 12개월이 있으므로 판매 패턴이 대략 연간 기준으로 반복되는 경우 PERIODICITY_HINT 매개 변수를 12로 설정하여 12 시간 조각(개월)이 전체 판매 주기 하나를 구성하도록 합니다.
예측 메서드
FORECAST_METHOD 매개 변수는 시계열 알고리즘이 단기 또는 장기 예측에 최적화되는지 여부를 제어합니다. 기본적으로 FORECAST_METHOD 매개 변수는 MIXED로 설정됩니다. 이는 두 개의 서로 다른 알고리즘이 단기 및 장기 예측 모두에 적합한 결과를 제공하도록 균등하게 혼합되었음을 의미합니다.
그러나 특정 알고리즘을 사용하려는 경우 값을 ARIMA 또는 ARTXP로 변경할 수 있습니다.
장기 대 단기 예측 가중치 설정
또한 PREDICTION_SMOOTHING 매개 변수를 사용하여 장기 및 단기 예측이 혼합되는 방식을 사용자 지정할 수도 있습니다. 기본적으로 이 매개 변수는 0.5로 설정됩니다. 이 값은 전체적으로 적절한 정확도를 제공합니다.
알고리즘 매개 변수를 변경하려면
마이닝 모델 탭에서 Forecasting을 마우스 오른쪽 단추로 클릭하고 알고리즘 매개 변수 설정을 선택합니다.
알고리즘 매개 변수 대화 상자의 PERIODICITY_HINT 행에서 값 열을 클릭한 다음 {12}(중괄호 포함)를 입력합니다.
기본적으로 알고리즘에서도 값 {1}을 추가합니다.
FORECAST_METHOD 행에서 값 입력란이 비어 있거나 MIXED로 설정되었는지 확인합니다. 다른 값이 입력되어 있으면 MIXED를 입력하여 매개 변수를 다시 기본값으로 변경합니다.
PREDICTION_SMOOTHING 행에서 값 입력란이 비어 있거나 0.5로 설정되었는지 확인합니다. 다른 값이 입력되어 있으면 값을 클릭하고 0.5를 입력하여 매개 변수를 다시 기본값으로 변경합니다.
[!참고]
PREDICTION_SMOOTHING 매개 변수는 SQL Server Enterprise에서만 사용할 수 있습니다. 따라서 SQL Server Standard에서 PREDICTION_SMOOTHING 매개 변수의 값을 보거나 변경할 수 없습니다. 하지만 기본 동작은 두 알고리즘을 모두 사용하고 두 알고리즘에 똑같은 가중치를 지정하는 것입니다.
확인을 클릭합니다.
누락된 데이터 처리(선택 사항)
대부분의 경우 매출 데이터는 Null로 채워지는 간격이 있거나 매장에서 보고 최종 기한을 충족하지 않아 계열의 끝에 빈 셀이 있을 수 있습니다. 그러한 시나리오에서는 Analysis Services가 다음 오류를 발생시키고 모델을 처리하지 않습니다.
"오류(데이터 마이닝): 마이닝 모델 <model name>의 계열 <series name>을(를) 시작으로 타임스탬프가 동기화되지 않았습니다. 모든 시계열은 같은 시간 표식에서 끝나야 하며 임의의 누락 데이터 요소가 있으면 안 됩니다. MISSING_VALUE_SUBSTITUTION 매개 변수를 Previous 또는 숫자 상수로 설정하면 누락 데이터 요소가 자동으로 패치됩니다."
이 오류가 발생하지 않도록 하려면 Analysis Services에서 다음 메서드 중 하나를 사용하여 간격을 채울 새 값을 자동으로 제공하도록 지정할 수 있습니다.
평균 값 사용. 평균은 같은 데이터 계열의 유효한 모든 값을 사용하여 계산됩니다.
이전 값 사용. 누락된 여러 셀에 대해 이전 값을 대체할 수 있지만 시작 값을 채울 수 없습니다.
제공한 상수 값 사용
평균값을 계산하여 간격을 채우도록 지정하려면
마이닝 모델 탭에서 Forecasting 열을 마우스 오른쪽 단추로 클릭하고 알고리즘 매개 변수 설정을 선택합니다.
알고리즘 매개 변수 대화 상자의 MISSING_VALUE_SUBSTITUTION 행에서 값 열을 클릭하고 Mean을 입력합니다.
모델 작성
모델을 사용하려면 모델을 서버에 배포하고 알고리즘을 통해 학습 데이터를 실행하여 모델을 처리해야 합니다.
예측 모델을 처리하려면
SQL Server Data Tools의 마이닝 모델 메뉴에서 마이닝 구조 및 모든 모델 처리를 선택합니다.
프로젝트를 빌드하고 배포할 것인지를 묻는 메시지가 표시되면 예를 클릭합니다.
마이닝 구조 처리 - Forecasting 대화 상자에서 실행을 클릭합니다.
처리 진행률 대화 상자가 열리고 모델 처리 정보를 표시합니다. 모델 처리는 시간이 걸릴 수 있습니다.
처리가 완료되면 닫기를 클릭하여 처리 진행률 대화 상자를 닫습니다.
닫기를 클릭하여 마이닝 구조 처리 - Forecasting 대화 상자를 닫습니다.