Lorsque que nous observons le monde qui nous entoure, nous avons naturellement tendance à organiser, grouper, différencier et cataloguer ce que nous voyons afin d'essayer de mieux le comprendre. Ce type de processus de classement mental est essentiel à l'acquisition de connaissances et à la compréhension. De même, pour mieux connaître et comprendre vos données, vous pouvez utiliser l'outil Analyse des regroupements. Cet outil exécute une procédure de classification qui recherche des agrégats naturels dans vos données. Selon le nombre de groupes à créer, il recherche une solution dans laquelle toutes les entités de chaque groupe sont aussi similaires que possible, et où tous les groupes sont aussi différents que possible. La similarité des entités est établie en fonction d'un jeu d'attributs que vous spécifiez pour le paramètre Champs d'analyse et peut inclure (mais ce n'est pas obligatoire) des propriétés spatiales ou spatio-temporelles. Si des valeurs contraintes spatiales temporelles ou spatio-temporelles sont spécifiées, l'algorithme emploie un diagramme de connectivité (arbre couvrant de poids minimal) pour trouver les regroupements naturels. Lorsque la valeur NO_SPATIAL_CONSTRAINT est spécifiée, l'outil Analyse des regroupements utilise un algorithme des K-moyennes.
Alors que des centaines d'algorithmes d'analyse d'agrégats similaires existent, ils sont tous classés comme étant de difficulté NP. Par conséquent, la seule façon de garantir qu'une solution maximise parfaitement les similarités à l'intérieur des groupes et les différences entre les groupes est d'essayer toutes les combinaisons possibles des entités à regrouper. Cela peut être faisable avec quelques entités, mais le problème devient vite insoluble.
Il est non seulement impossible de garantir que vous avez trouvé une solution optimale, mais il est également irréaliste d'essayer d'identifier un algorithme de regroupement parfait pour tous les scénarios de données possibles. Les groupes ont des formes, des tailles et des densités différentes. Les données attributaires peuvent inclure une grande diversité de plages, symétrie, continuité et unités de mesure. Cela explique pourquoi un si grand nombre d'algorithmes d'analyse d'agrégats ont été développés ces 50 dernières années. Il est donc plus approprié de considérer l'outil Analyse des regroupements comme un outil exploratoire qui vous permet d'acquérir des connaissances supplémentaires sur les structures sous-jacentes de vos données.
Applications possibles
Voici des exemples de circonstances dans lesquelles cet outil peut être appliqué :
- Supposons que vous ayez des échantillons de salmonelle provenant des fermes de votre région et des attributs tels que le type/la classe, l'emplacement et la date/l'heure. Afin de mieux comprendre comment les bactéries sont transmises et propagées, vous pouvez utiliser l'outil Analyse des regroupements pour diviser les échantillons en "épidémies" distinctes. Il se peut que décidiez d'utiliser une contrainte spatio-temporelle, car les échantillons pour la même épidémie sont proches en termes d'espace et de temps et sont également associés au même type ou à la même classe de bactéries. Une fois que vous avez déterminé les groupes, vous pouvez utiliser d'autres outils d'analyse de modèles spatiaux, tels que Standard Deviational Ellipse (Ellipses d'écart type), Mean Center (Centre moyen) ou Near (Proche) pour analyser chaque épidémie.
- Si vous avez rassemblé des données sur les observations de présence d'animaux pour mieux comprendre leurs territoires, l'outil Analyse des regroupements peut être utile. Comprendre où et quand les saumons se rassemblent à différents stades de leur vie, par exemple, peut aider à concevoir des zones protégées afin de tenter d'optimiser leur reproduction.
- Imaginons que vous êtes un agronome et que vous voulez classer les différents types de sols de votre zone d'étude. L'exécution de l'outil Analyse des regroupements sur les caractéristiques du sol d'une série d'échantillons peut vous aider à identifier des agrégats de types de sols distincts et contigus.
- Le groupement de clients selon leur habitudes d'achat, leurs caractéristiques démographiques et leurs habitudes de déplacement peut vous permettre de concevoir une stratégie marketing efficace pour les produits de votre société.
- Les urbanistes doivent souvent diviser les villes en quartiers distincts pour décider de l'emplacement des équipements collectifs, promouvoir l'activisme local et la participation de la communauté. L'outil Analyse des regroupements, exécuté sur les caractéristiques physiques et démographiques des pâtés de maisons d'une ville, peut aider les urbanistes à identifier les zones de cette ville qui sont spatialement contiguës et dont les caractéristiques physiques et démographiques sont similaires.
- Le sophisme écologique est un problème connu pour l'inférence statistique chaque fois qu'une analyse est effectuée sur des données agrégées. Le schéma d'agrégation utilisé pour l'analyse n'a souvent aucun rapport avec ce que nous voulons analyser. Les données de recensement, par exemple, sont agrégées en fonction des distributions de population, ce qui n'est peut-être pas le meilleur choix pour analyser les feux de forêts. Afin de réduire le biais dû à l'agrégation et d'éviter le sophisme écologique, vous pouvez utiliser une méthode efficace qui consiste à diviser les plus petites unités d'agrégation possibles en régions homogènes pour un jeu d'attributs qui se rapportent exactement aux questions analytiques posées.
Entrée(s)
Cet outil accepte des Entités en entréesurfaciques, polylignes et ponctuelles, un champ d'ID unique, un chemin d'accès à la Classe d'entités en sortie, un ou plusieurs Champs d'analyse, une valeur d'entier représentant le Nombre de groupes à créer ainsi que, le cas échéant, le type de Contrainte spatiale à appliquer dans l'algorithme de regroupement. Il existe également plusieurs paramètres facultatifs, dont un qui vous permet de créer un Fichier de rapport en sortie au format PDF.
Champs d'analyse
Sélectionnez des champs numériques reflétant des systèmes de mesure de ratio, d'intervalle ou ordinaux. Alors que les données nominales peuvent être représentées à l'aide de variables (binaires) fictives, elles ne fonctionnent généralement pas aussi bien que les autres types de variables numériques. Par exemple, vous pouvez créer une variable appelée « Rural » et assigner à chaque entité (chaque secteur de recensement, par exemple) la valeur 1 s'il s'agit d'une zone principalement rurale, ou 0 si elle est principalement urbaine. La quantité ou la proportion de terrains agricoles associée à chaque entité est une meilleure représentation de cette variable si l'on veut l'utiliser avec l'outil Analyse de regroupements.
Sélectionnez des variables qui, à votre avis, permettront de distinguer les groupes d'entités les uns des autres. Supposons, par exemple, que vous souhaitiez regrouper les zones scolaires en fonction de résultats obtenus par des élèves à des tests de connaissance normalisés. Vous pourriez sélectionner des Champs d'analyse qui incluent des résultats globaux, des résultats pour des matières particulières comme les mathématiques ou la lecture, la proportion des élèves ayant atteint un seuil de résultat de test minimal, etc. Lorsque vous exécutez l'outil Analyse des regroupements, une valeur R2 est calculée pour chaque variable. Dans le récapitulatif ci-dessous, par exemple, les zones scolaires sont regroupées en fonction des résultats des tests des élèves, du pourcentage d'adultes dans la zone qui n'ont pas terminé leur scolarité, des dépenses par élève et du nombre moyen d'élèves par enseignant. Notez que la variable de résultats des tests TestScores a la valeur R2 la plus élevée. Cela indique que cette variable divise très efficacement les zones scolaires en groupes. La valeur R2 reflète dans quelle mesure la variation des données TestScores d'origine a été conservée après le regroupement. Par conséquent, plus la valeur R2 est élevée pour une variable donnée, mieux cette variable différencie les entités.
Nombre de groupes
Vous connaîtrez parfois le nombre de groupes le plus approprié à votre question ou votre problème. Si vous avez 5 directeurs commerciaux et si vous voulez leur affecter leur propre région contiguë, par exemple, spécifiez 5 comme valeur du paramètre Nombre de groupes. Dans de nombreux cas, cependant, vous ne disposez d'aucun critère vous permettant de sélectionner un nombre de groupes spécifique, mais vous voulez juste un nombre qui vous permette de distinguer les différences et similarités des entités. Dans ce cas, vous pouvez sélectionner le paramètre Evaluer le nombre optimal de groupes afin que l'outil Analyse des regroupements évalue l'efficacité de la division de vos entités en plusieurs groupes (de 2 à 15). L'efficacité du regroupement se mesure à l'aide de la pseudo-statistique F de Calinski et Harabasz, qui est un ratio reflétant les similarités intragroupes et la différence intergroupes :
Supposons que vous voulez créer quatre groupes spatialement contigus. Dans ce cas, l'outil crée un arbre couvrant de poids minimum qui reflète à la fois la structure spatiale de vos entités et leurs valeurs de champ d'analyse associées. L'outil détermine ensuite le meilleur emplacement où couper l'arbre afin de créer deux regroupements distincts. Il choisit ensuite celui des deux groupes obtenus à diviser afin d'obtenir la solution de trois groupes la plus appropriée. Un des deux groupes sera divisé, l'autre groupe demeure intact. Enfin, il détermine lequel des trois regroupements obtenus doit être divisé afin de fournir la solution de quatre groupes la plus appropriée. Pour chaque division, la meilleure solution est celle qui optimise à la fois la similarité intragroupes et la différence intergroupes. Un groupe ne peut plus être divisé (sauf arbitrairement) lorsque les valeurs de champ d'analyse de toutes les entités au sein de ce groupe sont identiques. Dans le cas où tous les groupes obtenus renferment des entités qui sont identiques, l'outil Analyse des regroupements arrête la création de nouveaux groupes, même s'il n'a pas encore atteint le nombre de groupes que vous avez spécifié. La division d'un groupe ne peut se fonder sur aucune base lorsque tous les champs d'analyse ont des valeurs identiques.
Contrainte spatiale
Si vous voulez que les groupes obtenus soient spatialement proches, spécifiez une contrainte spatiale. Les options CONTIGUITY sont activées pour les classes d'entités surfaciques et indiquent que les entités peuvent seulement faire partie du même groupe si elles partagent un tronçon (CONTIGUITY_EDGES_ONLY) ou si elles partagent soit un tronçon, soit un sommet (CONTIGUITY_EDGES_CORNERS) avec un autre membre du groupe. Les options de contiguïté des polygones ne sont cependant pas appropriées si votre jeu de données inclut des agrégats de polygones discontigus ou de polygones sans aucun voisin contigu.
Les options DELAUNAY_TRIANGULATION et K_NEAREST_NEIGHBORS conviennent aux entités ponctuelles et surfaciques. Ces options indiquent qu'une entité sera incluse dans un groupe si au moins un autre membre du groupe est un voisin naturel (Triangulation de Delaunay) ou l'un des K plus proches voisins. Si vous sélectionnez K_NEAREST_NEIGHBORS et spécifiez 12 comme valeur du paramètre Nombre de voisins, par exemple, chaque entité du groupe fera partie des 12 plus proches voisins d'au moins une autre entité du groupe.
N'utilisez pas l'option DELAUNAY_TRIANGULATION pour des jeux de données contenant des entités coïncidentes. En outre, puisque la méthode de triangulation de Delaunay convertit les entités en polygones de Thiessen pour déterminer les relations de voisinage, particulièrement dans le cas des entités surfaciques et parfois des entités périphériques de votre jeu de données, les résultats obtenus à l'aide de cette option peuvent ne pas être ceux auxquels vous vous attendiez. Dans l'illustration ci-dessous, notez que certains des polygones d'origine regroupés ne sont pas contigus. Cependant, une fois converties en polygones de Thiessen, toutes les entités regroupées partagent bien une limite.
Pour obtenir des groupes spatialement et temporellement proches, créez un fichier de matrice de pondérations spatiales (SWM) à l'aide de l'outil Générer la matrice de pondérations spatiales et sélectionnez SPACE_TIME_WINDOW comme valeur du paramètre Conceptualisation de relations spatiales. Vous pouvez alors spécifier le fichier SWM que vous avez créé à l'aide de l'outil Générer la matrice de pondérations spatiales comme valeur du paramètre Fichier de matrice de pondérations lorsque vous effectuez l'analyse des regroupements.
Pour de nombreuses analyses, l'imposition d'une contrainte spatiale ou spatio-temporelle n'est ni requise ni utile. Supposons, par exemple, que vous vouliez regrouper des infractions en fonction des attributs de leurs auteurs (taille, âge, gravité du crime, etc.). Alors que les crimes commis par la même personne tendent à être proximaux, il est peu probable que vous constatiez que tous les crimes commis dans une zone donnée sont le fait d'une même personne. Pour ce type d'analyse, vous devez sélectionner NO_SPATIAL_CONSTRAINT comme valeur du paramètre Contraintes spatiales. Vous pouvez cependant décider d'inclure des variables spatiales (proximité des banques, par exemple) dans votre liste de Champs d'analyse pour capturer certaines des caractéristiques spatiales des crimes que vous analysez.
Algorithme des K-moyennes
Lorsque vous sélectionnez NO_SPATIAL_CONSTRAINT comme valeur du paramètre Contraintes spatiales, un algorithme des K-moyennes est utilisé pour effectuer un regroupement. L'algorithme des K-moyennes permet de diviser les entités de façon à minimiser les différences entre les entités appartenant à un groupe, sur l'ensemble des groupes. Cet algorithme étant de difficulté NP, une heuristique gloutonne est utilisée pour regrouper les entités. L'algorithme glouton convergera toujours vers un minimum local mais ne trouvera pas toujours le minimum global (optimal).
L'algorithme des K-moyennes commence par identifier les entités initiales utilisées pour créer chaque groupe. Le nombre d'entités initiales est donc toujours égal au Nombre de groupes. La première entité initiale est sélectionnée de façon aléatoire. Même si la sélection des autres entités initiales utilise un composant aléatoire, elle applique une pondération qui favorise la sélection des entités initiales suivantes les plus éloignées, dans l'espace de données, du jeu d'entités initiales existant (cette partie de l'algorithme s'appelle "K-moyennes ++"). En raison du caractère aléatoire de la recherche des entités initiales lorsque vous sélectionnez l'option FIND_SEED_LOCATIONS ou USE_RANDOM_SEEDS pour le paramètre Méthode d'initialisation, il se peut que vous obteniez des variations dans les résultats de regroupement à chaque exécution de l'outil.
Une fois que les entités initiales sont identifiées, toutes les entités sont affectées à l'entité initiale la plus proche (dans l'espace de données). Pour chaque agrégat d'entités, le centre moyen des données est calculé et chaque entité est réaffectée au centre le plus proche. Le processus de calcul du centre moyen des données pour chaque groupe puis d'affectation des entités au centre moyen le plus proche continue jusqu'à ce que les effectifs de chaque groupe se stabilisent (jusqu'à 100 itérations au maximum).
Arbre couvrant de poids minimal
Si vous spécifiez une contrainte spatiale pour limiter l'appartenance au groupe aux entités contiguës ou proximales, l'outil construit d'abord un diagramme de connectivité représentant les relations de voisinage entre les entités. A partir du diagramme de connectivité, un arbre couvrant de poids minimal est créé afin de récapituler les relations spatiales des entités et la similarité des données des entités. Les entités deviennent des nœuds de l'arbre couvrant de poids minimum reliés par des segments pondérés. La pondération de chaque segment est proportionnelle à la similarité des objets qu'il connecte. Une fois l'arbre couvrant de poids minimum créé, une branche (un segment) de l'arbre est coupée, créant ainsi deux arbres couvrants de poids minimum. Le segment à couper est sélectionné de façon à minimiser les dissemblances dans les groupes résultants, tout en évitant (si possible) les singletons (groupes à une seule entité). A chaque itération, un des arbres couvrants de poids minimal est divisé par ce processus d'élagage, jusqu'à ce que le Nombre de groupes spécifié soit atteint. La méthode publiée employée s'appelle "SKATER" ("K"luster Analysis by Tree Edge Removal). Alors que la branche qui optimise la similarité des groupes est sélectionnée pour élagage à chaque itération, il n'est pas possible de garantir un résultat final optimal.
Sorties
L'outil Analyse des regroupements produit plusieurs sorties. Vous pouvez accéder à ces dernières (ainsi qu'au fichier PDF de rapport facultatif) par l'intermédiaire de la fenêtre Résultats. Si vous désactivez le traitement en arrière-plan, les résultats apparaissent également dans la boîte de dialogue Progression. Les messages ci-dessous récapitulent les informations présentées dans le rapport PDF facultatif (décrit ci-après).
La sortie par défaut de l'outil Analyse des regroupements est une nouvelle Classe d'entités en sortie contenant les champs utilisés dans l'analyse, ainsi qu'un nouveau champ d'entier nommé SS_GROUP permettant d'identifier le groupe auquel chaque entité appartient. Cette classe d'entités en sortie est ajoutée à la table des matières et un rendu unique de combinaison de couleurs est appliqué au champ SS_GROUP. Le rendu évidé indique des entités qui n'ont pas pu être ajoutées à un groupe, en général parce qu'elles n'ont pas d'entités voisines. Si vous spécifiez NO_SPATIAL_CONSTRAINT comme valeur du paramètre Contraintes spatiales, un champ supplémentaire SS_SEED est ajouté à la classe d'entités en sortie pour indiquer quelles entités initiales ont été utilisées pour créer des groupes.
Fichier de rapport de l'outil Analyse des regroupements
Si vous spécifiez un chemin pour le paramètre Fichier de rapport en sortie, un fichier PDF récapitulant les groupes créés est produit. Le rapport inclut des boîtes à moustaches. Le premier élément du rapport est donc un diagramme expliquant comment les interpréter (voir ci-dessous). Les boîtes à moustaches du rapport généré par l'outil Analyse des regroupements contiennent 9 valeurs récapitulatives pour chaque champ et groupe d'analyse : valeur minimale des données, quartile inférieur, médiane, quartile supérieur, valeur maximale des données, points aberrants des données (valeurs inférieures ou supérieures à 1,5 fois l'écart interquartile), minimum du groupe, moyenne du groupe et maximum du groupe. Tout signe + situé en dehors de la moustache supérieure ou inférieure représente des points de données aberrants.
La première page du rapport compare les variables (Champs d'analyse) de chaque groupe entre elles. Dans le rapport ci-dessous, par exemple, l'outil Analyse des regroupements a été exécuté sur les secteurs de recensement pour créer quatre groupes. Les résumés statistiques de chaque groupe sont imprimés à l'aide de couleurs différentes (bleu, rouge, vert et orange). Le premier résumé statistique est imprimé en noir car il s'agit des valeurs globales de moyenne, d'écart type, de minimum, maximum et R2 pour toutes les données de chaque champ d'analyse. Plus la valeur R2 d'une variable est élevée, mieux cette variable différencie les entités. Après les récapitulatifs globaux, les valeurs Moyenne, Ecart type, Minimum, Maximum et Partager sont indiquées pour chacune des variables de chaque groupe. Dans le rapport ci-dessous, par exemple, vous constatez que le groupe 1 (bleu) contient 52 pour cent des valeurs de la variable globale AGE_UNDER5 ; la plage globale des valeurs s'étend de 0 à 1 453 enfants de moins de 5 ans, et le groupe bleu contient des secteurs ayant de 488 à 1 246 enfants de moins de 5 ans. Le nombre moyen d'enfants de moins de 5 ans pour les secteurs du groupe bleu est 805,3750. La boîte à moustaches à droite du résumé statistique du groupe bleu indique les relations entre les valeurs du groupe et les valeurs globales pour le même champ d'analyse. Notez que le point bleu sur la boîte à moustaches est situé à l'extérieur du quartile supérieur et que la première ligne verticale bleue (représentant la valeur minimale des secteurs du groupe bleu) se trouve au-dessus de la moyenne globale de ce champ. En fait, si vous observez l'emplacement de tous les points bleus dans les boîtes à moustaches pour toutes les variables, vous verrez que, sauf dans le cas de la variable MEDIANRENT, les valeurs moyennes dans tous les champs d'analyse se trouvent au-dessus du quartile supérieur. Ce groupe comprend la plage de valeurs la plus élevée de tous les groupes.
La deuxième section du rapport compare les plages de variables de chaque groupe, un champ d'analyse (variable) à la fois. Avec cette vue des données, il est facile de voir quel groupe a la plage de valeurs la plus élevée et la plus basse pour chaque variable. Les valeurs minimum, moyenne et maximum du groupe sont superposées sur la boîte à moustaches indiquant toutes les valeurs. Notez que le groupe 4 (orange) a les valeurs les plus faibles pour la variable MEDIANRENT. Les valeurs minimum, moyenne et maximum de ce groupe sont inférieures à celles de tous les autres groupes.
La boîte à moustaches parallèle récapitule les groupes et les variables qu'ils contiennent. Dans le diagramme ci-dessous, notez que le groupe 1 (en bleu) représente les secteurs avec des loyers moyens, le plus grand nombre de foyers avec des enfants dont le chef de famille est une femme (FHH_CHILD), le plus grand nombre d'habitations (HSE_UNITS) et le plus d'enfants de moins de 5 ans. Le groupe 2 (en rouge) représente les secteurs avec les loyers moyens les plus élevés, le moins de foyers avec des enfants dont le chef de famille est une femme, un nombre d'habitations supérieur à la moyenne (mais inférieur aux secteurs des groupes 1 et 3) et le moins d'enfants de moins de 5 ans.
Lorsque vous sélectionnez le paramètre Evaluer le nombre optimal de groupes, le fichier PDF du rapport inclut un diagramme représentant les valeurs des statistiques pseudo-F. Le point entouré d'un cercle sur le diagramme est la statistique F la plus élevée, indiquant combien de groupes seront les plus aptes à distinguer les entités et les variables que vous avez spécifiées. Dans le diagramme ci-dessous, la statistique F associée à quatre groupes est la plus élevée. Cinq groupes, avec une statistique pseudo-F élevée, conviendraient également.
Meilleures pratiques
Alors que l'on a tendance a vouloir inclure autant de Champs d'analyse que possible, dans le cas de l'outil Analyse des regroupements, mieux vaut commencer avec une seule variable puis en ajouter. Les résultats sont beaucoup plus faciles à interpréter avec moins de champs d'analyse. Il est également plus simple de déterminer quelles variables sont les meilleurs discriminants lorsque les champs sont peu nombreux.
Dans de nombreux cas, vous exécuterez plusieurs fois l'outil Analyse des regroupements afin de rechercher le Nombre de groupes optimal, les Contraintes spatiales les plus efficaces, ainsi que la combinaison de Champs d'analyse permettant le mieux de diviser vos entités en groupes. La création du Rapport en sortie pouvant sensiblement augmenter la durée de traitement, vous ne voudrez probablement pas créer ce rapport alors que vous testez différents paramètres en entrée.
Ressources supplémentaires :
Duque, J. C., R. Ramos, and J. Surinach. 2007. "Supervised Regionalization Methods: A Survey" dans International Regional Science Review 30: 195–220.
Assuncao, R. M., M. C. Neves, G. Camara, and C. Da Costa Freitas. 2006. "Efficient Regionalisation Techniques for Socio-economic Geographical Units using Minimum Spanning Trees" dans International Journal of Geographical Information Science 20 (7): 797–811.
Jain, A. K. 2009. "Data Clustering: 50 years beyond K-Means." Pattern Recognition Letters.
Hinde, A., T. Whiteway, R. Ruddick, and A. D. Heap. 2007. "Seascapes of the Australian Margin and adjacent sea floor: Keystroke Methodology." dans Geoscience Australia, Record 2007/10, 58pp.