ClusterDistance (DMX)
Aplica-se a: SQL Server Analysis Services
A função ClusterDistance retorna a distância do caso de entrada do cluster especificado ou, se nenhum cluster for especificado, a distância do caso de entrada do cluster mais provável.
Sintaxe
ClusterDistance([<ClusterID expression>])
Aplica-se A
Essa função só pode ser usada se o modelo de mineração de dados subjacente oferecer suporte a clustering. A função pode ser usada com qualquer tipo de modelo de clusterização (EM, K-Means etc.), mas o resultado será diferente de acordo com o algoritmo.
Tipo de retorno
Valor escalar.
Comentários
A função ClusterDistance retorna a distância entre o caso de entrada e o cluster que tem a maior probabilidade para esse caso de entrada.
No caso da clusterização K-Means, como qualquer caso pode pertencer a apenas um cluster, com um peso de associação de 1.0, a distância do cluster sempre será 0. No entanto, em K-Means, pressupõe-se que cada cluster tem um centroide. Para obter o valor do centroide, consulte ou procure a tabela aninhada NODE_DISTRIBUTION no conteúdo do modelo de mineração. Para obter mais informações, consulte Conteúdo do modelo de mineração para modelos de clustering (Analysis Services – Mineração de dados).
No caso do método de clusterização de EM padrão, todos os pontos dentro do cluster são considerados igualmente prováveis; portanto, por design, não há centroide para o cluster. O valor de ClusterDistance entre um caso específico e um cluster específico N é calculado da seguinte maneira:
ClusterDistance(N) =1-(membershipWeight(N))
Ou:
ClusterDistance(N) =1-ClusterProbability (N))
Funções de previsão relacionadas
O Analysis Services fornece as seguintes funções adicionais para consultar modelos de clustering:
Use a função Cluster (DMX) para retornar o cluster mais provável.
Use a função ClusterProbability (DMX) para obter a probabilidade de que um caso pertença a um cluster específico. Este valor serve como o inverso da distância de cluster.
Use a função PredictHistogram (DMX) para retornar um histograma da probabilidade do caso de entrada existente em cada um dos clusters do modelo.
Use a função PredictCaseLikelihood (DMX) para retornar uma medida de 0 a 1 que indica a probabilidade de um caso de entrada existir, considerando o modelo aprendido pelo algoritmo.
Exemplo 1: Obtendo a distância do cluster para um cluster mais provável
O exemplo a seguir retorna a distância do caso especificado para o cluster ao qual o caso provavelmente pertence.
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
Resultados do exemplo:
Expression |
---|
0.0477390930705145 |
Para descobrir qual é esse cluster, você pode substituir Cluster
for ClusterDistance
no exemplo anterior.
Resultados do exemplo:
$CLUSTER |
---|
Cluster 6 |
Exemplo 2: Obtendo a distância para um cluster especificado
A sintaxe a seguir usa o conjunto de linhas do esquema de conteúdo do modelo de mineração para retornar a lista de IDs de nó e legendas de nó para os clusters que existem no modelo de mineração. Em seguida, você pode usar a legenda do nó como o argumento do identificador de cluster na função ClusterDistance .
SELECT NODE_UNIQUE_NAME, NODE_CAPTION
FROM <model>.CONTENT
WHERE NODE_TYPE = 5
Resultados do exemplo:
NODE_UNIQUE_NAME | NODE_CAPTION |
---|---|
001 | Cluster 1 |
002 | Cluster 2 |
A sintaxe a seguir retorna a distância do caso especificado do cluster rotulado como 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
Resultados do exemplo:
Distância do Cluster 2 |
---|
0.97008209236394 |
Confira também
Cluster (DMX)
Referência de função DMX (Data Mining Extensions)
Funções (DMX)
Conteúdo do modelo de mineração para modelos de clustering (Analysis Services – Mineração de Dados)