Algorithme Clusters Microsoft

L'algorithme Clusters Microsoft est un algorithme de segmentation fourni par Microsoft SQL Server 2005 Analysis Services (SSAS). L'algorithme utilise des techniques itératives pour grouper les cas d'un jeu de données en clusters contenant des caractéristiques similaires. Ces groupements sont utiles pour l'exploration des données, l'identification d'anomalies dans les données et la création de prévisions.

Les modèles de clusters identifient des relations dans un jeu de données que vous ne pourriez peut-être pas déduire d'une observation informelle. Par exemple, vous pouvez déduire logiquement que les personnes qui se rendent à leur travail en vélo n'habitent généralement pas très loin de leur travail. Toutefois, l'algorithme peut trouver d'autres caractéristiques moins évidentes sur les personnes qui se rendent à leur travail en vélo. Dans le diagramme ci-dessous, le cluster A représente des données sur les personnes qui se rendent généralement en voiture à leur travail, tandis que le cluster B représente des données sur les personnes qui vont généralement en vélo à leur travail.

Modèle de cluster de tendances de commutateur

L'algorithme de clusters diffère des autres algorithmes d'exploration de données, tels que l'algorithme MDT (Microsoft Decision Trees), par le fait que vous n'avez pas à désigner de colonne prévisible pour être en mesure de générer un modèle de clusters. L'algorithme de clusters effectue l'apprentissage du modèle strictement à partir des relations qui existent dans les données et à partir des clusters que l'algorithme identifie.

Exemple

Considérez un groupe de personnes qui partagent des informations démographiques similaires et qui achètent des produits similaires de la société Adventure Works. Ce groupe de personnes représente un cluster de données. Plusieurs clusters de ce type peuvent exister dans une base de données. En observant les colonnes qui composent un cluster, vous pouvez voir plus clairement comment les enregistrements d'un jeu de données sont liés les uns aux autres.

Fonctionnement de l'algorithme

L'algorithme Clusters Microsoft commence par identifier les relations qui existent dans un jeu de données et génère une série de clusters en fonction de ces relations. Un nuage de points représente une méthode utile pour représenter graphiquement la manière dont l'algorithme groupe les données, comme l'illustre le diagramme suivant. Le nuage de points représente tous les cas du jeu de données, chaque cas correspondant à un point sur le graphique. Les clusters groupent les points sur le graphique et illustrent les relations que l'algorithme identifie.

Nuage de points de cas dans un dataset

Une fois les clusters définis, l'algorithme calcule comment les clusters représentent les groupements des points, puis tente de redéfinir les groupements pour créer des clusters qui représentent mieux les données. L'algorithme effectue des itérations sur ce processus jusqu'à ce qu'il ne puisse plus améliorer les résultats en redéfinissant les clusters.

L'algorithme Clusters Microsoft offre deux méthodes pour calculer comment les points sont adaptés aux clusters : EM (Expectation Maximization) et K-Means. Pour les clusters EM, l'algorithme utilise une méthode probabiliste pour déterminer la probabilité qu'un point de données existe dans un cluster. Pour K-Means, l'algorithme utilise une mesure de distance pour attribuer un point de données au cluster le plus proche.

Les colonnes dont l'utilisation est définie pour prévoir uniquement ne sont pas utilisées pour générer des clusters. Leurs distributions dans les clusters sont calculées après la création des clusters.

Pour obtenir des détails sur le fonctionnement de l'algorithme MC (Microsoft Clustering), consultez Scaling EM (Expectation Maximization) Clustering to Large Databases (en anglais).

Utilisation de l'algorithme

Un modèle de clusters doit contenir une colonne clé et des colonnes d'entrée. Vous pouvez également définir les colonnes d'entrée comme prévisibles.

L'algorithme prend en charge des types de contenu de colonne d'entrée, des types de contenu de colonne prévisible et des indicateurs de modélisation spécifiques, lesquels sont répertoriés dans le tableau ci-dessous.

Types de contenu de colonne d'entrée

Continu, cyclique, discret, discrétisé, clé, table et trié

Types de contenu de colonne prévisible

Continu, cyclique, discret, discrétisé, table et trié

Indicateurs de modélisation

MODEL_EXISTENCE_ONLY et NOT NULL

Tous les algorithmes Microsoft prennent en charge un ensemble commun de fonctions. Toutefois, l'algorithme Clusters Microsoft prend en charge des fonctions supplémentaires, répertoriées dans le tableau ci-dessous.

Cluster

PredictCaseLikelihood

ClusterProbability

PredictNodeId

IsDescendant

PredictProbability

IsInNode

PredictStdev

PredictAdjustedProbability

PredictSupport

PredictAssociation

PredictVariance

PredictHistogram

 

Pour obtenir la liste des fonctions communes à tous les algorithmes Microsoft, consultez Algorithmes d'exploration de données. Pour plus d'informations sur l'utilisation de ces fonctions, consultez Fonctions DMX (Data Mining Extensions).

L'algorithme Clusters Microsoft prend en charge l'utilisation du langage PMML (Predictive Model Markup Language) pour créer des modèles d'exploration de données.

L'algorithme Clusters Microsoft prend en charge plusieurs paramètres qui affectent les performances et la précision du modèle d'exploration de données résultant. Le tableau ci-dessous décrit chaque paramètre.

Paramètre Description

CLUSTERING_METHOD

Spécifie la méthode de clustering que doit utiliser l'algorithme. Les méthodes de clustering disponibles sont les suivantes : EM dimensionnable (1), EM non dimensionnable (2), K-Means dimensionnable (3) et K-Means non dimensionnable(4).

La valeur par défaut est 1.

CLUSTER_COUNT

Spécifie le nombre approximatif de clusters que l'algorithme doit générer. S'il est impossible de générer ce nombre approximatif de clusters à partir des données, l'algorithme génère autant de clusters que possible. Si CLUSTER_COUNT a la valeur 0, l'algorithme utilise des valeurs heuristiques pour déterminer de manière optimale le nombre de clusters à générer.

La valeur par défaut est 10.

CLUSTER_SEED

Spécifie la valeur de départ utilisée pour générer de façon aléatoire des clusters pour le stade initial de construction d'un modèle.

La valeur par défaut est 0.

MINIMUM_SUPPORT

Spécifie le nombre minimal de cas dans chaque cluster.

La valeur par défaut est 1.

MODELLING_CARDINALITY

Spécifie le nombre d'exemples de modèles générés pendant le processus de clustering.

La valeur par défaut est 10.

STOPPING_TOLERANCE

Spécifie la valeur utilisée pour déterminer quand une convergence est atteinte et quand l'algorithme a terminé la construction du modèle. La convergence est atteinte lorsque le changement global dans les probabilités de clusters est inférieur au rapport du paramètre STOPPING_TOLERANCE divisé par la taille du modèle.

La valeur par défaut est 10.

SAMPLE_SIZE

Spécifie le nombre de cas que l'algorithme utilise à chaque passage si l'une des méthodes de clustering dimensionnable est définie pour le paramètre CLUSTERING_METHOD. Si la valeur 0 est attribuée au paramètre SAMPLE_SIZE, le jeu de données complet est organisé en clusters en un seul passage. Cela risque de créer des problèmes de mémoire et de performances.

La valeur par défaut est 50000.

MAXIMUM_INPUT_ATTRIBUTES

Spécifie le nombre maximal d'attributs d'entrée que l'algorithme peut traiter avant d'appeler la sélection des fonctionnalités. La valeur 0 spécifie qu'il n'y a pas de nombre maximal d'attributs.

La valeur par défaut est 255.

MAXIMUM_STATES

Spécifie le nombre maximal d'états d'attribut que l'algorithme prend en charge. Si le nombre d'états d'un attribut est supérieur au nombre maximal d'états, l'algorithme emploie les états les plus utilisés de l'attribut et ignore les autres états.

La valeur par défaut est 100.

Voir aussi

Concepts

Algorithmes d'exploration de données
Assistant Exploration de données
Sélection des fonctionnalités pour l'exploration de données
Utilisation des outils d'exploration de données
Affichage d'un modèle d'exploration de données à l'aide de Microsoft Cluster Viewer

Autres ressources

CREATE MINING MODEL (DMX)

Aide et Informations

Assistance sur SQL Server 2005