Mise en cluster des données

Concept Information

Commande CLUSTER

La mise en cluster regroupe les enregistrements dans une table selon des valeurs similaires dans un ou plusieurs champs clés numériques. Des valeurs similaires sont des valeurs qui sont proches ou proches les unes des autres dans le contexte de l'ensemble du jeu de données. Ces valeurs similaires représentent des clusters qui, une fois identifiés, révèlent des tendances dans les données.

Remarque

Si vous souhaitez faire de la mise en cluster un élément régulier de votre programme d'analyse, nous vous recommandons de suivre le cours de DiligentAcademy Rechercher des groupes de données à l'aide de la commande CLUSTER dans Analytics (ACL 361) (connexion du client requise).DiligentAcademy

En quoi la mise en cluster diffère-t-elle des autres commandes de regroupement Analytics ?

La mise en cluster diffère des autres commandes de regroupement Analytics dû aux éléments suivants :

  • La mise en cluster ne nécessite pas de regroupement sur des catégories de données préexistantes telles que le type de transaction ou le code de catégorie commerçant, ou sur des strates prédéfinies ayant des limites numériques strictes. Au lieu de cela, la mise en cluster regroupe des données basées sur des valeurs numériques similaires à l'intérieur des données elles-mêmes, c'est-à-dire des valeurs proches les unes des autres.
  • La mise en cluster basée sur plusieurs champs produit des résultats qui ne sont pas imbriqués (non hiérarchiques).

Choix des champs sur lesquels porte la mise en cluster

La mise en cluster des données vous permet de découvrir des regroupements organiques dans des données dont vous ne connaitriez peut-être pas l'existence sinon. En particulier, les clusters basés sur plusieurs champs numériques (clusters multidimensionnels) seraient difficiles à identifier sans l'aide du machine learning. En ce sens, la mise en clusters est exploratoire et constitue un exemple de machine learning non supervisé.

Toutefois, pour que les clusters de sortie soient significatifs, il doit exister une relation significative entre les champs que vous sélectionnez pour la mise en cluster.

Cluster sur un seul champ

La mise en cluster sur un seul champ numérique est relativement simple. Vous vous concentrez sur un ensemble unique de valeurs et la mise en cluster regroupe les valeurs en fonction de la proximité entre chacune des valeurs. Par exemple, vous pouvez mettre en cluster un champ Montant pour savoir où les montants sont concentrés sur la plage de valeurs.

L'avantage de la mise en cluster par rapport à une approche traditionnelle comme la stratification, c'est que vous n'avez pas à faire d'hypothèses, à l'avance, sur l'endroit où les concentrations peuvent exister ni à créer des limites numériques arbitraires. La mise en cluster permet de découvrir où se situent les limites d'un nombre donné de clusters.

Cluster sur plusieurs champs

Lorsque vous mettez en clusters sur deux champs ou plus, vous devez vous demander comment les champs peuvent être reliés. Vous pourriez utiliser la mise en cluster pour tester une hypothèse. Par exemple, une entreprise s'inquiète peut-être de son taux de rotation du personnel qui, selon la direction, est concentré parmi les employés plus jeunes et moins bien rémunérés.

Vous pourriez utiliser la mise en cluster pour découvrir s'il existe une relation forte entre ces éléments :

  • la durée de rétention des employés et l'âge des employés (cluster bidimensionnel)
  • la durée de rétention des employés, l'âge et le salaire des employés (cluster tridimensionnel)

Remarque

Pour cette analyse, vous devez éviter d'inclure des champs qui ne se rapportent pas clairement à l'hypothèse, comme le nombre de jours d'arrêt maladie pris.

Évaluation des clusters de sortie

L'algorithme de mise en cluster produira toujours un tableau avec le nombre spécifié de clusters. Chaque enregistrement de la table de sortie se trouvera dans un cluster.

À ce stade, vous devez évaluer si l'un ou l'autre de ces clusters a une importance ou une signification analytique. Ce n'est pas parce que l'algorithme regroupe les enregistrements dans un cluster que le regroupement est significatif. Vous devez vous demander si les clusters forment un modèle significatif. Racontent-ils une histoire ?

Astuce

La représentation graphique de la table de sortie du cluster sous la forme d'un graphique en nuage de points dans un outil de génération de rapports, avec une couleur différente pour chaque cluster, est le moyen le plus simple d'évaluer rapidement la nature globale des clusters de sortie.

Les caractéristiques suivantes peuvent vous aider à évaluer l'importance des groupes de sortie :

  • Cohérence des clusters Les valeurs individuelles d'un cluster sont-elles toutes relativement proches du centroïde ou le cluster est-il quelque peu diffus ? Plus un cluster est cohérent, plus la relation entre les valeurs qui le composent est forte.
  • Taille des clusters La majorité des valeurs sont-elles contenues dans une ou deux grands clusters ? Si c'est le cas, le jeu de données est significativement biaisé, par opposition à un jeu de données dont les valeurs sont réparties de manière relativement égale entre plusieurs clusters.
  • Valeurs aberrantes Considérez les valeurs qui résistent à l'inclusion dans l'un des clusters importants. Ces valeurs aberrantes peuvent représenter des éléments qui méritent un examen plus approfondi. Tenez également compte des « valeurs aberrantes internes », c'est-à-dire des valeurs qui sont incluses dans un cluster important, mais à l'extrémité extérieure de ce cluster.

Remarque

Toutes les caractéristiques ci-dessus sont des méthodes humaines ou subjectives d'évaluation des clusters. Il existe diverses méthodes mathématiques d'évaluation des clusters, mais elles dépassent le cadre de l'Aide Analytics.

Fonctionnement de l'algorithme de mise en cluster

Dans Analytics, la mise en cluster utilise l'algorithme de partitionnement de k-moyennes, qui est un algorithme de machine learning répandu. Vous pouvez trouver des descriptions détaillées du partitionnement en k-moyennes sur Internet.

Un résumé de l'algorithme est présenté ci-dessous.

Choix du nombre de clusters (valeur K)

Déterminer le nombre optimal de clusters à utiliser lors de la mise en cluster des données peut nécessiter des tests et des expériences pratiques. Pour un jeu de données donné, il n'y a pas de réponse exacte.

Puis-je effectuer un cluster sur des champs de caractères ou DateHeure ?

En règle générale, vous ne pouvez pas former de cluster sur des champs caractère ou DateHeure. L'algorithme de mise en cluster n'accepte que les nombres, et il effectue des calculs avec les nombres (distance euclidienne, moyenne).

Étapes

Remarque

Si les options du menu machine learning sont désactivées, c'est probablement parce que le moteur Python n'est pas installé. Pour plus d'informations, consultez la section Installer ACL pour Windows.

Spécifier les paramètres de l'algorithme de mise en cluster

  1. Ouvrez la table contenant les données que vous souhaitez mettre en cluster.

  2. Dans le menu principal Analytics, sélectionnez Machine learning > Cluster.Analytics

  3. Dans Nombre de clusters (valeur K), spécifiez le nombre de clusters à utiliser pour regrouper les données.

  4. Dans Nombre maximum d'itérations, spécifiez une limite supérieure pour le nombre d'itérations effectuées par l'algorithme de mise en cluster.

  5. Dans Nombre d'initialisations, spécifiez le nombre de fois que vous souhaitez générer un ensemble initial de centroïdes aléatoires.

  6. Facultatif. Sélectionnez Valeur de départ, puis saisissez un nombre.

Spécifier une méthode de prétraitement des données

Si vous regroupez plusieurs champs clés, vous devez utiliser la fonction Prétraitement pour normaliser l'échelle des champs avant de les utiliser pour la mise en cluster.

L'échelle et les unités des différents champs numériques varient souvent. Par exemple, un champ salaire contenant des dollars par an pourrait aller de 20 000 à 100 000, tandis qu'un champ âge contenant des années pourrait aller de 18 à 70. Si vous mettez en cluster à l’aide des champs salaire et âge, sans mise à l'échelle, les groupes de résultats seront essentiellement des groupes de salaires, faussés par la taille des chiffres des salaires par rapport aux chiffres des âges, plutôt que des groupes de salaires/âges.

Le prétraitement fournit les méthodes expliquées ci-dessous pour mettre à l'échelle toutes les valeurs dans tous les champs clés du cluster afin qu'elles soient pondérées de manière égale pendant le processus de mise en cluster.

Option de pré-traitement Description
Standardiser

Les valeurs des champs clés sont centrées sur une moyenne de zéro (0) et mises à l'échelle, processus qui convertit les valeurs en leur équivalent en variable centrée réduite (score standard).

La variable centrée réduite est une mesure du nombre d'écarts-types qui séparent une valeur brute de la moyenne brute pour chaque champ. Dans le champ à l'échelle, la moyenne est représentée par zéro (0) et les variables centrées réduites sont positives ou négatives selon que les valeurs brutes qu'elles représentent sont supérieures ou inférieures à la moyenne brute du champ.

Remarque

Utilisez cette option si les champs clés contiennent principalement des valeurs non nulles (« matrices denses »).

Mettre à l'échelle de l'écart en unité

Les valeurs des champs clés sont mises à l'échelle en étant divisées par leur écart-type, mais elles ne sont pas centrées sur une moyenne de zéro (0).

Remarque

Utilisez cette option si un ou plusieurs champs clés contiennent un grand nombre de valeurs zéro (0) (« matrices éparses »).

Aucun Les valeurs des champs clés ne sont pas centrées ou mises à l'échelle. La mise en cluster utilise les valeurs brutes, non centrées et non mises à l’échelle, pour le calcul des clusters.

Sélectionner les champs

  1. Dans la liste Cluster sur, sélectionnez un ou plusieurs champs clés à utiliser pour mettre en cluster les enregistrements dans la table.

    Les champs clés doivent être de type numérique

  2. Facultatif. Dans la liste Autres champs, sélectionnez un ou plusieurs champs à inclure dans la table de sortie.

Astuce

Vous pouvez appuyer sur Ctrl tout en cliquant pour sélectionner plusieurs champs non adjacents et sur Maj tout en cliquant pour sélectionner plusieurs champs adjacents.

Finaliser les entrées des commandes

  1. Si vous souhaitez exclure du traitement certains enregistrements de la vue en cours, saisissez une condition dans la zone de texte Si, ou cliquez sur Si pour créer une instruction IF à l'aide du Générateur d'expression.

    Remarque

    La condition Si est évaluée uniquement par rapport aux enregistrements restant dans une table après application des options relevant du champ d'application (Premiers, Suivants, Tant que).

    L'instruction IF prend en compte tous les enregistrements de la vue et exclue ceux qui ne correspondent pas à la condition spécifiée.

  2. Dans la zone de texte À, indiquez le nom de la table de sortie.

    Remarque

    La longueur des noms des tables Analytics est limitée à 64 caractères alphanumériques, sans l’extension .FIL. Le nom peut inclure le caractère de soulignement ( _ ), mais aucun autre caractère spécial ni espace. Le nom ne peut pas commencer par un chiffre.

  3. Facultatif. Sur l'onglet Plus :
    1. Pour indiquer que seul un sous-ensemble d'enregistrements est traité, sélectionnez une des options dans le panneau Étendue.
    2. Sélectionnez Utiliser la table de sortie pour que la table de sortie s'ouvre automatiquement.
  4. Cliquez sur OK.