ClusterDistance(DMX)
ClusterDistance 함수는 입력 사례와 지정된 클러스터 사이의 거리를 반환합니다. 클러스터가 지정되지 않은 경우에는 입력 사례와 가장 가능성 있는 클러스터 사이의 거리를 반환합니다.
구문
ClusterDistance([<ClusterID expression>])
적용 대상
기본 데이터 마이닝 모델에서 클러스터링을 지원할 경우에만 이 함수를 사용할 수 있습니다. 이 함수는 EM과 K-Means를 비롯한 모든 종류의 클러스터링 모델과 함께 사용할 수 있지만 알고리즘에 따라 결과가 달라집니다.
반환 형식
스칼라 값
주의
ClusterDistance 함수는 입력 사례와 해당 입력 사례에 대한 확률이 가장 높은 클러스터 사이의 거리를 반환합니다.
K-Means 클러스터링의 경우 모든 사례는 멤버 자격 가중치가 1.0인 하나의 클러스터에만 속할 수 있으므로 클러스터 거리는 항상 0입니다. 그러나 K-Means에서는 각 클러스터에 중심이 있는 것으로 간주됩니다. 마이닝 모델 콘텐츠에서 NODE_DISTRIBUTION 중첩 테이블을 쿼리하거나 탐색하면 중심 값을 가져올 수 있습니다. 자세한 내용은 클러스터링 모델에 대한 마이닝 모델 콘텐츠(Analysis Services - 데이터 마이닝)를 참조하십시오.
기본 EM 클러스터링 모델의 경우 클러스터 내부에 있는 모든 점의 확률이 같은 것으로 간주되므로 클러스터에 중심이 없습니다. 특정 사례와 특정 클러스터 N 사이의 ClusterDistance 값은 다음과 같이 계산됩니다.
ClusterDistance(N) = 1–(membershipWeight(N))
또는
ClusterDistance(N) = 1–ClusterProbability (N))
관련 예측 함수
Analysis Services에서는 클러스터링 모델을 쿼리하는 다음과 같은 함수를 추가로 제공합니다.
Cluster(DMX) 함수를 사용하여 가장 가능성 있는 클러스터를 반환합니다.
ClusterProbability(DMX) 함수를 사용하여 사례가 특정 클러스터에 속할 확률을 가져옵니다. 이 값은 클러스터 거리의 역수가 됩니다.
PredictHistogram(DMX) 함수를 사용하여 입력 사례가 모델의 각 클러스터에 속할 확률의 히스토그램을 반환합니다.
PredictCaseLikelihood(DMX) 함수를 사용하여 알고리즘에서 학습한 모델을 고려할 때 입력 사례가 존재할 확률을 나타내는 0에서 1 사이의 측정값을 반환합니다.
예 1: 가장 가능성 있는 클러스터에 대한 클러스터 거리 가져오기
다음 예에서는 지정된 사례와 해당 사례가 속할 가능성이 가장 높은 클러스터 사이의 거리를 반환합니다.
SELECT
ClusterDistance()
FROM
[TM Clustering]
NATURAL PREDICTION JOIN
(SELECT 28 AS [Age],
'2-5 Miles' AS [Commute Distance],
'Graduate Degree' AS [Education],
0 AS [Number Cars Owned],
0 AS [Number Children At Home]) AS t
예 결과:
Expression |
---|
0.0477390930705145 |
가장 가능성 있는 클러스터를 확인하려면 위 예제에서 ClusterDistance를 Cluster로 바꿉니다.
예 결과:
$CLUSTER |
---|
Cluster 6 |
예 2: 지정된 클러스터까지의 거리 가져오기
다음 구문은 마이닝 모델 콘텐츠 스키마 행 집합을 사용하여 마이닝 모델의 클러스터에 대한 노드 ID 및 노드 캡션의 목록을 반환합니다. 그런 다음 ClusterDistance 함수에서 노드 캡션을 클러스터 식별자 인수로 사용할 수 있습니다.
SELECT NODE_UNIQUE_NAME, NODE_CAPTION
FROM <model>.CONTENT
WHERE NODE_TYPE = 5
예 결과:
NODE_UNIQUE_NAME |
NODE_CAPTION |
---|---|
001 |
Cluster 1 |
002 |
Cluster 2 |
다음 구문 예에서는 지정된 사례와 Cluster 2라는 클러스터 사이의 거리를 반환합니다.
SELECT
ClusterDistance('Cluster 2')
AS [Cluster 2 Distance]
FROM [TM Clustering]
NATURAL PREDICTION JOIN
(SELECT 28 AS [Age],
'2-5 Miles' AS [Commute Distance],
'Graduate Degree' AS [Education],
0 AS [Number Cars Owned],
0 AS [Number Children At Home]) AS t
예 결과:
Cluster 2 Distance |
---|
0.97008209236394 |