다음을 통해 공유


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