Bahman Bahmani et al. a introduit k-means ||, qui est une version plus rapide de k-means ++.
Cet algorithme est tiré de la page 4 de leur article , Bahmani, B., Moseley, B., Vattani, A., Kumar, R., et Vassilvitskii, S. (2012). K-means évolutif ++. Actes de la dotation VLDB , 5 (7), 622-633.
Malheureusement, je ne comprends pas ces lettres grecques fantaisistes, j'ai donc besoin d'aide pour comprendre comment cela fonctionne. Autant que je sache, cet algorithme est une version améliorée de k-means ++, et il utilise un suréchantillonnage, pour réduire le nombre d'itérations: k-means ++ doit itérer fois, où k est le nombre de clusters souhaités.
J'ai obtenu une très bonne explication grâce à un exemple concret du fonctionnement de k-means ++, je vais donc réutiliser le même exemple.
Exemple
J'ai le jeu de données suivant:
(7,1), (3,4), (1,5), (5,8), (1,3), (7,8), (8,2), (5,9), (8 , 0)
(nombre de grappes souhaitées)
(facteur de suréchantillonnage)
J'ai commencé à le calculer, mais je ne sais pas si je l'ai bien fait, et je n'ai aucune idée des étapes 2, 4 ou 5.
Étape 1: échantillonner un point uniformément au hasard à partir de X
Disons que le premier centroïde est (identique à k-means ++)
Étape 2:
aucune idée
Étape 3:
Nous calculons les distances au carré du centre le plus proche de chaque point. Dans ce cas, nous n'avons pour l'instant qu'un seul centre .
(Parce que dans ce cas.)
Choisissez nombres aléatoires dans l'intervalle [ 0 , 813 ) . Disons que vous choisissez 246.90 et 659.42 . Ils se situent dans les fourchettes [ 379 , 495 ) et [ 633 , 813 ) qui correspondent respectivement aux 4e et 8e éléments.
Répétez-le fois, mais qu'est-ce que ψ (calculé à l'étape 2) dans ce cas?
- Etape 4: Pour , ensemble avec x étant le nombre de points en X plus proche de x que de tout autre point dans C .
- Étape 5: Re-regrouper les points pondérés en en k grappes.
Toute aide en général ou dans cet exemple particulier serait formidable.
la source