dimanche 23 octobre 2016

Clustering : la méthode TwoStep Cluster

Au gré de mes pérégrinations sur le web, mon attention a été attirée par l’algorithme de classification automatique (clustering, apprentissage non supervisé) TwoStep Cluster décrit sur le site de SPSS. Il présente des caractéristiques très intéressantes de prime abord : il sait traiter les variables actives quantitatives et qualitatives, il peut appréhender des très grandes bases de données avec des temps de traitements ébouriffants, il sait détecter automatiquement le nombre adéquat de classes. La méthode répond à bien des préoccupations pratiques des data scientist dans ce type de démarche. Pourtant, très étrangement, elle est peu connue, et il n’existe pas de package pour R ou pour Python qui ait essayé de l’implémenter.

En y regardant de plus près, je me suis rendu compte qu’il s’agissait d’une approche mixte (ou approche combinée) (Lebart et al., 1995 ; section 2.3) popularisée par le logiciel SPAD. Dans une première étape, des pre-clusters sont construits à l'aide d'un algorithme de partitionnement rapide. Dans une deuxième étape, ces pre-clusters sont fusionnés itérativement à l'aide d'un algorithme hiérarchique.

En réalité, la vraie originalité de la solution SPSS réside dans la stratégie de détection des classes dans la structure hiérarchique. Ce tutoriel s’attachera surtout dans un premier temps à décrypter le mécanisme d’identification du nombre "optimal" de classes. Dans un second temps, nous comparerons sur une base de taille relativement importante l’efficacité (identification du bon nombre de classes) et les temps de calcul de l’algorithme par rapport à des implémentations classiques de l’approche mixte combinant méthode des centres mobiles et classification ascendante hiérarchique, sous SPAD, Tanagra et R.

Mots clés : clustering, classification automatique, typologie, apprentissage non-supervisé, CAH, k-means, birch, ACP, classification sur facteurs, logiciel R, kmeans, hclust, bic, aic
Composants : K-MEANS, HAC
Document : TwoStep Cluster
Données : Données et programme R
Références :
IBM SPSS, "TwoStep Cluster Analysis", version 21.0.0.
Tutoriel Tanagra, "Traitement des gros volumes - CAH Mixte", octobre 2008.
L. Lebart, A. Morineau, M. Piron, « Statistique Exploratoire Multidimensionnelle », Dunod, 1995.