El clustering és una tècnica d’aprenentatge automàtic (machine learning) en què agrupem dades similars. Imaginem que tenim un conjunt de dades sense etiquetes o categories (aprenentatge no supervisat), i volem agrupar els punts de dades segons la seva semblança.
Què fa l’algoritme k-means?
L’algoritme k-means és un mètode de clustering que:
- Defineix un nombre de grups, “k”, que tu especifiques prèviament (per exemple, si vols 3 grups o 5 grups).
- Col·loca “k” centres (anomenats centroids) en punts inicials a l’atzar dins de les dades.
- Assigna cada punt de les dades al centroid més proper.
- Recalcula els centroids de cada grup fent la mitjana de tots els punts assignats a cada centroid.
- Repeteix els passos 3 i 4 fins que els centroids no es moguin gaire o fins a un nombre determinat d’iteracions.
Aquesta seqüència converteix els nostres punts de dades en “clusters” o agrupaments, on els punts dins d’un mateix grup són similars entre si.
Un exemple per entendre-ho millor:
Imaginem que tenim un conjunt de dades que mostra l’alçada i el pes de persones, i volem dividir aquestes dades en dos grups (k=2) per veure com es distribueixen. L’algoritme col·locarà inicialment dos centroids i, després d’unes quantes iteracions, crearà dos grups de persones amb característiques similars en alçada i pes.
Quan utilitzar k-means?
L’algoritme k-means és molt útil quan:
- Tenim dades sense etiquetar i volem descobrir grups dins d’aquestes dades.
- Els grups tenen forma esfèrica (en cas contrari, pot no ser molt efectiu).