4단원: Market Basket 예측 실행

새 설치: 2005년 12월 5일

이 단원에서는 SELECT 문의 SELECT FROM <model> PREDICTION JOIN(DMX) 형식을 사용하여 2단원: Market Basket 마이닝 구조에 마이닝 모델 추가에서 만든 연결 모델을 기반으로 예측을 만듭니다. 이러한 예측 유형은 다음과 같습니다.

SELECT 문의 SELECT FROM <model> PREDICTION JOIN(DMX) 형식은 다음 세 부분으로 구성되어 있습니다.

  • 결과 집합에 반환된 마이닝 모델 열 및 예측 함수 목록. 이 목록에는 원본 데이터의 입력 열도 포함될 수 있습니다.
  • 예측 생성에 사용되는 데이터를 정의하는 원본 쿼리. 예를 들어 일괄 처리 쿼리에서는 고객 목록이 원본 쿼리가 될 수 있습니다.
  • 마이닝 모델 열과 원본 데이터 간의 매핑. 이름이 일치하는 경우 NATURAL 구문을 사용할 수 있으며 열 매핑을 수행하지 않아도 됩니다.

예측 함수를 사용하여 쿼리의 질을 보다 향상시킬 수 있습니다. 예측 함수는 예측 사항의 발생 확률과 같은 추가 정보를 제공하고 성향 습득 데이터 집합의 예측에 대한 지원을 제공합니다. 예측 함수에 대한 자세한 내용은 함수(DMX)를 참조하십시오.

Business Intelligence Development Studio에서 예측 쿼리 작성기를 사용하여 예측 쿼리를 만들 수도 있습니다. 자세한 내용은 예측 쿼리 작성기를 사용하여 DMX 예측 쿼리 만들기를 참조하십시오.

단원 작업

이 단원에서는 다음 작업을 수행합니다.

  • 장바구니에 이미 있는 항목을 기반으로 고객이 구입할 가능성이 있는 다른 항목을 결정하는 쿼리 생성. MINIMUM_PROBABILITY가 기본값인 마이닝 모델을 사용하여 이러한 쿼리를 만듭니다.
  • 장바구니에 이미 있는 항목을 기반으로 고객이 구입할 가능성이 있는 다른 항목을 결정하는 쿼리 생성. MINIMUM_PROBABILITY가 0.01인 마이닝 모델을 사용하여 이러한 쿼리를 만듭니다.

단일 PREDICTION JOIN 문

첫 번째 단계는 단일 예측 쿼리에서 SELECT FROM <model> PREDICTION JOIN(DMX)을 사용하는 것입니다. 다음은 단일 문의 일반적인 예입니다.

SELECT <select list>
    FROM [<mining model>] NATURAL PREDICTION JOIN
(SELECT '<value>' AS [<column>], 
    (SELECT 'value' AS [<nested column>] UNION
        SELECT 'value' AS [<nested column>] ...) 
    AS [<nested table>])
AS [<input alias>]

코드의 첫 번째 줄에서는 예측 생성에 사용할 마이닝 모델과 쿼리에서 반환되는 마이닝 모델의 열을 정의합니다.

SELECT <select list> FROM [<mining model>] 

코드의 다음 줄에서는 고객이 추가할 추가 제품 예측에 사용할 장바구니 제품을 정의합니다.

(SELECT '<value>' AS [<column>], 
    (SELECT 'value' AS [<nested column>] UNION
        SELECT 'value' AS [<nested column>] ...) 
    AS [<nested table>])

MINIMUM_PROBABILITY가 기본값인 모델을 사용하여 예측 만들기

연결 쿼리를 만들려면

  1. 개체 탐색기에서 Analysis Services 인스턴스를 마우스 오른쪽 단추로 클릭하고 새 쿼리를 가리킨 다음 DMX를 클릭합니다.

    비어 있는 새 쿼리가 포함된 쿼리 편집기가 열립니다.

  2. PREDICTION JOIN 문의 일반적인 예를 빈 쿼리에 복사합니다.

  3. 다음 내용을

    <select list> 
    

    다음 구문으로 바꿉니다.

    PREDICT([Association].[Products],INCLUDE_STATISTICS,3)
    

    단순히 열 이름인 [Products]를 포함할 수도 있지만 Predict 함수를 사용하면 알고리즘에서 반환하는 제품 수를 세 개로 제한할 수 있습니다. 또한 각 제품에 대한 지원, 확률 및 조정된 확률을 반환하는 INCLUDE_STATISTICS를 사용할 수 있습니다. 이러한 통계를 사용하면 예측 정확도의 등급을 매길 수 있습니다.

  4. 다음 내용을

    [<mining model>] 
    

    다음 구문으로 바꿉니다.

    [Association]
    
  5. 다음 내용을

    (SELECT '<value>' AS [<column>], 
        (SELECT 'value' AS [<nested column>] UNION
            SELECT 'value' AS [<nested column>] ...) 
        AS [<nested table>])
    

    다음 구문으로 바꿉니다.

    (SELECT (SELECT 'Mountain Bottle Cage' AS [Model]
      UNION SELECT 'Mountain Tire Tube' AS [Model]
      UNION SELECT 'Mountain-200' AS [Model]) AS [Products]) AS t
    

    이 문은 UNION 문을 사용하여 예측된 제품과 함께 장바구니에 포함되어야 할 세 가지 제품을 지정합니다. SELECT 문의 Model 열은 중첩된 제품 테이블에 포함된 모델 열에 해당합니다.

    이제 전체 문이 다음과 같아야 합니다.

    SELECT
      PREDICT([Association].[Products],INCLUDE_STATISTICS,3)
    From
      [Association]
    NATURAL PREDICTION JOIN
    (SELECT (SELECT 'Mountain Bottle Cage' AS [Model]
      UNION SELECT 'Mountain Tire Tube' AS [Model]
      UNION SELECT 'Mountain-200' AS [Model]) AS [Products]) AS t
    
  6. 파일 메뉴에서 다른 이름으로 DMXQuery1.dmx 저장을 클릭합니다.

  7. 다른 이름으로 저장 대화 상자에서 해당 폴더로 이동한 다음 파일 이름을 Association Prediction.dmx로 지정합니다.

  8. 도구 모음에서 실행 단추를 클릭합니다.

    쿼리에서 쿼리에 지정된 세 가지 제품과 동일한 장바구니에 있을 가능성이 높은 순서대로 세 가지 제품(HL Mountain Tire, Fender Set - Mountain, ML Mountain Tire)을 포함하는 테이블이 반환됩니다. 이 테이블은 예측의 정확도를 설명하는 통계도 포함합니다.

MINIMUM_PROBABILITY가 0.01인 모델을 사용하여 예측 만들기

연결 쿼리를 만들려면

  1. 개체 탐색기에서 Analysis Services 인스턴스를 마우스 오른쪽 단추로 클릭하고 새 쿼리를 가리킨 다음 DMX를 클릭합니다.

    비어 있는 새 쿼리가 포함된 쿼리 편집기가 열립니다.

  2. PREDICTION JOIN 문의 일반적인 예를 빈 쿼리에 복사합니다.

  3. 다음 내용을

    <select list> 
    

    다음 구문으로 바꿉니다.

    PREDICT([Modified Association].[Products],INCLUDE_STATISTICS,3)
    
  4. 다음 내용을

    [<mining model>] 
    

    다음 구문으로 바꿉니다.

    [Modified Association]
    
  5. 다음 내용을

    (SELECT '<value>' AS [<column>], 
        (SELECT 'value' AS [<nested column>] UNION
            SELECT 'value' AS [<nested column>] ...) 
        AS [<nested table>])
    

    다음 구문으로 바꿉니다.

    (SELECT (SELECT 'Mountain Bottle Cage' AS [Model]
      UNION SELECT 'Mountain Tire Tube' AS [Model]
      UNION SELECT 'Mountain-200' AS [Model]) AS [Products]) AS t
    

    이 문은 UNION 문을 사용하여 예측된 제품과 함께 장바구니에 포함되어야 할 세 가지 제품을 지정합니다. SELECT 문의 Model 열은 중첩된 제품 테이블에 포함된 모델 열에 해당합니다.

    이제 전체 문이 다음과 같아야 합니다.

    SELECT
      PREDICT([Modified Association].[Products],INCLUDE_STATISTICS,3)
    From
      [Modified Association]
    NATURAL PREDICTION JOIN
    (SELECT (SELECT 'Mountain Bottle Cage' AS [Model]
      UNION SELECT 'Mountain Tire Tube' AS [Model]
      UNION SELECT 'Mountain-200' AS [Model]) AS [Products]) AS t
    
  6. 파일 메뉴에서 다른 이름으로 DMXQuery1.dmx 저장을 클릭합니다.

  7. 다른 이름으로 저장 대화 상자에서 해당 폴더로 이동한 다음 파일 이름을 Modified Association Prediction.dmx로 지정합니다.

  8. 도구 모음에서 실행 단추를 클릭합니다.

    쿼리에서 쿼리에 지정된 세 가지 제품과 동일한 장바구니에 있을 가능성이 높은 순서대로 세 가지 제품(HL Mountain Tire, Water Bottle, Fender Set - Mountain)을 포함하는 테이블이 반환됩니다. 이 테이블은 예측의 정확도를 설명하는 통계도 포함합니다.

    이 쿼리의 결과를 통해 MINIMUM_PROBABILITY 매개 변수 값이 쿼리에서 반환되는 결과에 영향을 미침을 알 수 있습니다.

이 단원은 Market Basket 자습서의 마지막 단계입니다. 이제 고객이 동시에 구입하는 경향이 있는 제품 유형 예측에 사용할 수 있는 모델 집합을 갖추었습니다.

다른 예측 시나리오에서 DMX를 사용하는 방법은 Bike Buyer DMX 자습서를 참조하십시오.