Clustering neboli shluková analýza je technika strojového učení, která seskupuje neoznačenou datovou sadu. Lze jej definovat jako „Způsob seskupování datových bodů do různých shluků sestávajících z podobných datových bodů. Objekty s možnými podobnostmi zůstávají ve skupině, která má menší nebo žádné podobnosti s jinou skupinou.“
Dělá to tak, že v neoznačeném souboru dat najde nějaké podobné vzory, jako je tvar, velikost, barva, chování atd., a rozdělí je podle přítomnosti a nepřítomnosti těchto podobných vzorů.
Je to an učení bez dozoru algoritmu není poskytován žádný dohled a pracuje s neoznačenou datovou sadou.
Po použití této techniky shlukování je každému clusteru nebo skupině přiděleno ID clusteru. Systém ML může toto ID použít ke zjednodušení zpracování velkých a komplexních datových sad.
Technika shlukování se běžně používá pro statistická analýza dat.
java mvc
Poznámka: Clustering je někde podobný jako klasifikační algoritmus , ale rozdíl je v typu datové sady, kterou používáme. Při klasifikaci pracujeme s označeným souborem dat, zatímco při shlukování pracujeme s neoznačeným souborem dat.
Příklad : Pojďme pochopit techniku shlukování na reálném příkladu Mall: Když navštívíme jakékoli nákupní centrum, můžeme pozorovat, že věci s podobným použitím jsou seskupeny dohromady. Například trička jsou seskupena v jedné sekci a kalhoty jsou v jiných sekcích, podobně jsou v sekci zelenina jablka, banány, mango atd. seskupeny do samostatných sekcí, abychom věci snadno zjistili. Technika shlukování také funguje stejným způsobem. Další příklady shlukování jsou seskupování dokumentů podle tématu.
Technika shlukování může být široce používána v různých úlohách. Některá nejběžnější použití této techniky jsou:
- Segmentace trhu
- Statistická analýza dat
- Analýza sociálních sítí
- Segmentace obrazu
- Detekce anomálií atd.
Kromě těchto obecných zvyklostí jej používají Amazonka ve svém systému doporučení, aby poskytoval doporučení podle předchozího vyhledávání produktů. Netflix také používá tuto techniku k doporučení filmů a webových seriálů svým uživatelům podle historie sledování.
co je obj v javě
Níže uvedený diagram vysvětluje fungování shlukovacího algoritmu. Můžeme vidět, že různé druhy ovoce jsou rozděleny do několika skupin s podobnými vlastnostmi.
Typy shlukovacích metod
Metody shlukování jsou široce rozděleny na Tvrdé shlukování (datový bod patří pouze do jedné skupiny) a Měkké shlukování (datové body mohou patřit i do jiné skupiny). Existují však i další různé přístupy shlukování. Níže jsou uvedeny hlavní metody shlukování používané ve strojovém učení:
Rozdělení do clusterů
Je to typ shlukování, které rozděluje data do nehierarchických skupin. To je také známé jako metoda založená na centroidech . Nejběžnějším příkladem dělení do clusterů je Algoritmus shlukování K-Means .
V tomto typu je datová sada rozdělena do sady k skupin, kde K se používá k definování počtu předdefinovaných skupin. Střed shluku je vytvořen tak, že vzdálenost mezi datovými body jednoho shluku je minimální ve srovnání s těžištěm jiného shluku.
Shlukování na základě hustoty
Metoda shlukování založená na hustotě spojuje oblasti s vysokou hustotou do shluků a libovolně tvarované distribuce se vytvářejí tak dlouho, dokud lze hustou oblast propojit. Tento algoritmus to dělá tak, že identifikuje různé shluky v datové sadě a spojuje oblasti s vysokou hustotou do shluků. Husté oblasti v datovém prostoru jsou od sebe odděleny řidšími oblastmi.
Tyto algoritmy mohou čelit potížím při shlukování datových bodů, pokud má datová sada různé hustoty a velké rozměry.
Klastrování založené na distribučním modelu
V metodě shlukování založené na distribučním modelu jsou data rozdělena na základě pravděpodobnosti, jak datová sada patří ke konkrétní distribuci. Seskupení se provádí za předpokladu, že některé distribuce jsou běžné Gaussovo rozdělení .
Příkladem tohoto typu je Algoritmus shlukování očekávání-maximalizace který používá gaussovské modely směsí (GMM).
algebra množin
Hierarchické shlukování
Hierarchické shlukování lze použít jako alternativu pro dělené shlukování, protože není nutné předem specifikovat počet shluků, které mají být vytvořeny. V této technice je datová sada rozdělena do shluků, aby se vytvořila stromová struktura, která se také nazývá a dendrogram . Pozorování nebo libovolný počet shluků lze vybrat řezáním stromu na správné úrovni. Nejběžnějším příkladem této metody je Aglomerativní hierarchický algoritmus .
Fuzzy Clustering
Fuzzy clustering je typ měkké metody, ve které datový objekt může patřit do více než jedné skupiny nebo clusteru. Každá datová sada má sadu koeficientů členství, které závisí na stupni členství ve shluku. Algoritmus Fuzzy C-means je příkladem tohoto typu shlukování; někdy je také známý jako algoritmus Fuzzy k-means.
Algoritmy shlukování
Clusterovací algoritmy lze rozdělit na základě jejich modelů, které jsou vysvětleny výše. Jsou publikovány různé typy shlukovacích algoritmů, ale běžně se používá jen několik. Algoritmus shlukování je založen na druhu dat, která používáme. Některé algoritmy například potřebují uhodnout počet shluků v daném souboru dat, zatímco některé potřebují najít minimální vzdálenost mezi pozorováním souboru dat.
Zde diskutujeme hlavně o populárních shlukovacích algoritmech, které jsou široce používány ve strojovém učení:
Aplikace Clusteringu
Níže jsou uvedeny některé běžně známé aplikace techniky shlukování ve strojovém učení: