0Pricing
Learn AI with Python · Lekcja

Projekt klasteryzacji metodą K-średnich

Zastosowanie metody do rzeczywistego zbioru danych.

Projekt klasteryzacji metodą K-średnich to bezpłatna lekcja Learn AI with Python na CoddyKit. To lekcja 3 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 Learn AI with Python, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Learn AI with Python zawiera 5 lekcji w sumie.

Projekt klasteryzacji K-Means

Projekt klasteryzacji K-Means

W tym projekcie zastosujemy klasteryzację K-Means do rzeczywistego zbioru danych: segmentacji klientów. Celem jest pogrupowanie klientów na podstawie ich wzorców wydatków.

Projekt klasteryzacji metodą K-średnich — ilustracja 1

Przegląd zbioru danych

Przegląd zbioru danych

Zbiór danych zawiera następujące kolumny:

  • Identyfikator klienta: Unikalny identyfikator każdego klienta.
  • Wiek: Wiek klienta.
  • Roczny dochód: Roczny dochód wyrażony w tysiącach dolarów.
  • Wynik wydatków: Wynik przypisany na podstawie zachowania klienta i wzorców wydatków (1–100).

Krok 1: Importowanie zbioru danych i bibliotek

Krok 1: Importowanie zbioru danych i bibliotek

Zaczniemy od zaimportowania niezbędnych bibliotek i wczytania zbioru danych:

import pandas as pd
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans

# Load dataset
data = pd.read_csv('Mall_Customers.csv')
print(data.head())

Krok 2: Wstępne przetwarzanie danych

Krok 2: Wstępne przetwarzanie danych

Wybierzemy istotne cechy do klasteryzacji i w razie potrzeby znormalizujemy dane. W tym projekcie użyjemy Rocznego dochodu i Wyniku wydatków:

# Select relevant features
X = data[['Annual Income (k$)', 'Spending Score (1-100)']].values
print(X[:5])

Krok 3: Określanie optymalnej liczby klastrów

Krok 3: Określanie optymalnej liczby klastrów

Używamy metody łokcia, aby znaleźć optymalną liczbę klastrów, wykreślając sumę kwadratów odchyleń wewnątrz klastrów (WCSS) dla różnych wartości K:

wcss = []
for i in range(1, 11):
    kmeans = KMeans(n_clusters=i, init='k-means++', random_state=42)
    kmeans.fit(X)
    wcss.append(kmeans.inertia_)

plt.plot(range(1, 11), wcss)
plt.title('Elbow Method')
plt.xlabel('Number of Clusters')
plt.ylabel('WCSS')
plt.show()

Krok 4: Zastosowanie klasteryzacji K-Means

Krok 4: Zastosowanie klasteryzacji K-Means

Na podstawie metody łokcia wybieramy optymalną liczbę klastrów (np. K=5) i dopasowujemy model K-Means:

kmeans = KMeans(n_clusters=5, init='k-means++', random_state=42)
kmeans.fit(X)

# Add cluster labels to the dataset
data['Cluster'] = kmeans.labels_
print(data.head())

Krok 5: Wizualizowanie klastrów

Krok 5: Wizualizowanie klastrów

Możemy przedstawić klastry na wykresie w przestrzeni 2D, aby zaobserwować ich rozdzielenie:

plt.scatter(X[:, 0], X[:, 1], c=kmeans.labels_, cmap='viridis')
plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], s=200, c='red', marker='X')
plt.title('Customer Segmentation')
plt.xlabel('Annual Income (k$)')
plt.ylabel('Spending Score (1-100)')
plt.show()

Krok 6: Interpretowanie klastrów

Krok 6: Interpretowanie klastrów

Każdy klaster reprezentuje grupę klientów o podobnych wzorcach wydatków. Na przykład:

  • Klaster 1: Wysoki dochód, wysokie wydatki.
  • Klaster 2: Niski dochód, niskie wydatki.
  • Klaster 3: Umiarkowany dochód, wysokie wydatki.

Wyzwania związane z klasteryzacją w rzeczywistych zastosowaniach

Wyzwania związane z klasteryzacją w rzeczywistych zastosowaniach

Chociaż klasteryzacja jest potężnym narzędziem, jej zastosowania w rzeczywistym świecie wiążą się z wyzwaniami, takimi jak:

  • Wielowymiarowe zbiory danych.
  • Zaszumione lub niekompletne dane.
  • Znacząca interpretacja wyników klasteryzacji.

Podsumowanie i następne kroki

Podsumowanie i następne kroki

W tym projekcie:

  • Przeanalizowaliśmy rzeczywisty zbiór danych.
  • Zastosowaliśmy grupowanie K-Means i zwizualizowaliśmy wyniki.
  • Zinterpretowaliśmy klastry, aby zrozumieć zachowania klientów.

Następnie poznamy techniki redukcji wymiarowości, takie jak PCA i t-SNE.

Projekt klasteryzacji metodą K-średnich — ilustracja 10

Często zadawane pytania

Czy lekcja „Projekt klasteryzacji metodą K-średnich” jest bezpłatna?

Tak — pełny tekst „Projekt klasteryzacji metodą K-średnich” 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 Learn AI with Python, przejdź na CoddyKit PRO. Kurs Learn AI with Python zawiera 5 lekcji w sumie.

Co nauczysz się w „Projekt klasteryzacji metodą K-średnich”?

Zastosowanie metody do rzeczywistego zbioru danych. Ćwiczysz Learn AI with Python 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ąć Learn AI with Python?

Nie wymagamy żadnego doświadczenia. Learn AI with Python 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 3 z 5.

Ile czasu zajmuje lekcja „Projekt klasteryzacji metodą K-średnich”?

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 Learn AI with Python?

Tak. Każda lekcja Learn AI with Python 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

  1. Wprowadzenie do algorytmów klasteryzacji
  2. Klasteryzacja metodą K-średnich
  3. Projekt klasteryzacji metodą K-średnich
  4. Podstawy redukcji wymiarowości
  5. Zastosowanie redukcji wymiarowości
← Powrót do Learn AI with Python