모델이 처리된 후 모델에 저장된 연결에 대한 정보를 사용하여 예측을 만들 수 있습니다. 이 단원의 마지막 작업에서는 만든 연결 모델에 대해 예측 쿼리를 작성하는 방법을 알아봅니다. 이 단원에서는 예측 쿼리 작성기를 사용하는 방법을 잘 알고 있으며 연결 모델에 대해 예측 쿼리를 빌드하는 방법을 알아보려고 합니다. 예측 쿼리 작성기를 사용하는 방법에 대한 자세한 내용은 데이터 마이닝 쿼리 인터페이스를 참조하세요.
단일 예측 쿼리 만들기
연결 모델에 대한 예측 쿼리는 매우 유용할 수 있습니다.
이전 또는 관련 구매에 따라 고객에게 항목 추천
관련 이벤트를 찾습니다.
트랜잭션 집합 내 또는 전체의 관계를 식별합니다.
예측 쿼리를 작성하려면 먼저 사용할 연결 모델을 선택한 다음 입력 데이터를 지정합니다. 입력은 값 목록과 같은 외부 데이터 원본에서 제공되거나 단일 쿼리를 빌드하고 이동하는 동안 값을 제공할 수 있습니다.
이 시나리오에서는 먼저 몇 가지 단일 예측 쿼리를 만들어 예측 작동 방식을 파악합니다. 그런 다음 고객의 현재 구매를 기반으로 권장 사항을 만드는 데 사용할 수 있는 일괄 처리 예측에 대한 쿼리를 만듭니다.
연결 모델에서 예측 쿼리를 만들려면
데이터 마이닝 디자이너의 마이닝 모델 예측 탭을 클릭합니다.
마이닝 모델 창에서 모델 선택을 클릭합니다. (올바른 모델이 이미 선택된 경우 이 단계와 다음 단계를 건너뛸 수 있습니다.)
마이닝 모델 선택 대화 상자에서 마이닝 구조 연결을 나타내는 노드를 확장하고 모델 연결을 선택합니다. OK를 클릭합니다.
지금은 입력 창을 무시할 수 있습니다.
표에서 원본 아래의 빈 셀을 클릭하고 예측 함수 를 선택합니다. 필드 아래의 셀에서 .를 선택합니다
PredictAssociation.Predict 함수를 사용하여 연결을 예측할 수도 있습니다. 이 경우 테이블 열을 인수로 사용하는 Predict 함수의 버전을 선택해야 합니다.
마이닝 모델 창에서 중첩 테이블을
vAssocSeqLineItems선택하고 표로 끌어 함수의 조건/인수 상자PredictAssociation로 끕니다.테이블 및 열 이름을 끌어서 놓으면 구문 오류 없이 복잡한 문을 작성할 수 있습니다. 그러나 함수에 대한
PredictAssociation다른 선택적 인수를 포함하는 셀의 현재 내용을 대체합니다. 다른 인수를 보려면 참조를 위해 함수의 두 번째 인스턴스를 그리드에 일시적으로 추가할 수 있습니다.조건/인수 상자를 클릭하고 테이블 이름 다음에 다음 텍스트를 입력합니다.
,3조건/인수 상자의 전체 텍스트는 다음과 같습니다.
[Association].[v Assoc Seq Line Items],3예측 쿼리 작성기의 위쪽 모서리에 있는 결과 단추를 클릭합니다.
예상 결과에는 식이라는 제목이 있는 단일 열이 포함됩니다. 식 열에는 한 개의 열로 구성된 중첩 테이블이 있으며, 이 테이블에는 다음의 세 개의 행이 포함되어 있습니다. 입력 값을 지정하지 않았기 때문에 이러한 예측은 모델 전체에서 가장 가능성이 큰 제품 연결을 나타냅니다.
| 모델 |
|---|
| 여성용 마운틴 쇼츠 |
| 물병 |
| 투어링-3000 |
다음으로 단일 쿼리 입력 창을 사용하여 제품을 쿼리에 대한 입력으로 지정하고 해당 항목과 연결될 가능성이 가장 큰 제품을 확인합니다.
중첩 테이블 입력을 사용하여 단일 예측 쿼리를 만들려면
예측 쿼리 작성기 모서리에 있는 디자인 단추를 클릭하여 쿼리 작성 그리드로 다시 전환합니다.
마이닝 모델 메뉴에서 Singleton 쿼리를 선택합니다.
마이닝 모델 대화 상자에서 연결 모델을 선택합니다.
표에서 원본 아래의 빈 셀을 클릭하고 예측 함수 를 선택합니다. 필드 아래의 셀에서 .를 선택합니다
PredictAssociation.마이닝 모델 창에서 중첩 테이블을
vAssocSeqLineItems선택하고 표로 끌어 함수의 조건/인수 상자PredictAssociation로 끕니다. 이전 절차와 마찬가지로 중첩 테이블 이름 뒤를 입력,3합니다.단일 쿼리 입력 대화 상자에서 vAssoc Seq 줄 항목 옆에 있는 값 상자를 클릭한 다음 (...) 단추를 클릭합니다.
중첩 테이블 입력 대화 상자의 키 열 창에서 선택한
Touring Tire다음 추가를 클릭합니다.결과 단추를 클릭합니다.
이제 결과는 투어링 타이어와 관련될 가능성이 가장 큰 제품에 대한 예측을 보여 줍니다.
| 모델 |
|---|
| 투어링 타이어 튜브 |
| 스포츠-100 |
| 물병 |
그러나 모델을 살펴보면 투어링 타이어 튜브가 투어링 타이어와 함께 자주 구입된다는 것을 이미 알고 있습니다. 이제는 이러한 제품을 함께 구매하는 고객에게 추천할 만한 다른 제품이 무엇일지 알고 싶습니다. 장바구니의 두 항목을 기반으로 관련 제품을 예측하기 위해 쿼리를 변경합니다. 또한 쿼리를 수정하여 예측된 각 제품에 대한 확률을 추가합니다.
단일 예측 쿼리에 입력 및 확률을 추가하려면
예측 쿼리 작성기 모서리에 있는 디자인 단추를 클릭하여 쿼리 작성 그리드로 다시 전환합니다.
단일 쿼리 입력 대화 상자에서 vAssoc Seq 줄 항목 옆에 있는 값 상자를 클릭한 다음 (...) 단추를 클릭합니다.
키 열 창에서
Touring Tire을 선택한 후, 추가를 클릭합니다.표에서 원본 아래의 빈 셀을 클릭하고 예측 함수 를 선택합니다. 필드 아래의 셀에서 .를 선택합니다
PredictAssociation.마이닝 모델 창에서 중첩 테이블을
vAssocSeqLineItems선택하고 표로 끌어 함수의 조건/인수 상자PredictAssociation로 끕니다. 이전 절차와 마찬가지로 중첩 테이블 이름 뒤를 입력,3합니다.중첩 테이블 입력 대화 상자의 키 열 창에서 선택한
Touring Tire Tube다음 추가를 클릭합니다.표의
PredictAssociation함수 행에서 조건/인수 상자를 클릭하고 인수를 변경하여 INCLUDE_STATISTICS 인수를 추가하세요.조건/인수 상자의 전체 텍스트는 다음과 같습니다.
[Association].[v Assoc Seq Line Items], INCLUDE_STATISTICS, 3결과 단추를 클릭합니다.
이제 중첩 테이블의 결과가 변경되어 지원 및 확률과 함께 예측을 표시합니다. 이러한 값을 해석하는 방법에 대한 자세한 내용은 연결 모델에 대한 마이닝 모델 콘텐츠(Analysis Services - 데이터 마이닝)를 참조하세요.
| 모델 | $지원 | $PROBABILITY | $조정된확률 |
|---|---|---|---|
| 스포츠-100 | 4334 | 0.291... | 0.252... |
| 물병 | 2866 | 0.192... | 0.175... |
| 패치 키트 | 2113 | 0.142... | 0.132 |
결과 처리
결과에 중첩 테이블이 많은 경우 더 쉽게 볼 수 있도록 결과를 평면화할 수 있습니다. 이렇게 하려면 쿼리를 수동으로 수정하고 키워드를 FLATTENED 추가할 수 있습니다.
예측 쿼리에서 중첩된 행 집합을 평면화하려면
예측 쿼리 작성기 모서리에 있는 SQL 단추를 클릭합니다.
표가 열려 있는 창으로 변경되어 예측 쿼리 작성기에서 만든 DMX 문을 보고 수정할 수 있습니다.
SELECT키워드 뒤에FLATTENED입력합니다.쿼리의 전체 텍스트는 다음과 같습니다.
SELECT FLATTENED PredictAssociation([Association].[v Assoc Seq Line Items],INCLUDE_STATISTICS,3) FROM [Association] NATURAL PREDICTION JOIN (SELECT (SELECT 'Touring Tire' AS [Model] UNION SELECT 'Touring Tire Tube' AS [Model]) AS [v Assoc Seq Line Items]) AS t예측 쿼리 작성기의 위쪽 모서리에 있는 결과 단추를 클릭합니다.
쿼리를 수동으로 편집한 후에는 변경 내용이 손실되지 않고 디자인 보기로 다시 전환할 수 없습니다. 쿼리를 저장하려는 경우 수동으로 만든 DMX 문을 텍스트 파일에 복사할 수 있습니다. 디자인 보기로 다시 변경하면 쿼리가 디자인 보기에서 유효한 마지막 버전으로 되돌아갑니다.
여러 예측 만들기
과거 구매를 기준으로 개별 고객에 대한 최상의 예측을 알고 싶다고 가정합니다. 고객 ID 및 가장 최근 제품 구매가 포함된 테이블과 같은 예측 쿼리에 대한 입력으로 외부 데이터를 사용할 수 있습니다. 요구 사항은 데이터 테이블이 Analysis Services 데이터 원본 뷰로 이미 정의되어 있어야 한다는 것입니다. 또한 입력 데이터에는 모델에 사용되는 것과 같은 사례 및 중첩 테이블이 포함되어야 합니다. 이름이 같을 필요는 없지만 구조는 비슷해야 합니다. 이 자습서에서는 모델이 학습된 원래 테이블을 사용합니다.
예측 쿼리에 대한 입력 메서드를 변경하려면
마이닝 모델 메뉴에서 Singleton 쿼리를 다시 선택하여 확인 표시를 지웁다.
싱글톤 쿼리가 손실된다는 경고 오류 메시지가 나타납니다. 예를 클릭합니다.
입력 대화 상자의 이름이 입력 테이블 선택으로 변경됩니다.
고객 ID와 제품 목록을 입력으로 제공하는 예측 쿼리를 만드는 데 관심이 있으므로 고객 테이블을 사례 테이블로 추가하고 구매 테이블을 중첩 테이블로 추가합니다. 그런 다음 예측 함수를 추가하여 권장 사항을 만듭니다.
중첩 테이블 입력을 사용하여 예측 쿼리를 만들려면
마이닝 모델 창에서 연결 필터링된 모델을 선택합니다.
입력 테이블 선택 대화 상자에서 사례 테이블 선택을 클릭합니다.
테이블 선택 대화 상자의 데이터 원본에 대해 AdventureWorksDW2008을 선택합니다. 테이블/보기 이름 목록에서 vAssocSeqOrders를 선택한 다음 확인을 클릭합니다.
vAssocSeqOrders 테이블이 창에 추가됩니다.
입력 테이블 선택 대화 상자에서 중첩 테이블 선택을 클릭합니다.
테이블 선택 대화 상자의 데이터 원본에 대해 AdventureWorksDW2008을 선택합니다. 테이블/보기 이름 목록에서 vAssocSeqLineItems를 선택한 다음 확인을 클릭합니다.
vAssocSeqLineItems 테이블이 창에 추가됩니다.
중첩 조인 지정 대화 상자에서 사례 테이블에서 OrderNumber 필드를 끌어 중첩 테이블의 OrderNumber 필드에 놓습니다.
목록에서 열을 선택하여 관계 추가 를 클릭하고 관계를 만들 수도 있습니다.
관계 지정 대화 상자에서 OrderNumber 필드가 올바르게 매핑되었는지 확인한 다음 확인을 클릭합니다.
확인을 클릭하여 중첩 조인 지정 대화 상자를 닫습니다.
디자인 창에서 사례 및 중첩 테이블이 업데이트되어 외부 데이터 열을 모델의 열에 연결하는 조인을 표시합니다. 관계가 잘못된 경우 조인 줄을 마우스 오른쪽 단추로 클릭하고 연결 수정 을 선택하여 열 매핑을 편집하거나 조인 줄을 마우스 오른쪽 단추로 클릭하고 삭제 를 선택하여 관계를 완전히 제거할 수 있습니다.
표에 새 행을 추가합니다. 원본의 경우 vAssocSeqOrders 테이블을 선택합니다. 필드의 경우 CustomerKey를 선택합니다.
표에 새 행을 추가합니다. 원본의 경우 vAssocSeqOrders 테이블을 선택합니다. 필드의 경우 지역을 선택합니다.
표에 새 행을 추가합니다. 원본에는 예측 함수를 선택하고 필드에 대해
PredictAssociation을 선택합니다.vAssocSeqLineItems를 행의
PredictAssociation조건/인수 상자로 끕니다. 조건/인수 상자의 끝을 클릭한 다음 다음 텍스트를 입력합니다.INCLUDE_STATISTICS,3조건/인수 상자의 전체 텍스트는 다음과 같습니다.
[Association].[v Assoc Seq Line Items], INCLUDE_STATISTICS, 3결과 단추를 클릭하여 각 고객에 대한 예측을 봅니다.
여러 모델에서 유사한 예측 쿼리를 만들어 필터링이 예측 결과를 변경하는지 여부를 확인할 수 있습니다. 예측 및 기타 유형의 쿼리를 만드는 방법에 대한 자세한 내용은 연결 모델 쿼리 예제를 참조하세요.
또한 참조하십시오
연결 모델에 대한 마이닝 모델 콘텐츠(Analysis Services - 데이터 마이닝)
PredictAssociation(DMX)
예측 쿼리 작성기를 사용하여 예측 쿼리 만들기