Obsah
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
