데이터 마이닝 모델에 대해 쿼리를 만들 때 분석에서 검색된 패턴에 대한 세부 정보를 제공하는 콘텐츠 쿼리 또는 모델의 패턴을 사용하여 새 데이터를 예측하는 예측 쿼리를 만들 수 있습니다. 예를 들어 신경망 모델에 대한 콘텐츠 쿼리는 숨겨진 계층 수와 같은 모델 메타데이터를 검색할 수 있습니다. 또는 예측 쿼리는 입력을 기반으로 분류를 제안하고 필요에 따라 각 분류에 대한 확률을 제공할 수 있습니다.
이 섹션에서는 Microsoft 신경망 알고리즘을 기반으로 하는 모델에 대한 쿼리를 만드는 방법을 설명합니다.
콘텐츠 쿼리
예측 쿼리
신경망 모델에 대한 정보 찾기
모든 마이닝 모델은 표준화된 스키마인 마이닝 모델 스키마 행 집합에 따라 알고리즘에서 학습한 콘텐츠를 노출합니다. 이 정보는 모델에 대한 세부 정보를 제공하며, 기본 메타데이터, 분석에서 검색된 구조 및 처리 시 사용되는 매개 변수를 포함합니다. DMX(데이터 마이닝 확장) 문을 사용하여 모델 콘텐츠에 대한 쿼리를 만들 수 있습니다.
샘플 쿼리 1: DMX를 사용하여 모델 메타데이터 가져오기
다음 쿼리는 Microsoft 신경망 알고리즘을 사용하여 빌드된 모델에 대한 몇 가지 기본 메타데이터를 반환합니다. 신경망 모델에서 모델의 부모 노드에는 모델의 이름, 모델이 저장되는 데이터베이스의 이름 및 자식 노드의 수만 포함됩니다. 그러나 한계 통계 노드(NODE_TYPE = 24)는 이 기본 메타데이터와 모델에 사용되는 입력 열에 대한 일부 파생 통계를 모두 제공합니다.
다음 샘플 쿼리는 중간 데이터 마이닝 자습서에서 만든 마이닝 모델을 기반으로 합니다 Call Center Default NN. 이 모델은 콜 센터의 데이터를 사용하여 인력과 통화 수, 주문 및 문제 간의 가능한 상관 관계를 살펴봅니다. DMX 문은 신경망 모델의 한계 통계 노드에서 데이터를 검색합니다. 관심 있는 입력 특성 통계가 중첩 테이블 NODE_DISTRIBUTION 저장되기 때문에 이 쿼리에는 FLATTENED 키워드가 포함됩니다. 그러나 쿼리 공급자가 계층적 행 집합을 지원하는 경우 FLATTENED 키워드를 사용할 필요가 없습니다.
SELECT FLATTENED MODEL_CATALOG, MODEL_NAME,
( SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE,
[SUPPORT], [PROBABILITY], VALUETYPE
FROM NODE_DISTRIBUTION
) AS t
FROM [Call Center Default NN].CONTENT
WHERE NODE_TYPE = 24
비고
중첩 테이블 열 [SUPPORT] 및 [PROBABILITY]의 이름을 대괄호로 묶어 같은 이름의 예약어와 구분해야 합니다.
결과 예:
| 모델 카탈로그 | MODEL_NAME | t.ATTRIBUTE_NAME | 속성값 | t.지원 | t.확률 | t.VALUETYPE |
|---|---|---|---|---|---|---|
| Adventure Works DW 다차원 2012 | 콜 센터 NN | 문제당 평균 시간 | 없어진 | 0 | 0 | 1 |
| Adventure Works DW 다차원 2012 | 콜 센터 NN | 문제당 평균 시간 | < 64.7094100096 | 11 | 0.407407407 | 5 |
신경망 모델의 컨텍스트에서 스키마 행 집합의 열이 의미하는 바에 대한 정의는 신경 망 모델용 마이닝 모델 콘텐츠(Analysis Services - 데이터 마이닝)를 참조하세요.
샘플 쿼리 2: 스키마 행 집합에서 모델 메타데이터 검색
데이터 마이닝 스키마 행 집합을 쿼리하여 DMX 콘텐츠 쿼리에서 반환되는 동일한 정보를 찾을 수 있습니다. 그러나 스키마 행 집합은 몇 가지 추가 열을 제공합니다. 다음 샘플 쿼리는 모델을 만든 날짜, 수정된 날짜 및 모델이 마지막으로 처리된 날짜를 반환합니다. 또한 쿼리는 모델 콘텐츠에서 쉽게 사용할 수 없는 예측 가능한 열과 모델을 빌드하는 데 사용된 매개 변수를 반환합니다. 이 정보는 모델을 문서화하는 데 유용할 수 있습니다.
SELECT MODEL_NAME, DATE_CREATED, LAST_PROCESSED, PREDICTION_ENTITY, MINING_PARAMETERS
from $system.DMSCHEMA_MINING_MODELS
WHERE MODEL_NAME = 'Call Center Default NN'
결과 예:
| MODEL_NAME | 콜센터 기본 NN |
| 생성일 | 1/10/2008 5:07:38 오후 |
| 마지막 처리됨 | 2008년 1월 10일 오후 5:24:02 |
| PREDICTION_ENTITY | 문제당 평균 시간, 서비스 등급, 주문 수 |
| 채굴 매개변수 | HOLDOUT_PERCENTAGE=30, HOLDOUT_SEED=0 MAXIMUM_INPUT_ATTRIBUTES=255, MAXIMUM_OUTPUT_ATTRIBUTES=255, MAXIMUM_STATES=100, SAMPLE_SIZE=10000, HIDDEN_NODE_RATIO=4 |
샘플 쿼리 3: 모델에 대한 입력 특성 검색
입력 계층의 자식 노드(NODE_TYPE = 20)(NODE_TYPE = 18)를 쿼리하여 모델을 만드는 데 사용된 입력 특성-값 쌍을 검색할 수 있습니다. 다음 쿼리는 노드 설명에서 입력 특성 목록을 반환합니다.
SELECT NODE_DESCRIPTION
FROM [Call Center Default NN].CONTENT
WHERE NODE_TYPE = 2
결과 예:
| 노드 설명 |
|---|
| 문제당 평균 시간=64.7094100096 - 77.4002099712 |
| 요일=금 |
| 수준 1 연산자 |
결과에서 몇 개의 대표 행만 여기에 표시됩니다. 그러나 NODE_DESCRIPTION 입력 특성의 데이터 형식에 따라 약간 다른 정보를 제공하는 것을 볼 수 있습니다.
특성이 불연속 또는 불연속 값인 경우 특성과 해당 값 또는 불연속화된 범위가 반환됩니다.
특성이 연속 숫자 데이터 형식인 경우 NODE_DESCRIPTION 특성 이름만 포함합니다. 그러나 중첩된 NODE_DISTRIBUTION 테이블을 검색하여 평균을 가져오거나 NODE_RULE 반환하여 숫자 범위의 최소값과 최대값을 가져올 수 있습니다.
다음 쿼리는 중첩된 NODE_DISTRIBUTION 테이블을 쿼리하여 한 열의 특성과 다른 열의 해당 값을 반환하는 방법을 보여 있습니다. 연속 특성의 경우 특성 값은 해당 평균으로 표시됩니다.
SELECT FLATTENED
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE
FROM NODE_DISTRIBUTION) as t
FROM [Call Center Default NN -- Predict Service and Orders].CONTENT
WHERE NODE_TYPE = 21
결과 예:
| t.ATTRIBUTE_NAME | 속성값 |
|---|---|
| 문제당 평균 시간 | 64.7094100096 - 77.4002099712 |
| 요일 | 금. |
| 수준 1 연산자 | 3.2962962962963 |
최소 및 최대 범위 값은 NODE_RULE 열에 저장되며 다음 예제와 같이 XML 조각으로 표시됩니다.
<NormContinuous field="Level 1 Operators">
<LinearNorm orig="2.83967303681711" norm="-1" />
<LinearNorm orig="3.75291955577548" norm="1" />
</NormContinuous>
샘플 쿼리 4: 숨겨진 계층에서 가중치 검색
신경망 모델의 모델 콘텐츠는 네트워크의 모든 노드에 대한 세부 정보를 쉽게 검색할 수 있는 방식으로 구성됩니다. 또한 노드의 ID 번호는 노드 형식 간의 관계를 식별하는 데 도움이 되는 정보를 제공합니다.
다음 쿼리는 숨겨진 계층의 특정 노드 아래에 저장된 계수를 검색하는 방법을 보여 줍니다. 숨겨진 계층은 메타데이터만 포함하는 이끌이 노드(NODE_TYPE = 19)와 특성과 값의 다양한 조합에 대한 계수를 포함하는 여러 자식 노드(NODE_TYPE = 22)로 구성됩니다. 이 쿼리는 계수 노드만 반환합니다.
SELECT FLATTENED TOP 1 NODE_UNIQUE_NAME,
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE, VALUETYPE
FROM NODE_DISTRIBUTION) as t
FROM [Call Center Default NN -- Predict Service and Orders].CONTENT
WHERE NODE_TYPE = 22
AND [PARENT_UNIQUE_NAME] = '40000000200000000' FROM [Call Center Default NN].CONTENT
결과 예:
| 노드_고유_이름 | t.ATTRIBUTE_NAME | 속성값 | t.값유형 |
|---|---|---|---|
| 70000000200000000 | 6000000000000000a | -0.178616518 | 7 |
| 70000000200000000 | 6000000000000000b | -0.267561918 | 7 |
| 70000000200000000 | 6000000000000000c | 0.11069497 | 7 |
| 70000000200000000 | 6000000000000000d | 0.123757712 | 7 |
| 70000000200000000 | 6000000000000000e | 0.294565343 | 7 |
| 70000000200000000 | 60,000,000,000,000,000f | 0.22245318 | 7 |
| 70000000200000000 | 0.188805045 | 7 |
여기에 표시된 부분 결과는 신경망 모델 콘텐츠가 숨겨진 노드를 입력 노드와 어떻게 관련되는지를 보여 줍니다.
숨겨진 계층에 있는 노드의 고유한 이름은 항상 70000000으로 시작합니다.
입력 계층의 노드 고유 이름은 항상 60000000으로 시작합니다.
따라서 이러한 결과는 ID 70000000200000000 표시된 노드에 6개의 서로 다른 계수(VALUETYPE = 7)가 전달되었음을 나타냅니다. 계수의 값은 ATTRIBUTE_VALUE 열에 있습니다. ATTRIBUTE_NAME 열의 노드 ID를 사용하여 계수의 입력 특성을 정확히 확인할 수 있습니다. 예를 들어 노드 ID 6000000000000000a 입력 특성 및 값을 참조하거나, Day of Week = 'Tue.' 노드 ID를 사용하여 쿼리를 만들거나, Microsoft 일반 콘텐츠 트리 뷰어를 사용하여 노드로 이동할 수 있습니다.
마찬가지로 출력 계층에서 노드의 NODE_DISTRIBUTION 테이블을 쿼리하는 경우(NODE_TYPE = 23) 각 출력 값에 대한 계수를 볼 수 있습니다. 그러나 출력 계층에서 포인터는 숨겨진 계층의 노드를 다시 참조합니다. 자세한 내용은 신경망 모델에 대한 마이닝 모델 콘텐츠(Analysis Services - 데이터 마이닝)를 참조하세요.
신경망 모델을 사용하여 예측
Microsoft 신경망 알고리즘은 분류 및 회귀를 모두 지원합니다. 이러한 모델에서 예측 함수를 사용하여 새 데이터를 제공하고 단일 또는 일괄 처리 예측을 만들 수 있습니다.
샘플 쿼리 5: 단일 예측 만들기
신경망 모델에서 예측 쿼리를 빌드하는 가장 쉬운 방법은 SQL Server Management Studio와 SSDT(SQL Server Data Tools) 모두에서 데이터 마이닝 디자이너의 마이닝 예측 탭에서 사용할 수 있는 예측 쿼리 작성기를 사용하는 것입니다. Microsoft 신경망 뷰어에서 모델을 탐색하여 관심 있는 특성을 필터링하고 추세를 확인한 다음 마이닝 예측 탭으로 전환하여 쿼리를 만들고 이러한 추세에 대한 새 값을 예측할 수 있습니다.
예를 들어 콜 센터 모델을 검색하여 주문 볼륨과 다른 특성 간의 상관 관계를 볼 수 있습니다. 이렇게 하려면 뷰어에서 모델을 열고 입력에 대해 [모두>]를 선택합니다<. 다음으로 출력에서 주문 수를 선택합니다. 값 1의 경우 가장 많은 주문을 나타내는 범위를 선택하고 값 2의 경우 가장 적은 주문을 나타내는 범위를 선택합니다. 그런 다음 모델이 주문 볼륨과 상호 관련된 모든 특성을 한눈에 볼 수 있습니다.
뷰어에서 결과를 검색하면 특정 요일의 주문량이 적고 운영자 수가 증가하면 판매 증가와 상관 관계가 있는 것으로 보입니다. 그런 다음 모델에서 예측 쿼리를 사용하여 "what if" 가설을 테스트하고 볼륨이 적은 날에 수준 2 연산자 수를 늘리면 주문이 증가할지 물어볼 수 있습니다. 이렇게 하려면 다음과 같은 쿼리를 만듭니다.
SELECT Predict([Call Center Default NN].[Number of Orders]) AS [Predicted Orders],
PredictProbability([Call Center Default NN].[Number of Orders]) AS [Probability]
FROM [Call Center Default NN]
NATURAL PREDICTION JOIN
(SELECT 'Tue.' AS [Day of Week],
13 AS [Level 2 Operators]) AS t
결과 예:
| 예측된 주문 | 확률 |
|---|---|
| 364 | 0.9532... |
예측된 판매량이 화요일의 현재 판매 범위보다 높으며 예측 확률이 매우 높습니다. 그러나 일괄 처리 프로세스를 사용하여 모델에 대한 다양한 가설을 테스트하여 여러 예측을 만들 수 있습니다.
비고
Excel 2007용 데이터 마이닝 Add-Ins 로지스틱 회귀 마법사를 제공하여 특정 교대 근무의 대상 수준으로 서비스 등급을 개선하는 데 필요한 수준 2 연산자 수와 같은 복잡한 질문에 쉽게 대답할 수 있습니다. 데이터 마이닝 추가 기능은 무료 다운로드이며 신경망 및/또는 로지스틱 회귀 알고리즘을 기반으로 하는 마법사를 포함합니다. 자세한 내용은 Office 2007 웹 사이트의 데이터 마이닝 추가 기능을 참조하세요.
예측 함수 목록
모든 Microsoft 알고리즘은 일반적인 함수 집합을 지원합니다. Microsoft 신경망 알고리즘과 관련된 예측 함수는 없습니다. 그러나 알고리즘은 다음 표에 나열된 함수를 지원합니다.
| 예측 함수 | 사용법 |
| IsDescendant(DMX) | 한 노드가 신경망 그래프에서 다른 노드의 자식인지 여부를 확인합니다. |
| PredictAdjustedProbability(DMX) | 가중 확률을 반환합니다. |
| PredictHistogram(DMX) | 현재 예측 값과 관련된 값 테이블을 반환합니다. |
| PredictVariance(DMX) | 예측 값의 분산을 반환합니다. |
| PredictProbability(DMX) | 예측 값의 확률을 반환합니다. |
| PredictStdev(DMX) | 예측 값의 표준 편차를 반환합니다. |
| PredictSupport(DMX) | 신경망 및 로지스틱 회귀 모델의 경우 전체 모델에 대한 학습 집합의 크기를 나타내는 단일 값을 반환합니다. |
특정 함수의 구문은 DMX(데이터 마이닝 확장) 함수 참조를 참조하세요.
또한 참조하십시오
Microsoft 신경망 알고리즘
Microsoft 신경망 알고리즘 기술 참조
신경망 모델에 대한 마이닝 모델 콘텐츠(Analysis Services - 데이터 마이닝)
5단원: 신경망 및 로지스틱 회귀 모델 빌드(중간 데이터 마이닝 자습서)