Sintonizzati su YOLO Vision 2025!
25 settembre 2025
10:00 — 18:00 BST
Evento ibrido
Yolo Vision 2024
Glossario

Clustering K-Means

Scopri il K-Means Clustering, un algoritmo chiave di apprendimento non supervisionato per raggruppare i dati in cluster. Esplora il suo processo, le applicazioni e i confronti!

Il clustering K-Means è un algoritmo fondamentale di apprendimento non supervisionato utilizzato nel data mining e nel machine learning (ML). Il suo obiettivo principale è quello di partizionare un set di dati in un numero predefinito di sottogruppi distinti e non sovrapposti, o "cluster". La "K" nel suo nome si riferisce a questo numero di cluster. L'algoritmo funziona raggruppando i punti dati in base alla loro somiglianza, dove la somiglianza è spesso misurata dalla distanza euclidea tra i punti. Ogni cluster è rappresentato dal suo centro, noto come centroide, che è la media di tutti i punti dati all'interno di quel cluster. È un metodo potente ma semplice per scoprire modelli e strutture sottostanti in dati non etichettati.

Come funziona K-Means

L'algoritmo K-Means opera iterativamente per trovare le migliori assegnazioni di cluster per tutti i punti dati. Il processo può essere suddiviso in alcuni semplici passaggi:

  1. Inizializzazione: Innanzitutto, viene scelto il numero di cluster, K. Quindi, K centroidi iniziali vengono posizionati casualmente all'interno dello spazio delle feature del dataset.
  2. Fase di assegnazione: Ogni punto dati dai dati di addestramento viene assegnato al centroide più vicino. Questo forma K cluster iniziali.
  3. Update Step: Il centroide di ogni cluster viene ricalcolato prendendo la media di tutti i punti dati assegnati ad esso.
  4. Iterazione: Le fasi di assegnazione e aggiornamento vengono ripetute finché le assegnazioni dei cluster non cambiano più o viene raggiunto un numero massimo di iterazioni. A questo punto, l'algoritmo è convergente e si formano i cluster finali. È possibile consultare una spiegazione visiva dell'algoritmo K-Means per una comprensione più intuitiva.

La scelta del valore giusto per K è fondamentale e spesso richiede la conoscenza del dominio o l'utilizzo di metodi come il metodo del gomito o il punteggio silhouette. Le implementazioni sono ampiamente disponibili in librerie come Scikit-learn.

Applicazioni nel mondo reale

K-Means è applicato in vari settori grazie alla sua semplicità ed efficienza:

  • Segmentazione dei clienti: Nel retail e nel marketing, le aziende utilizzano K-Means per raggruppare i clienti in segmenti distinti in base alla cronologia degli acquisti, ai dati demografici o al comportamento. Ad esempio, un'azienda potrebbe identificare un cluster di "clienti fedeli con elevate spese" e un cluster di "acquirenti occasionali attenti al budget". Ciò consente strategie di marketing mirate, come descritto negli studi sulla segmentazione dei clienti tramite clustering.
  • Compressione delle immagini: Nella computer vision (CV), K-Means viene utilizzato per la quantizzazione del colore, una forma di riduzione della dimensionalità. Raggruppa colori di pixel simili in K cluster, sostituendo il colore di ciascun pixel con il colore del centroide del suo cluster. Ciò riduce il numero di colori in un'immagine, comprimendola efficacemente. Questa tecnica è un concetto fondamentale nella segmentazione delle immagini.
  • Analisi dei documenti: L'algoritmo può raggruppare i documenti in base alla frequenza dei termini per identificare argomenti o raggruppare articoli simili, il che aiuta a organizzare grandi set di dati testuali.

K-Means contro concetti correlati

È importante distinguere K-Means da altri algoritmi di machine learning:

  • K-Nearest Neighbors (KNN): Questo è un punto di confusione comune. K-Means è un algoritmo di clustering non supervisionato che raggruppa dati non etichettati. Al contrario, KNN è un algoritmo di classificazione o regressione supervisionato che prevede l'etichetta di un nuovo punto dati in base alle etichette dei suoi K vicini più prossimi. K-Means crea gruppi, mentre KNN classifica in gruppi predefiniti.
  • Macchina a vettori di supporto (SVM): SVM è un modello di apprendimento supervisionato utilizzato per la classificazione che trova un iperpiano ottimale per separare le classi. K-Means non è supervisionato e raggruppa i dati in base alla somiglianza senza etichette predefinite.
  • DBSCAN: A differenza di K-Means, DBSCAN è un algoritmo di clustering basato sulla densità che può identificare cluster di forma arbitraria ed è robusto agli outlier. K-Means presuppone che i cluster siano sferici e può essere fortemente influenzato dagli outlier.

Sebbene K-Means sia uno strumento fondamentale per l'esplorazione dei dati, attività complesse come il rilevamento di oggetti in tempo reale si basano su modelli più avanzati. I rivelatori moderni come Ultralytics YOLO utilizzano sofisticate tecniche di deep learning per prestazioni superiori. Tuttavia, i concetti di clustering, come il raggruppamento delle anchor box, sono stati fondamentali nello sviluppo dei primi rivelatori di oggetti. La gestione dei set di dati per tali attività può essere semplificata utilizzando piattaforme come Ultralytics HUB.

Unisciti alla community di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora
Link copiato negli appunti