다음을 통해 공유


고급 시계열 예측(중간 데이터 마이닝 자습서)

예측 모델을 살펴보면서 대부분의 지역의 판매가 비슷한 패턴을 따르지만 일부 지역 및 일부 모델(예: 태평양 지역의 M200 모델)은 매우 다른 추세를 보이는 것을 보았습니다. 지역 간의 차이가 일반적이며 마케팅 프로모션, 부정확한 보고 또는 지정학적 이벤트를 비롯한 여러 요인으로 인해 발생할 수 있다는 것을 알고 있기 때문에 이는 놀라운 일이 아닙니다.

그러나 사용자는 전 세계에 적용할 수 있는 모델을 요청하고 있습니다. 따라서 개별 요인이 프로젝션에 미치는 영향을 최소화하기 위해 전 세계 매출의 집계 측정값을 기반으로 하는 모델을 빌드하기로 결정합니다. 그런 다음 이 모델을 사용하여 각 개별 지역에 대한 예측을 수행할 수 있습니다.

이 작업에서는 고급 예측 작업을 수행하는 데 필요한 모든 데이터 원본을 빌드합니다. 예측 쿼리에 대한 입력으로 사용할 두 개의 데이터 원본 뷰와 새 모델을 빌드하는 데 사용할 데이터 원본 뷰를 만듭니다.

단계

  1. 확장 판매 데이터 준비(예측용)

  2. 집계된 데이터 준비(모델 빌드용)

  3. 계열 데이터 준비(교차 예측용)

  4. EXTEND를 사용하여 예측

  5. 교차 예측 모델 만들기

  6. REPLACE를 사용하여 예측

  7. 새 예측 검토

새 확장 판매 데이터 만들기

판매 데이터를 업데이트하려면 최신 판매 수치를 가져와야 합니다. 특히 관심은 태평양 지역의 데이터로, 새로운 매장에 대한 관심을 불러일으키고 제품에 대한 인식을 높이기 위해 지역 판매 프로모션을 시작했습니다.

이 시나리오에서는 몇 개의 지역에 대한 3개월의 새 데이터가 포함된 Excel 통합 문서에서 데이터를 가져온 것으로 가정합니다. Transact-SQL 스크립트를 사용하여 데이터에 대한 테이블을 만든 다음 예측에 사용할 데이터 원본 뷰를 정의합니다.

새 판매 데이터를 사용하여 테이블 만들기

  1. Transact-SQL 쿼리 창에서 다음 문을 실행하여 AdventureWorksDW 데이터베이스(또는 다른 데이터베이스)에 판매 데이터를 추가합니다.

    USE [database name];  
    GO  
    IF OBJECT_ID ([dbo].[NewSalesData]) IS NOT NULL   
        DROP TABLE [dbo].[NewSalesData];  
    GO  
    CREATE TABLE [dbo].[NewSalesData]([Series] [nvarchar](255) NULL,  
    [NewDate] [datetime] NULL,  
    [NewQty] [float] NULL,  
    [NewAmount] [money] NULL) ON [PRIMARY]  
    
    GO  
    
  2. 다음 스크립트를 사용하여 새 값을 삽입합니다.

    INSERT INTO [NewSalesData]  
    (Series,NewDate,NewQty,NewAmount)  
    VALUES('T1000 Pacific', '7/25/08', 55, '$130,170.22'),  
    ('T1000 Pacific', '8/25/08', 50, '$114,435.36 '),  
    ('T1000 Pacific', '9/25/08', 50, '$117,296.24 '),  
    ('T1000 Europe', '7/25/08', 37, '$88,210.00 '),  
    ('T1000 Europe', '8/25/08', 41, '$97,746.00 '),  
    ('T1000 Europe', '9/25/08', 37, '$88,210.00 '),  
    ('T1000 North America', '7/25/08', 69, '$164,500.00 '),  
    ('T1000 North America', '8/25/08', 66, '$157,348.00 '),  
    ('T1000 North America', '9/25/08', 58, '$138,276.00 '),  
    ('M200 Pacific', '7/25/08', 65, '$149,824.35'),  
    ('M200 Pacific', '8/25/08', 54,  '$124,619.46'),  
    ('M200 Pacific', '9/25/08', 61, '$141,143.39'),  
    ('M200 Europe', '7/25/08', 75, '$173,026.00'),  
    ('M200 Europe', '8/25/08', 76, '$175,212.00'),  
    ('M200 Europe', '9/25/08', 84, '$193,731.00'),  
    ('M200 North America', '7/25/08', 94, '$216,916.00'),  
    ('M200 North America', '8/25/08', 94, '$216,891.00'),  
    ('M200 North America', '9/25/08', 91,'$209,943.00');  
    

    경고

    따옴표는 쉼표 구분 기호 및 통화 기호 문제를 방지하기 위해 통화 값과 함께 사용됩니다. 다음 형식으로 통화 값을 전달할 수도 있습니다. 130170.22

    샘플 데이터베이스에 사용된 날짜가 이 릴리스에 대해 변경되었습니다. 이전 버전의 AdventureWorks를 사용하는 경우 삽입된 날짜를 적절하게 조정해야 할 수 있습니다.

새 판매 데이터를 사용하여 데이터 원본 뷰 만들기

  1. 솔루션 탐색기에서 데이터 원본 뷰를 마우스 오른쪽 단추로 클릭한 다음 새 데이터 원본 뷰를 선택합니다.

  2. 데이터 원본 뷰 마법사에서 다음을 선택합니다.

    데이터 원본: Adventure Works DW 다차원 2012

    테이블 및 뷰 선택: 방금 만든 테이블인 NewSalesData를 선택합니다.

  3. 완료를 클릭합니다.

  4. 데이터 원본 뷰 디자인 화면에서 NewSalesData를 마우스 오른쪽 단추로 클릭한 다음 데이터 탐색 을 선택하여 데이터를 확인합니다.

경고

이 데이터는 예측에만 사용하므로 데이터가 불완전한 것은 중요하지 않습니다.

교차 예측 모델에 대한 데이터 만들기

원래 예측 모델에 사용된 데이터는 보기 vTimeSeries에 의해 어느 정도 그룹화되었으며, 여러 자전거 모델을 더 적은 수의 범주로 축소하고 개별 국가의 결과를 지역으로 병합했습니다. 전 세계 프로젝션에 사용할 수 있는 모델을 만들려면 데이터 원본 뷰 디자이너에서 직접 몇 가지 간단한 집계를 추가로 만듭니다. 새 데이터 원본 뷰에는 모든 지역의 모든 제품의 합계와 평균 판매액만 포함됩니다.

모델에 사용되는 데이터 원본을 만든 후에는 예측에 사용할 새 데이터 원본 뷰를 만들어야 합니다. 예를 들어 새로운 전 세계 모델을 사용하여 유럽의 매출을 예측하려는 경우 유럽 지역에 대해서만 데이터를 제공해야 합니다. 따라서 원래 데이터를 필터링하는 새 데이터 원본 뷰를 설정하고 각 예측 쿼리 집합에 대한 필터 조건을 변경합니다.

사용자 지정 데이터 원본 뷰를 사용하여 모델 데이터를 만들려면

  1. 솔루션 탐색기에서 데이터 원본 뷰를 마우스 오른쪽 단추로 클릭한 다음 새 데이터 원본 뷰를 선택합니다.

  2. 마법사의 시작 페이지에서 다음을 클릭합니다.

  3. 데이터 원본 선택 페이지에서 Adventure Works DW 다차원 2012를 선택하고 다음을 클릭합니다.

  4. 페이지에서 테이블 및 뷰를 선택하고 테이블을 추가하지 않고 다음을 클릭합니다.

  5. 페이지에서 마법사 완료에 이름을 AllRegions입력하고, 마침을 클릭합니다.

  6. 다음으로 빈 데이터 원본 뷰 디자인 화면을 마우스 오른쪽 단추로 클릭한 다음 새 명명된 쿼리를 선택합니다.

  7. 명명된 쿼리 만들기 대화 상자에서 이름, 형식 AllRegions설명에 대해 모든 모델 및 지역의 합계 및 판매 평균을 입력합니다.

  8. SQL 텍스트 창에서 다음 문을 입력한 다음 확인을 클릭합니다.

    SELECT ReportingDate,   
    SUM([Quantity]) as SumQty, AVG([Quantity]) as AvgQty,  
    SUM([Amount]) AS SumAmt, AVG([Amount]) AS AvgAmt,  
    'All Regions' as [Region]  
    FROM dbo.vTimeSeries   
    GROUP BY ReportingDate  
    
  9. 테이블을 마우스 오른쪽 단추로 AllRegions 클릭한 다음 데이터 탐색을 선택합니다.

교차 예측을 위한 시계열 데이터를 만들려면

  1. 솔루션 탐색기에서 데이터 원본 뷰를 마우스 오른쪽 단추로 클릭한 다음 새 데이터 원본 뷰를 선택합니다.

  2. 데이터 원본 뷰 마법사에서 다음을 선택합니다.

    데이터 원본: Adventure Works DW 다차원 2012

    테이블 및 뷰 선택: 테이블을 선택하지 마세요.

    이름: T1000 Pacific Region

  3. 완료를 클릭합니다.

  4. T1000 Pacific Region.dsv의 빈 디자인 화면을 마우스 오른쪽 단추로 클릭한 다음 새 명명된 쿼리를 선택합니다.

    명명된 쿼리 만들기 대화 상자가 나타납니다. 이름을 다시 입력한 다음, 다음 설명을 추가합니다.

    이름: T1000 Pacific Region

    설명: 지역 및 모델별로 필터링vTimeSeries

  5. 텍스트 창에서 다음 쿼리를 입력한 다음 확인을 클릭합니다.

    SELECT ReportingDate, ModelRegion, Quantity, Amount  
    FROM dbo.vTimeSeries  
    WHERE (ModelRegion = N'T1000 Pacific')  
    

    비고

    각 계열에 대한 예측을 별도로 만들어야 하므로 쿼리 텍스트를 복사하여 텍스트 파일에 저장하여 다른 데이터 계열에 다시 사용할 수 있습니다.

  6. 데이터 원본 뷰 디자인 화면에서 T1000 Pacific을 마우스 오른쪽 단추로 클릭한 다음 데이터 탐색 을 선택하여 데이터가 올바르게 필터링되었는지 확인합니다.

    교차 예측 쿼리를 만들 때 이 데이터를 모델에 대한 입력으로 사용합니다.

수업의 다음 과제

업데이트된 데이터를 사용한 시계열 예측(중간 데이터 마이닝 자습서)

또한 참조하십시오

Microsoft 시계열 알고리즘
Microsoft 시계열 알고리즘 기술 참조
다차원 모델의 데이터 원본 뷰