Uczenie nienadzorowane (ang. unsupervised learning) to rodzaj uczenia maszynowego, w którym algorytm dostaje dane bez etykiet — nikt mu nie mówi, jaka jest „poprawna odpowiedź”. Zamiast dopasowywać się do z góry znanych wyników (jak w uczeniu nadzorowanym), model sam szuka struktury: grupuje podobne obserwacje, wykrywa zależności między cechami albo upraszcza dane do mniejszej liczby wymiarów. Krótko: dajesz mu stos danych i pytasz „co tu się powtarza?”, a nie „czy to jest kot, czy pies?”.
Jak to działa i do czego służy
Algorytm analizuje rozkład danych w przestrzeni cech i szuka regularności — punktów leżących blisko siebie, kierunków największej zmienności albo obserwacji odstających. Dwa najczęstsze zadania to klastrowanie (grupowanie podobnych przykładów, np. k-means, DBSCAN, klastrowanie hierarchiczne) oraz redukcja wymiarowości (ściśnięcie wielu cech do kilku, np. PCA, t-SNE, UMAP). Do tego dochodzi wykrywanie anomalii i reguły asocjacyjne (klasyczny „koszyk zakupowy”).
Używasz tego, gdy nie masz etykiet i nie chce ci się ich ręcznie tworzyć — a to częsta sytuacja, bo etykietowanie jest drogie i nudne. Typowe scenariusze: segmentacja użytkowników, kompresja danych przed dalszym modelowaniem, eksploracja świeżego zbioru, którego jeszcze nie rozumiesz.
Przykład z praktyki
Masz tabelę z zachowaniem 50 tysięcy użytkowników sklepu i chcesz podzielić ich na segmenty, ale nie wiesz na ile. W Pythonie z biblioteką scikit-learn robisz to dosłownie w kilku linijkach: from sklearn.cluster import KMeans, potem KMeans(n_clusters=4).fit(X) i masz przypisanie każdego klienta do jednej z grup w model.labels_. Dopiero później ty — człowiek — patrzysz na klastry i nadajesz im sens („ci kupują tanio i często”, „ci rzadko, ale drogo”).
Częste błędy i mity
- „Skoro nie ma etykiet, to nie trzeba sprawdzać wyników” — nieprawda. Klastry oceniasz np. metryką
silhouette_score, a i tak na końcu potrzebny jest zdrowy rozsądek. - Zapominanie o skalowaniu —
k-meansliczy odległości, więc cecha w zakresie 0–1000000 zdominuje tę w zakresie 0–1. ZróbStandardScalerzanim odpalisz model. - Liczba klastrów z sufitu —
kwk-meansustalasz ty. Pomaga metoda łokcia albo silhouette, ale nie ma jednej „prawdziwej” liczby grup. - Mylenie z uczeniem nienadzorowanym samonadzorowanego (self-supervised) — to osobna bajka, gdzie etykiety generuje się automatycznie z samych danych.
Pojęcia powiązane
Uczenie nadzorowane (supervised learning), uczenie półnadzorowane, klastrowanie, redukcja wymiarowości, PCA, k-means, wykrywanie anomalii, feature engineering oraz embeddingi.