Shlukování (Clustering)
Shlukování (nebo také clustering) je metoda učení bez učitele, která spočívá v rozdělování datových objektů do skupin (shluků) tak, aby si objekty uvnitř jedné skupiny byly co nejvíce podobné, zatímco objekty z různých skupin byly co nejvíce odlišné.
Na rozdíl od klasifikace zde nemáme předem definované třídy. Algoritmus hledá přirozené hranice v datech na základě jejich vlastností.
1. Základní principy měření podobnosti
Aby mohl algoritmus shlukovat, musí umět změřit „vzdálenost“ mezi dvěma body. Nejčastěji se používají:
Euklidovská vzdálenost: Přímá vzdálenost mezi dvěma body v prostoru (vhodná pro numerická data).
Manhattanská vzdálenost: Součet absolutních rozdílů souřadnic (cesta městem s pravoúhlými ulicemi).
Kosinová podobnost: Měří úhel mezi dvěma vektory (často používaná u textových dat).
2. Klíčové algoritmy shlukování
A. K-Means (K-středy)
Nejrozšířenější algoritmus. Rozděluje data do předem určeného počtu shluků (K).
Jak funguje: Náhodně zvolí K středů (centroidů). Každý bod přiřadí k nejbližšímu středu. Poté středy přepočítá jako průměr přiřazených bodů a proces opakuje, dokud se středy nepřestanou hýbat.
Výhody: Velmi rychlý a efektivní.
Nevýhody: Nutnost předem znát počet shluků K, citlivost na odlehlé hodnoty.
B. DBSCAN (Hustotní shlukování)
Hledá oblasti s vysokou hustotou bodů, které jsou odděleny oblastmi s nízkou hustotou.
Jak funguje: Seskupuje body, které mají v určitém okolí dostatečný počet sousedů.
Výhody: Dokáže najít shluky libovolného tvaru (ne jen kruhové) a automaticky identifikuje šum (body, které nepatří nikam).
Nevýhody: Špatně funguje u dat s výrazně odlišnou hustotou v různých částech.
C. Hierarchické shlukování
Vytváří stromovou strukturu shluků (dendrogram).
Aglomerativní: Začne s každým bodem jako samostatným shlukem a postupně ty nejbližší spojuje.
Divizivní: Začne se všemi body v jednom shluku a postupně je dělí.
Výhoda: Názorná vizualizace vztahů mezi daty.
3. Jak určit správný počet shluků (K)?
U algoritmů jako K-Means je určení správného počtu skupin největší výzvou. Používají se dvě hlavní metody:
1. **Loketní metoda (Elbow Method):** Graficky znázorníme součet čtverců vzdáleností bodů od středů. Tam, kde se křivka prudce ohne ("loket"), je ideální počet shluků.
2. **Siluetový koeficient (Silhouette Score):** Měří, jak dobře bod zapadá do svého shluku ve srovnání s ostatními shluky. Hodnota se pohybuje od -1 do 1 (čím vyšší, tím lépe).
4. Praktické využití v IT a byznysu
Marketing: Segmentace zákazníků pro personalizované kampaně.
Zpracování obrazu: Kvantování barev (snížení počtu barev v obrázku při zachování vzhledu).
Sociální sítě: Identifikace komunit se společnými zájmy.
Biologie: Seskupování genů nebo organismů s podobnými vlastnostmi.
5. Úskalí a omezení
Prokletí dimenzionality: Ve velmi vysokých dimenzích (mnoho sloupců dat) se vzdálenosti mezi všemi body stávají téměř stejnými, což shlukování ztěžuje.
Škálování dat: Protože většina algoritmů závisí na vzdálenosti, je nutné data předem normalizovat (např. aby výška v metrech neměla menší váhu než váha v gramech).
Související články:
Tagy: ai ml clustering k-means dbscan unsupervised_learning