Mise en cluster des données
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.
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 valeurs exactes ou des couches prédéfinies avec des limites numériques dures. Au lieu de cela, la mise en cluster regroupe des données basées sur des valeurs numériques similaires, c'est-à-dire des valeurs proches les unes des autres.
- La mise en cluster ne nécessite pas de catégories de données préexistantes.
- La mise en cluster basée sur plusieurs champs produit des résultats qui ne sont pas imbriqués (non hiérarchiques).
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.
L'algorithme de partitionnement en k-moyennes utilise un processus itératif pour optimiser les clusters :
1 | Précisez le nombre de clusters |
|
---|---|---|
2 | Initialiser les centroïdes du cluster |
|
3 | Affecter chaque point de données au centroïde le plus proche |
|
4 | Recalculer les centroïdes |
|
5 | Itérer |
|
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.
Instructions à suivre pour déterminer le nombre optimal de clusters :
- Familiarisez-vous avec les données Familiarisez-vous avec le jeu de données au préalable pour avoir une idée générale du profil des données et de toutes les concentrations évidentes de valeurs.
- Au départ, voyez grand Au départ, choisissez un nombre relativement élevé de clusters, de 8 à 10.
- Essayez un nombre différent de clusters Effectuez la mise en cluster plusieurs fois, en spécifiant une valeur K différente à chaque fois. Un examen des résultats de sortie peut vous aider à déterminer si vous avez besoin de plus ou de moins de clusters.
- Méthode Elbow Utilisez la méthode Elbow, qui compare les distances internes des valeurs dans les clusters générés pour différentes valeurs de K.
Vous pouvez tracer les résultats de la méthode Elbow pour identifier « le coude », ou le point d'inflexion, où l'augmentation du nombre de clusters ne réduit pas significativement les distances internes des valeurs dans les clusters. Un script de la méthode Elbow peut être rédigé dans Analytics.
Choix des champs sur lesquels porte la mise en cluster
La mise en cluster vous permet de découvrir des regroupements organiques dans des données dont vous ne connaissez peut-être pas l'existence. Vous êtes libre de créer des clusters basés sur plusieurs champs numériques. En ce sens, la mise en clusters est exploratoire et constitue un exemple de Machine Learning non supervisé.
Toutefois, pour comprendre les clusters de sortie, vous devez comprendre la relation 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 disposez d'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)
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.
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).
Données de type caractère catégoriques
Vous pouvez disposer de données de caractères catégoriques, telles que les ID d'emplacement, sous la forme de chiffres. Vous pouvez aussi utiliser un champ calculé pour mapper les catégories de caractères à un ensemble de codes numériques que vous créez. Vous pouvez convertir ces données en type de données numériques et les utiliser pour la mise en cluster. Cependant, les clusters créés ne seraient pas valides parce que vous feriez des calculs mathématiques sur des nombres qui sont représentatifs de quelque chose de non numérique.
Par exemple, le calcul d'une position centroïdale basée sur la moyenne d'une liste d'ID d'emplacement donne un nombre vide de sens. Le calcul est basé sur l'hypothèse non valide que la distance mathématique entre les numéros d'emplacement équivaut à une distance mesurable dans le monde réel.
Si l'on considère la distance physique, dire que la distance entre le point 1 et le point 9 est deux fois plus grande que la distance entre le point 1 et le point 5 n'a aucun sens. Les emplacements 1 et 9 pourraient être l'un à côté de l'autre, et l'emplacement 5 pourrait être à des kilomètres de distance.
Dans le cas d'une analyse en cluster portant sur l'emplacement et la distance physique, les données valides à utiliser seraient les coordonnées géographiques.
Données catégoriques qui représentent une échelle
Vous pourriez mettre en cluster des données catégoriques qui représentent une échelle - par exemple, une échelle d'évaluation allant de Faible à Excellent, dont les codes numériques correspondants iraient de 1 à 5. Dans ce cas, une moyenne des codes numériques a du sens.
Données DateHeure
Vous pouvez utiliser les fonctions Analytics pour convertir les données DateHeure en données numériques. Toutefois, les données numériques qui en résultent ne sont pas continues, ce qui pose des problèmes pour l'analyse en cluster, qui suppose des ensembles continus de nombres.
Par exemple, les trois nombres suivants, en tant que dates, sont tous espacés d'un jour. Cependant, en tant que nombres, il y a un écart considérable, ou distance, entre le premier et le deuxième chiffre.
- 20181130
- 20181201
- 20181202
Vous pouvez utiliser les valeurs de dates sérielles dans l'analyse de cluster. Les dates sérielles sont un ensemble continu d'entiers représentant le nombre de jours qui se sont écoulés depuis le 1er janvier 1900.
É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.
Deux caractéristiques que vous pouvez évaluer sont la cohérence et la taille des grappes.
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 création de rapports, avec une couleur différente pour chaque cluster, est le moyen le plus simple d'évaluer rapidement la nature des clusters de sortie.
Étapes
Spécifier les paramètres de l'algorithme de mise en cluster
- Ouvrez la table contenant les données que vous souhaitez mettre en cluster.
- Dans le menu principal Analytics, sélectionnez Machine Learning > Cluster.
- Dans Nombre de clusters (valeur K), spécifiez le nombre de clusters à utiliser pour regrouper les données.
- 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.
- Dans Nombre d'initialisations, spécifiez le nombre de fois que vous souhaitez générer un ensemble initial de centroïdes aléatoires.
- Facultatif. Sélectionnez Valeur de départ, puis saisissez un nombre.
Spécifier une méthode de prétraitement des données
Dans la liste déroulante Prétraitement, sélectionnez la méthode de prétraitement des données avant de les mettre en cluster :
Standardiser | Centrer les valeurs des champs clés autour de zéro (0) et les mettre à l'échelle en fonction de l'écart en unité lors du calcul des clusters |
---|---|
Mettre à l'échelle de l'écart en unité | Mettre à l'échelle les valeurs des champs clés en fonction de l'écart en unité lors du calcul des clusters, mais ne pas centrer les valeurs autour de zéro (0) |
Aucun | Utiliser les valeurs brutes des champs clés, non mises à l'échelle, lors du calcul des clusters |
Sélectionner les champs
- 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
- 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
-
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 (Premier, Suivant, 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.
- Dans la zone de texte À, indiquez le nom de la table de sortie.
- Facultatif. Sur l'onglet Plus :
- Pour indiquer que seul un sous-ensemble d'enregistrements est traité, sélectionnez une des options dans le panneau Étendue.
- Sélectionnez Utiliser la table de sortie pour que la table de sortie s'ouvre automatiquement.
- Cliquez sur OK.