Czym jest uczenie nienadzorowane?
Uczenie nienadzorowane (ang. unsupervised learning) to paradygmat uczenia maszynowego, w którym model uczy się z danych bez etykiet — bez informacji o „poprawnej odpowiedzi". Zamiast przewidywać znaną zmienną docelową, algorytm odkrywa ukryte struktury, wzorce i grupowania w danych.
O ile uczenie nadzorowane odpowiada na pytanie „jaka jest odpowiedź dla tego wejścia?", uczenie nienadzorowane odpowiada na pytania: „jakie grupy istnieją w danych?", „jakie wymiary są najważniejsze?", „co jest anomalią?".
Trzy główne zadania uczenia nienadzorowanego to: klasteryzacja (grupowanie podobnych obiektów), redukcja wymiarów (uproszczenie danych przy zachowaniu struktury) i detekcja anomalii (wykrywanie odstających obserwacji).
Klasteryzacja
K-Means
K-Means to najpopularniejszy algorytm klasteryzacji. Dzieli N obserwacji na K klastrów, minimalizując sumę kwadratów odległości wewnątrzklastrowych.
Algorytm:
- Inicjalizacja: wybierz K losowych centroidów (środków klastrów)
- Przypisanie: przyporządkuj każdy punkt do najbliższego centroidu
- Aktualizacja: przelicz centroidy jako średnie punktów w klastrze
- Powtarzaj kroki 2-3 aż do zbieżności (centroidy przestają się zmieniać)
Kluczowe decyzje:
- Liczba klastrów K — nie jest znana z góry. Metody doboru: metoda łokcia (elbow method, wykres WCSS vs. K), wskaźnik silhouette, gap statistic
- Inicjalizacja — losowa inicjalizacja może prowadzić do lokalnych minimów. K-Means++ inicjalizuje centroidy z prawdopodobieństwem proporcjonalnym do odległości od już wybranych, znacząco poprawiając zbieżność
- Miara odległości — standardowo euklidesowa; dla danych tekstowych czy binarnych potrzebne inne miary
Ograniczenia K-Means:
- Zakłada klastry sferyczne (równomiernie rozłożone wokół centroidu)
- Wrażliwy na outliersy (jeden outlier może przesunąć centroid)
- Wymaga z góry określonego K
- Nie radzi sobie z klastrami o nieregularnych kształtach lub różnych gęstościach
DBSCAN
DBSCAN (Density-Based Spatial Clustering of Applications with Noise) to algorytm klasteryzacji oparty na gęstości, który nie wymaga z góry określonej liczby klastrów.
Koncepcja: Klaster to gęsty region punktów otoczony regionem rzadkim. Algorytm identyfikuje:
- Core points — punkty z co najmniej MinPts sąsiadami w promieniu ε (epsilon)
- Border points — punkty w sąsiedztwie ε core pointa, ale z < MinPts sąsiadami
- Noise points — punkty niebędące ani core, ani border — traktowane jako anomalie
Zalety DBSCAN:
- Automatycznie wykrywa liczbę klastrów
- Radzi sobie z klastrami o nieregularnych kształtach
- Natywnie identyfikuje outliersy (noise points)
- Odporny na szum
Parametry: ε (promień sąsiedztwa) i MinPts (minimalna gęstość). Dobór ε: wykres k-distance (sortowane odległości do k-tego sąsiada); punkt przegięcia sugeruje optymalny ε.
Klasteryzacja hierarchiczna
Klasteryzacja hierarchiczna buduje dendrogram — drzewiastą strukturę klastrów na różnych poziomach szczegółowości.
Podejście aglomeracyjne (bottom-up):
- Start: każdy punkt to osobny klaster
- Łącz dwa najbliższe klastry
- Powtarzaj aż do jednego klastra
- Przetnij dendrogram na wybranym poziomie
Metody linkage (miary odległości między klastrami):
- Single linkage — minimum odległości między elementami dwóch klastrów (tendencja do łańcuchów)
- Complete linkage — maksimum (kompaktowe klastry)
- Average linkage — średnia odległość
- Ward's method — minimalizuje wzrost wariancji wewnątrzklastrowej
Dendrogram pozwala wizualnie wybrać liczbę klastrów — szukamy „długich gałęzi" (dużych skoków odległości przy łączeniu).
Gaussian Mixture Models (GMM)
GMM zakłada, że dane pochodzą z mieszaniny rozkładów Gaussowskich. Każdy klaster modelowany jest jako wielowymiarowy rozkład normalny z własnymi parametrami (średnia, macierz kowariancji). Algorytm EM (Expectation-Maximization) iteracyjnie dopasowuje parametry.
Przewaga GMM nad K-Means: klastry mogą mieć różne kształty (elipsoidalne, nie tylko sferyczne) i każdy punkt otrzymuje prawdopodobieństwo przynależności do każdego klastra (soft clustering vs. hard clustering K-Means).
Redukcja wymiarów
PCA (Principal Component Analysis)
PCA to liniowa metoda redukcji wymiarów. Znajduje kierunki (składowe główne) maksymalizujące wariancję w danych i projektuje dane na mniejszą liczbę tych kierunków.
Algorytm:
- Standaryzacja danych (średnia=0, odchylenie=1)
- Obliczenie macierzy kowariancji
- Dekompozycja na wartości i wektory własne
- Wybór k wektorów własnych odpowiadających największym wartościom własnym
- Projekcja danych na k-wymiarową podprzestrzeń
Zastosowania PCA:
- Wizualizacja danych wielowymiarowych (projekcja na 2D/3D)
- Preprocessing przed ML (redukcja wymiarowości zmniejsza overfitting)
- Kompresja obrazów (zachowanie głównych komponentów)
- Dekorrelacja cech
Ograniczenia: PCA znajduje tylko liniowe zależności. Dla nieliniowych struktur potrzebne są metody nieliniowe.
t-SNE
t-SNE (t-distributed Stochastic Neighbor Embedding) to nieliniowa metoda redukcji wymiarów, zaprojektowana specjalnie do wizualizacji danych wielowymiarowych w 2D lub 3D.
t-SNE modeluje podobieństwo par punktów w przestrzeni oryginalnej (rozkład Gaussowski) i docelowej (rozkład t-Studenta) i minimalizuje rozbieżność KL (Kullback-Leibler) między tymi rozkładami.
Kluczowy parametr: perplexity — kontroluje liczbę efektywnych sąsiadów. Typowe wartości: 5-50. Niska perplexity = skupienie na lokalnej strukturze, wysoka = więcej globalnej struktury.
Uwaga: t-SNE jest narzędziem wizualizacyjnym, nie metodą ogólnej redukcji wymiarów. Nie zachowuje globalnych odległości (tylko lokalne sąsiedztwo), wynik zależy od inicjalizacji, nie można projektować nowych punktów.
UMAP
UMAP (Uniform Manifold Approximation and Projection) to nowsza alternatywa dla t-SNE. Jest szybsza, lepiej zachowuje globalną strukturę danych i pozwala na projekcję nowych punktów. Opiera się na topologii algebraicznej i teorii rozmaitości.
Detekcja anomalii
Algorytmy nienadzorowane naturalnie wykrywają anomalie:
- DBSCAN — noise points = anomalie
- Isolation Forest — izoluje anomalie w losowych drzewach (anomalie wymagają mniej podziałów do izolacji)
- Local Outlier Factor (LOF) — porównuje lokalną gęstość punktu z gęstością sąsiadów
- Autoenkodery — sieci neuronowe uczące się rekonstrukcji; anomalie mają wysoki błąd rekonstrukcji
Ewaluacja klasteryzacji
Bez etykiet ocena klasteryzacji jest trudniejsza niż w uczeniu nadzorowanym:
Metryki wewnętrzne (bez etykiet)
- Silhouette Score — [-1, 1], mierzy jak punkt pasuje do swojego klastra vs. najbliższego obcego; > 0.5 to dobra klasteryzacja
- Davies-Bouldin Index — niższy = lepszy; mierzy stosunek rozproszenia wewnątrzklastrowego do odległości międzyklastrowej
- Calinski-Harabasz Index — wyższy = lepszy; stosunek wariancji międzyklastrowej do wewnątrzklastrowej
Metryki zewnętrzne (z etykietami referencyjnymi)
- Adjusted Rand Index (ARI) — [-1, 1], mierzy zgodność dwóch podziałów
- Normalized Mutual Information (NMI) — [0, 1], mierzy współdzielenie informacji
- V-measure — harmoniczna średnia homogeniczności i kompletności
Zastosowania praktyczne
- Segmentacja klientów — grupowanie klientów wg zachowań zakupowych (marketing)
- Analiza genomowa — klasteryzacja genów o podobnej ekspresji
- Detekcja anomalii — wykrywanie oszustw, intruzji sieciowych, defektów produkcyjnych
- Systemy rekomendacji — grupowanie podobnych produktów/użytkowników
- Kompresja danych — redukcja wymiarów przed modelowaniem
- Wizualizacja — projekcja wielowymiarowych danych na 2D (t-SNE, UMAP)
Podsumowanie
Uczenie nienadzorowane to potężne narzędzie eksploracji danych, odkrywające struktury niewidoczne gołym okiem. K-Means to solidny baseline, DBSCAN radzi sobie z nieregularnymi kształtami, PCA redukuje wymiary liniowo, a t-SNE/UMAP wizualizują złożone dane. Wybór metody zależy od struktury danych, celu analizy i wymagań interpretacyjnych.