Klasteryzacja metodą K-means
Zrozumienie działania krok po kroku
Klasteryzacja metodą K-means to bezpłatna lekcja Python Academy na CoddyKit. To lekcja 2 z 5. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Python Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Python Academy zawiera 5 lekcji w sumie.
Klasteryzacja K-Means
Klasteryzacja K-Means
K-Means to jeden z najpopularniejszych algorytmów klasteryzacji. Dzieli dane na z góry określoną liczbę klastrów (K), minimalizując odległości wewnątrzklastrowe.
Działa iteracyjnie, aby znaleźć najlepsze przypisania do klastrów i centroidy.

Jak działa K-Means
Jak działa K-Means
Algorytm K-Means działa w następujących krokach:
- Inicjalizuje K losowych centroidów.
- Przypisuje każdy punkt danych do najbliższego centroidu.
- Przelicza centroidy jako średnią wszystkich punktów w klastrze.
- Powtarza kroki 2 i 3, aż centroidy się ustabilizują lub zostanie osiągnięta maksymalna liczba iteracji.
Wybór liczby klastrów
Wybór liczby klastrów
Wartość K jest kluczowym parametrem. Do popularnych metod wyboru K należą:
- Metoda łokcia: Należy wykreślić sumę kwadratów wewnątrz klastrów (WCSS) dla różnych wartości K i znaleźć „punkt łokcia”.
- Współczynnik sylwetki: Mierzy, jak dobrze klastry są od siebie oddzielone.
Przykładowy zbiór danych dla K-Means
Przykładowy zbiór danych dla K-Means
Rozważmy zbiór danych z punktami rozmieszczonymi w przestrzeni 2D. Każdy punkt ma:
- X: Współrzędną na osi poziomej.
- Y: Współrzędną na osi pionowej.
K-Means pogrupuje te punkty w klastry na podstawie ich wzajemnej bliskości.
Implementowanie K-Means w języku Python
Implementowanie K-Means w języku Python
Do zaimplementowania algorytmu użyjemy klasy KMeans z biblioteki scikit-learn:
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_)Wizualizacja klastrów
Wizualizacja klastrów
Możemy zwizualizować klastry, przedstawiając na wykresie punkty danych i centroidy:
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()Zalety K-Means
Zalety K-Means
K-Means ma kilka zalet:
- Jest prosty i łatwy do zaimplementowania.
- Jest wydajny w przypadku dużych zbiorów danych.
- Dobrze działa, gdy klastry są wyraźnie zdefiniowane.
Ograniczenia K-Means
Ograniczenia K-Means
Do ograniczeń K-Means należą:
- Wrażliwość na początkowe rozmieszczenie centroidów.
- Trudności z obsługą klastrów o kształcie innym niż kulisty.
- Wrażliwość na wartości odstające i zaszumione dane.
Podsumowanie i kolejne kroki
Podsumowanie i kolejne kroki
W tej lekcji omówiliśmy:
- Sposób działania klasteryzacji K-Means.
- Wybór liczby klastrów za pomocą metod takich jak metoda łokcia.
- Implementowanie i wizualizowanie K-Means w języku Python.
Następnie zastosujemy K-Means do rzeczywistego zbioru danych, aby zdobyć praktyczne doświadczenie.

Często zadawane pytania
Czy lekcja „Klasteryzacja metodą K-means” jest bezpłatna?
Tak — pełny tekst „Klasteryzacja metodą K-means” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Python Academy, przejdź na CoddyKit PRO. Kurs Python Academy zawiera 5 lekcji w sumie.
Co nauczysz się w „Klasteryzacja metodą K-means”?
Zrozumienie działania krok po kroku Ćwiczysz Python Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Python Academy?
Nie wymagamy żadnego doświadczenia. Python Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 5.
Ile czasu zajmuje lekcja „Klasteryzacja metodą K-means”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Python Academy?
Tak. Każda lekcja Python Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Wprowadzenie do algorytmów klasteryzacji
- Klasteryzacja metodą K-means
- Projekt klasteryzacji metodą K-means
- Podstawy redukcji wymiarowości
- Zastosowanie redukcji wymiarowości