0Pricing
Python Academy · Lezione

Clustering K-Means

Comprensione passo dopo passo.

Clustering K-Means è una lezione Python Academy gratuita su CoddyKit. Questa è la lezione 2 di 5. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Python Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Python Academy include 5 lezioni in totale.

Clustering K-Means

Clustering K-Means

K-Means è uno degli algoritmi di clustering più diffusi. Suddivide i dati in un numero predefinito di cluster (K) minimizzando le distanze intra-cluster.

Funziona in modo iterativo per trovare le migliori assegnazioni ai cluster e i centroidi.

Clustering K-Means — illustrazione 1

Come funziona K-Means

Come funziona K-Means

K-Means opera secondo i seguenti passaggi:

  1. Inizializzare K centroidi casuali.
  2. Assegnare ogni punto dati al centroide più vicino.
  3. Ricalcolare i centroidi come media di tutti i punti di un cluster.
  4. Ripetere i passaggi 2 e 3 finché i centroidi non si stabilizzano o non viene raggiunto il numero massimo di iterazioni.

Scelta del numero di cluster

Scelta del numero di cluster

Il valore di K è un parametro fondamentale. I metodi comuni per scegliere K includono:

  • Metodo del gomito: Tracciare la somma dei quadrati all'interno dei cluster (WCSS) per diversi valori di K e individuare il "punto del gomito".
  • Punteggio della silhouette: Misura quanto sono ben separati i cluster.

Dataset di esempio per K-Means

Dataset di esempio per K-Means

Consideriamo un dataset con punti distribuiti nello spazio 2D. Ogni punto ha:

  • X: Coordinata sull'asse orizzontale.
  • Y: Coordinata sull'asse verticale.

K-Means raggrupperà questi punti in cluster in base alla loro vicinanza.

Implementazione di K-Means in Python

Implementazione di K-Means in Python

Usiamo la classe KMeans della libreria scikit-learn per implementare l'algoritmo:

from sklearn.cluster import KMeans
import numpy as np

# Example dataset
X = np.array([[1, 2], [1, 4], [1, 0], [4, 2], [4, 4], [4, 0]])

# K-Means model
kmeans = KMeans(n_clusters=2, random_state=0)
kmeans.fit(X)

print("Cluster Centers:", kmeans.cluster_centers_)
print("Labels:", kmeans.labels_)

Visualizzazione dei cluster

Visualizzazione dei cluster

Possiamo visualizzare i cluster tracciando i punti dati e i centroidi:

import matplotlib.pyplot as plt

# Scatter plot of data points
plt.scatter(X[:, 0], X[:, 1], c=kmeans.labels_, cmap='viridis')

# Plot cluster centers
plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], s=200, c='red', marker='X')
plt.title('K-Means Clustering')
plt.show()

Vantaggi di K-Means

Vantaggi di K-Means

K-Means offre diversi vantaggi:

  • Semplice e facile da implementare.
  • Efficiente per dataset di grandi dimensioni.
  • Funziona bene quando i cluster sono chiaramente definiti.

Limitazioni di K-Means

Limitazioni di K-Means

Alcune limitazioni di K-Means includono:

  • Sensibilità al posizionamento iniziale dei centroidi.
  • Difficoltà nella gestione di cluster non sferici.
  • Sensibilità ai valori anomali e ai dati rumorosi.

Riepilogo e prossimi passaggi

Riepilogo e prossimi passaggi

In questa lezione abbiamo visto:

  • Come funziona il clustering K-Means.
  • Come scegliere il numero di cluster usando metodi come il metodo del gomito.
  • Come implementare e visualizzare K-Means in Python.

Nel prossimo passaggio applicheremo K-Means a un dataset reale per acquisire esperienza pratica.

Clustering K-Means — illustrazione 10

Domande Frequenti

La lezione «Clustering K-Means» è gratuita?

Sì — il testo completo di «Clustering K-Means» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Python Academy, passa a CoddyKit PRO. Il corso Python Academy include 5 lezioni in totale.

Cosa imparerò in «Clustering K-Means»?

Comprensione passo dopo passo. Eserciti Python Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Python Academy?

Non è richiesta alcuna esperienza precedente. Python Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 5.

Quanto tempo richiede la lezione «Clustering K-Means»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Python Academy?

Sì. Ogni lezione Python Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Introduzione agli algoritmi di clustering
  2. Clustering K-Means
  3. Progetto di clustering K-Means
  4. Fondamenti della riduzione della dimensionalità
  5. Applicazione della riduzione della dimensionalità
← Torna a Python Academy