
Le clustering est une partie importante du pipeline d'apprentissage automatique pour rĂ©soudre les problĂšmes scientifiques et commerciaux. Il aide Ă identifier des ensembles de points Ă©troitement liĂ©s (une certaine mesure de distance) dans le nuage de donnĂ©es qui pourraient ĂȘtre difficiles Ă dĂ©terminer par d'autres moyens.
Cependant, le processus de clustering concerne pour la plupart le domaine de
l'apprentissage automatique sans enseignant , qui se caractérise par un certain nombre de difficultés. Il n'y a pas de réponses ou de conseils sur la façon d'optimiser le processus ou d'évaluer le succÚs de la formation. C'est un territoire inexploré.
Par conséquent, il n'est pas surprenant que la méthode populaire de
regroupement par la méthode k-average ne réponde pas complÚtement à notre question:
«Comment dĂ©couvrons-nous d'abord le nombre de clusters?» Cette question est extrĂȘmement importante, car le clustering prĂ©cĂšde souvent le traitement ultĂ©rieur des clusters individuels, et la quantitĂ© de ressources informatiques peut dĂ©pendre de l'Ă©valuation de leur nombre.
Les pires conséquences peuvent survenir dans le domaine de l'analyse commerciale. Ici, le clustering est utilisé pour la segmentation du marché, et il est possible que le personnel marketing soit affecté en fonction du nombre de clusters. Par conséquent, une estimation erronée de ce montant peut conduire à une allocation non optimale de ressources précieuses.
Méthode du coude
Lors du regroupement à l'aide de la méthode k-means, le nombre de regroupements est le plus souvent estimé à l'aide de la
«méthode du coude» . Cela implique une exécution cyclique multiple de l'algorithme avec une augmentation du nombre de clusters sélectionnables, ainsi qu'un report ultérieur du score de clustering sur le graphique, calculé en fonction du nombre de clusters.
Quel est ce score, ou métrique, qui est retardé sur le graphique? Pourquoi est-elle appelée la méthode du
coude ?
Un graphique typique ressemble Ă ceci:

Le score, en rÚgle générale, est une mesure des données d'entrée pour la fonction objective des k-moyennes, c'est-à -dire une certaine forme du rapport de la distance intracluster à la distance intercluster.
Par exemple, cette méthode de notation est immédiatement disponible dans
l'outil de notation k-means de Scikit-learn.
Mais jetez un autre regard sur ce graphique. Ăa fait quelque chose d'Ă©trange. Quel est le nombre optimal de clusters que nous avons, 4, 5 ou 6?
Ce n'est pas clair, n'est-ce pas?
La silhouette est une meilleure métrique
Le coefficient de silhouette est calculé en utilisant la distance intracluster moyenne (a) et la distance moyenne au cluster (b) le plus proche pour chaque échantillon. La silhouette est calculée comme
(b - a) / max(a, b)
. Je m'explique:
b
est la distance entre
a
et le cluster le plus proche auquel
a
n'appartient pas. Vous pouvez calculer la valeur de silhouette moyenne pour tous les échantillons et l'utiliser comme métrique pour estimer le nombre de grappes.
Voici une vidéo expliquant cette idée:
Supposons que nous ayons généré des données aléatoires en utilisant la fonction make_blob de Scikit-learn. Les données sont réparties en quatre dimensions et autour de cinq centres de grappes. L'essence du problÚme est que les données sont générées autour de cinq centres de cluster. Cependant, l'algorithme k-means ne le sait pas.
Les grappes peuvent ĂȘtre affichĂ©es sur le graphique comme suit (signes par paires):

Ensuite, nous exécutons l'algorithme k-means avec des valeurs de
k = 2 Ă
k = 12, puis nous calculons la métrique par défaut de k-means et la valeur de silhouette moyenne pour chaque analyse, avec les résultats affichés dans deux graphiques adjacents.

La diffĂ©rence est Ă©vidente. La valeur moyenne de la silhouette augmente Ă
k = 5, puis diminue fortement pour des valeurs plus élevées de
k . Autrement dit, nous obtenons un pic prononcĂ© Ă
k = 5, c'est le nombre de clusters générés dans l'ensemble de données d'origine.
Le graphique de la silhouette a un caractÚre de pointe, contrairement au graphique légÚrement incurvé lors de l'utilisation de la méthode du coude. Il est plus facile de visualiser et de justifier.
Si vous augmentez le bruit gaussien pendant la génération des données, les clusters se chevaucheront plus fortement.

Dans ce cas, le calcul des k-moyennes par dĂ©faut en utilisant la mĂ©thode du coude donne un rĂ©sultat encore plus incertain. Voici un graphique de la mĂ©thode du coude, oĂč il est difficile de choisir un point appropriĂ© auquel la ligne se plie rĂ©ellement. Est-ce 4, 5, 6 ou 7?

Dans le mĂȘme temps, le graphique de silhouette montre toujours un pic dans la rĂ©gion de 4 ou 5 centres de cluster, ce qui facilite grandement notre vie.
Si vous regardez les clusters qui se chevauchent, vous verrez que, malgrĂ© le fait que nous ayons gĂ©nĂ©rĂ© des donnĂ©es autour de 5 centres, en raison de la forte dispersion, seuls 4 clusters peuvent ĂȘtre structurellement distinguĂ©s. La silhouette rĂ©vĂšle facilement ce comportement et montre le nombre optimal de clusters entre 4 et 5.

Score BIC avec un modĂšle de mix de distribution normal
Il existe d'autres excellentes mesures pour déterminer le nombre réel de clusters, comme le
critĂšre d'information bayĂ©sien (BIC). Mais elles ne peuvent ĂȘtre appliquĂ©es que si nous devons passer de la mĂ©thode k-means Ă une version plus gĂ©nĂ©ralisĂ©e - un mĂ©lange de distributions normales (Gaussian Mixture Model (GMM)).
GMM considÚre le nuage de données comme une superposition de nombreux ensembles de données avec une distribution normale, avec des valeurs moyennes et des variances distinctes. Et puis GMM utilise un algorithme pour
maximiser les attentes afin de déterminer ces moyennes et variances.

BIC pour régularisation
Vous avez peut-ĂȘtre dĂ©jĂ rencontrĂ© BIC dans l'analyse statistique ou lors de l'utilisation de la rĂ©gression linĂ©aire. Le BIC et l'AIC (Akaike Information Criterion) sont utilisĂ©s dans la rĂ©gression linĂ©aire comme techniques de rĂ©gularisation pour le processus de sĂ©lection des variables.
Une idĂ©e similaire s'applique au BIC. ThĂ©oriquement, les grappes extrĂȘmement complexes peuvent ĂȘtre modĂ©lisĂ©es comme des superpositions d'un grand nombre d'ensembles de donnĂ©es avec une distribution normale. Pour rĂ©soudre ce problĂšme, vous pouvez appliquer un nombre illimitĂ© de telles distributions.
Mais cela revient Ă augmenter la complexitĂ© du modĂšle en rĂ©gression linĂ©aire, quand un grand nombre de propriĂ©tĂ©s peuvent ĂȘtre utilisĂ©es pour faire correspondre des donnĂ©es de toute complexitĂ©, pour ne perdre la possibilitĂ© de gĂ©nĂ©ralisation, car un modĂšle trop complexe correspond au bruit, et non Ă un modĂšle rĂ©el.
La méthode BIC inflige une amende à de nombreuses distributions normales et essaie de garder le modÚle suffisamment simple pour décrire un modÚle donné.
Par conséquent, vous pouvez exécuter l'algorithme GMM pour un grand nombre de centres de cluster, et la valeur BIC augmentera jusqu'à un certain point, puis commencera à diminuer à mesure que l'amende se développe.
Résumé
Voici le
carnet Jupyter pour cet article. N'hésitez pas à bifurquer et à expérimenter.
Chez Jet Infosystems, nous avons discuté de quelques alternatives à la méthode populaire du coude en termes de choix du bon nombre de grappes lors de l'apprentissage sans professeur utilisant l'algorithme k-means.
Nous nous sommes assurés qu'au lieu de la méthode du coude, il est préférable d'utiliser le coefficient de «silhouette» et la valeur BIC (de l'extension GMM pour k-means) pour déterminer visuellement le nombre optimal de grappes.