Dans ce chapitre, nous allons passer par l'algorithme K-means, quel est l'algorithme de clustering le plus courant que vous êtes susceptible d'utiliser dans la pratique. Maintenant, le nom K-means vous donnera probablement un peu d'intuition sur le fonctionnement de cet algorithme, mais allons-y en détail. Alors d'abord, vous choisissez un certain nombre de centroïdes. Ainsi, le nombre de clusters que vous choisissez est quelque chose que nous allons examiner un peu plus en détail, mais une des choses que tu devrais reconnaître est que vous devez réellement spécifier le nombre de clusters. Vous devez donc décider de la valeur que prend K. Alors est-ce deux clusters, cinq clusters, 15 clusters ? C'est un choix que vous devrez faire lorsque vous exécutez K-means sur vos données. Donc, nous commençons d'abord par choisir un nombre spécifique de centres de gravité pour commencer. Maintenant, vous pouvez choisir le placement des centroïdes être au hasard, ou vous pouvez utiliser un algorithme spécifique pour décider où commencer vos centroïdes. Habituellement, les choisir avec un algorithme spécifique fait un meilleur travail pour trouver des clusters stables, mais vous n'avez peut-être pas le luxe de pouvoir exécuter quelque chose qui peut prendre beaucoup de temps sur vos données d'abord. Vous pouvez donc simplement les choisir au hasard. Ensuite, pour chaque cas, ce que nous voulons faire, c'est placer cette affaire dans le cluster avec le barycentre le plus proche. Donc, vous regardez les données dans ce cas spécifique, déterminer de quel centroïde il est le plus proche, puis liez-le à ce centroïde spécifique. Vous répétez ceci pour chaque cas dans l'ensemble de données. Et puis, à la fin, mettre à jour les centroïdes pour être la moyenne des points de données au sein de chaque grappe. Vous pouvez donc voir que K est le nombre de clusters, puis les moyens se réfèrent à prendre la moyenne de tous les cas pour former les nouveaux barycentres. Après avoir parcouru l'ensemble de données une fois, ce que vous voulez faire, c'est répéter ces étapes en continu jusqu'à ce que les centroïdes se stabilisent et convergent. Voici une animation qui montre l'algorithme K-means en action. Vous pouvez voir qu'au départ, il choisit trois centroïdes au hasard. Maintenant, le bleu et le jaune sont en fait assez proches. Alors au début, le cluster bleu est en fait assez petit et la grappe jaune est beaucoup plus grande. La grappe orange, car le barycentre commence assez loin des deux autres centroïdes, est en fait très grand au début. Mais alors que nous continuons à mettre à jour les centroïdes, la grappe orange devient de plus en plus petite. Cet ensemble de données s'appelle donc l'ensemble de données Mickey Mouse, et vous pouvez probablement comprendre pourquoi. Essentiellement, il est composé de trois gouttes, une sorte de plus grande au milieu en bas, puis deux plus petits qui ressemblent à quelque chose un peu comme Mickey Mouse et ses oreilles. Donc, quelques choses à noter sur le processus d'exécuter les K-means. Vous pouvez donc voir qu'il fait un assez bon travail de classer les blobs que nous attendrions ensemble. Ainsi, les cas sur l'oreille droite sont approximativement ensemble, ceux de l'oreille gauche, encore une fois, ils sont à peu près ensemble, et puis ceux qui ont une sorte de visage rond sont également regroupés. Mais dans ce cas, il y a en fait un tas de cas qui probablement, si nous devions le faire juste en le regardant et en déduire le motif, nous le mettrions probablement avec chacune des oreilles. Alors souviens-toi de ça quand tu penses à l'intuition autour de K-means, car dans ce cas, dans cet ensemble de données, ce que nous avons, ce sont des clusters qui ont des variantes inégales. Et l'algorithme K-means a vraiment du mal avec des clusters qui ont des variances différentes, parce que quand on fait le calcul, on suppose que la variance est égale dans chacun des clusters K que nous avons choisis. Maintenant, cet exemple est juste dans les dimensions X et Y. Il n'y a donc vraiment que deux variables qu'il regroupe. Mais presque tout le regroupement que vous ferez sera dans un nombre beaucoup plus élevé de dimensions. Donc, vous pouvez avoir une poignée, ou même une douzaine, ou deux douzaines de variables que vous utilisez pour former vos clusters. Ainsi, l'algorithme K-means fait une fonction de type analogue, sauf dans les dimensions supérieures. Ainsi, au lieu de déplacer les centroïdes juste à l'intérieur ce plan X et Y, c'est en fait déplacer le centroïde dans toutes les dimensions que vous avez comme variables d'entrée. Il pourrait donc s'agir de quelques dizaines de variables. Il y a donc quelques raisons pour lesquelles K-signifie est l'algorithme le plus populaire. La première est que c'est relativement simple et assez facile à programmer. Nous n'avons donc pas besoin de beaucoup d'étapes pour comprendre comment regrouper les différentes lignes ensemble et comment mettre à jour le centre du cluster. Cela signifie que c'est assez simple pour comprendre comment les centroïdes se déplacent et pouvoir les interpréter quand on veut comprendre et décrire les clusters que nous avons créé. Alors maintenant, vous devriez avoir une intuition sur le fonctionnement pratique de l'algorithme K-means et la façon dont les centroïdes se mettent à jour dans le temps, ainsi que la raison pour laquelle cet algorithme est appelé K-means.