Freigeben über


ClusterDistance (DMX)

Gilt für: SQL Server Analysis Services

Die ClusterDistance-Funktion gibt den Abstand des Eingabefalles vom angegebenen Cluster zurück oder wenn kein Cluster angegeben ist, den Abstand des Eingabefalles vom höchstwahrscheinlichen Cluster.

Syntax

  
ClusterDistance([<ClusterID expression>])  

Gilt für

Diese Funktion kann nur verwendet werden, wenn das zugrunde liegende Data Mining-Modell Cluster unterstützt. Die Funktion kann mit jedem Clusteringmodell verwendet werden (EM, K-Means usw.), die Ergebnisse unterscheiden sich jedoch in Abhängigkeit von dem Algorithmus.

Rückgabetyp

Ein Skalarwert.

Hinweise

Die Funktion ClusterDistance gibt den Abstand zwischen dem Eingabefall und dem Cluster zurück, der die höchste Wahrscheinlichkeit für diesen Eingabefall hat.

Im Fall von K-Means-Clustering, bei dem jeder Fall nur zu einem Cluster gehören kann und die Mitgliedschaftsgewichtung 1,0 beträgt, ist der Clusterabstand immer 0. In K-Means wird jedoch davon ausgegangen, dass jeder Cluster einen Schwerpunkt besitzt. Sie können den Wert des Schwerpunkts abrufen, indem Sie im Miningmodellinhalt die geschachtelte Tabelle NODE_DISTRIBUTION abfragen oder durchsuchen. Weitere Informationen finden Sie unter Miningmodellinhalt für Clusteringmodelle (Analysis Services – Data Mining).

Im Fall der standardmäßigen EM-Clusteringmethode werden alle Punkte innerhalb des Clusters als gleich wahrscheinlich betrachtet, daher ist programmbedingt kein Schwerpunkt für den Cluster vorhanden. Der Wert der ClusterDistance zwischen einem bestimmten Fall und einem bestimmten Cluster N wird wie folgt berechnet:

ClusterDistance(N) =1-(membershipWeight(N))

Oder:

ClusterDistance(N) =1-ClusterProbability (N))

Analysis Services bietet die folgenden zusätzlichen Funktionen zum Abfragen von Clusteringmodellen:

  • Verwenden Sie die Clusterfunktion (CLUSTERS), um den höchstwahrscheinlichen Cluster zurückzugeben.

  • Verwenden Sie die ClusterProbability (STRETCH) -Funktion, um die Wahrscheinlichkeit abzurufen, dass ein Fall zu einem bestimmten Cluster gehört. Dieser Wert stellt die Umkehrung des Clusterabstands dar.

  • Verwenden Sie die Funktion PredictHistogram (ASSEMBLY), um ein Histogramm der Wahrscheinlichkeit des Eingabefalls zurückzugeben, der in den einzelnen Clustern des Modells vorhanden ist.

  • Verwenden Sie die Funktion PredictCaseLikelihood (FUNCTION), um ein Measure von 0 bis 1 zurückzugeben, das angibt, wie wahrscheinlich ein Eingabefall vorhanden ist, wenn das vom Algorithmus gelernte Modell berücksichtigt wird.

Beispiel 1: Abrufen des Clusterabstands zum wahrscheinlichsten Cluster

Im folgenden Beispiel wird der Abstand von dem angegebenen Fall zu dem Cluster angegeben, zu dem der Fall höchstwahrscheinlich gehört.

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  

Beispielergebnisse:

Ausdruck
0.0477390930705145

Sie können im vorstehenden Beispiel Cluster durch ClusterDistance ersetzen, um festzustellen, um welchen Cluster es sich handelt.

Beispielergebnisse:

$CLUSTER
Cluster 6

Beispiel 2: Abrufen des Abstands zu einem bestimmten Cluster

In der folgenden Syntax wird das Schemarowset für den Inhalt eines Miningmodells verwendet, um eine Liste mit Knoten-IDs und Knotenbeschriftungen für die Cluster zurückzugeben, die im Miningmodell vorhanden sind. Anschließend können Sie die Knotenbeschriftung als Clusterbezeichnerargument in der ClusterDistance-Funktion verwenden.

SELECT NODE_UNIQUE_NAME, NODE_CAPTION   
FROM <model>.CONTENT   
WHERE NODE_TYPE = 5  

Beispielergebnisse:

NODE_UNIQUE_NAME NODE_CAPTION
001 Cluster 1
002 Cluster 2

Im folgenden Syntaxbeispiel wird der Abstand zwischen dem angegebenen Fall und dem Cluster mit der Bezeichnung Cluster 2 zurückgeben.

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  

Beispielergebnisse:

Cluster 2 Distance
0.97008209236394

Weitere Informationen

Cluster (CLUSTERS)
Data Mining Extensions (EXTENSION) Funktionsreferenz
Functions (DMX) (Funktionen (DMX))
Miningmodellinhalt für Clusteringmodelle (Analysis Services - Data Mining)