Uczenie nienadzorowane
Poznaj techniki klasteryzacji, takie jak K-Means i klasteryzacja hierarchiczna
Uczenie nienadzorowane to bezpłatna lekcja Python Academy na CoddyKit. To lekcja 3 z 6. 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 6 lekcji w sumie.
Uczenie bez nadzoru
Uczenie bez nadzoru
Uczenie bez nadzoru to rodzaj uczenia maszynowego, w którym algorytm rozpoznaje wzorce na podstawie danych bez etykiet. Jest często stosowane do klasteryzacji, redukcji wymiarowości i wykrywania anomalii.
W tej lekcji poznają Państwo techniki klasteryzacji, takie jak K-Means i klasteryzacja hierarchiczna.

Czym jest uczenie bez nadzoru?
Czym jest uczenie bez nadzoru?
Uczenie bez nadzoru polega na analizowaniu i grupowaniu danych bez wcześniej zdefiniowanych etykiet. Jego celem jest identyfikowanie ukrytych struktur lub wzorców w danych.
Najważniejsze zadania obejmują:
- Klasteryzacja: Grupowanie podobnych punktów danych.
- Redukcja wymiarowości: Zmniejszanie liczby cech przy jednoczesnym zachowaniu ważnych informacji.
Klasteryzacja K-Means
Klasteryzacja K-Means
K-Means to popularny algorytm klasteryzacji, który dzieli dane na K klastrów na podstawie podobieństwa cech. Zobaczmy, jak działa:
# Example: K-Means Clustering
from sklearn.cluster import KMeans
import numpy as np
# Sample data
X = np.array([[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]])
kmeans = KMeans(n_clusters=2, random_state=0)
kmeans.fit(X)
print("Cluster Centers:", kmeans.cluster_centers_)
print("Labels:", kmeans.labels_)Klasteryzacja hierarchiczna
Klasteryzacja hierarchiczna
Klasteryzacja hierarchiczna tworzy strukturę przypominającą drzewo (dendrogram) w celu grupowania podobnych punktów danych. Nie wymaga wcześniejszego określenia liczby klastrów.
# Example: Hierarchical Clustering
from scipy.cluster.hierarchy import dendrogram, linkage
import matplotlib.pyplot as plt
# Sample data
X = [[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]]
linked = linkage(X, 'single')
dendrogram(linked)
plt.show()Redukcja wymiarowości
Redukcja wymiarowości
Redukcja wymiarowości upraszcza dane, zmniejszając liczbę cech przy jednoczesnym zachowaniu ważnych informacji. Analiza głównych składowych (PCA) jest często stosowaną techniką tego zadania.
# Example: PCA
from sklearn.decomposition import PCA
import numpy as np
# Sample data
X = np.array([[1, 2], [3, 4], [5, 6], [7, 8]])
pca = PCA(n_components=1)
X_reduced = pca.fit_transform(X)
print("Reduced Data:", X_reduced)Zastosowania uczenia bez nadzoru
Zastosowania uczenia bez nadzoru
Uczenie bez nadzoru znajduje zastosowanie w:
- Segmentacja klientów: Grupowanie klientów na podstawie ich zachowania.
- Wykrywanie anomalii: Identyfikowanie nietypowych wzorców w danych.
- Kompresja obrazów: Zmniejszanie rozmiaru obrazu przy zachowaniu jego jakości.
Wizualizacja klastrów
Wizualizacja klastrów
Wizualizacja klastrów pomaga zrozumieć sposób grupowania punktów danych. Matplotlib i Seaborn są przydatne do tego celu:
# Example: Visualizing clusters
import matplotlib.pyplot as plt
# Sample data and labels
X = [[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]]
labels = [0, 0, 0, 1, 1, 1]
for i in range(len(X)):
plt.scatter(X[i][0], X[i][1], c='r' if labels[i] == 0 else 'b')
plt.show()Wyzwania w uczeniu nienadzorowanym
Wyzwania w uczeniu nienadzorowanym
Uczenie nienadzorowane wiąże się z kilkoma wyzwaniami, w tym:
- Określanie liczby klastrów: W metodzie K-Means należy wcześniej określić liczbę klastrów.
- Interpretowalność: Klastry nie zawsze mają jasne znaczenie.
- Skalowalność: Obsługa dużych zbiorów danych może wymagać intensywnych obliczeń.
Typowe błędy w uczeniu nienadzorowanym
Typowe błędy w uczeniu nienadzorowanym
Oto kilka błędów, których należy unikać:
- Nieprawidłowy wybór liczby klastrów w metodzie K-Means.
- Brak wstępnego przetwarzania danych, na przykład skalowania cech.
- Nadmierna interpretacja klastrów bez ich walidacji.
Czego się nauczyliśmy?
Czego się nauczyliśmy?
W tej lekcji nauczyli się Państwo:
- Podstaw uczenia nienadzorowanego i jego najważniejszych zadań.
- Implementowania metody K-Means i klasteryzacji hierarchicznej.
- Pojęcia redukcji wymiarowości z użyciem PCA.
- Zastosowań, wyzwań i typowych błędów w uczeniu nienadzorowanym.
Świetnie! Przejdźmy do następnego tematu.

Często zadawane pytania
Czy lekcja „Uczenie nienadzorowane” jest bezpłatna?
Tak — pełny tekst „Uczenie nienadzorowane” 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 6 lekcji w sumie.
Co nauczysz się w „Uczenie nienadzorowane”?
Poznaj techniki klasteryzacji, takie jak K-Means i klasteryzacja hierarchiczna Ć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 3 z 6.
Ile czasu zajmuje lekcja „Uczenie nienadzorowane”?
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 uczenia maszynowego
- Uczenie nadzorowane za pomocą Scikit-Learn
- Uczenie nienadzorowane
- Inżynieria i wybór cech
- Wprowadzenie do sieci neuronowych
- Wprowadzenie do TensorFlow i Keras