Klastrovanie alebo klastrová analýza je technika strojového učenia, ktorá zoskupuje neoznačený súbor údajov. Dá sa definovať ako „Spôsob zoskupovania údajových bodov do rôznych zhlukov, ktoré pozostávajú z podobných údajových bodov. Objekty s možnou podobnosťou zostávajú v skupine, ktorá má menšie alebo žiadne podobnosti s inou skupinou.“
Robí to nájdením niektorých podobných vzorov v neoznačenom súbore údajov, ako je tvar, veľkosť, farba, správanie atď., a rozdeľuje ich podľa prítomnosti a neprítomnosti týchto podobných vzorov.
Je to učenie bez dozoru algoritmu nie je poskytnutý žiadny dohľad a pracuje s neoznačeným súborom údajov.
Po použití tejto techniky klastrovania sa každému klastru alebo skupine poskytne identifikátor klastra. Systém ML môže použiť toto ID na zjednodušenie spracovania veľkých a zložitých súborov údajov.
Technika klastrovania sa bežne používa na štatistická analýza údajov.
Poznámka: Klastrovanie je niekde podobné ako klasifikačný algoritmus , ale rozdiel je v type súboru údajov, ktorý používame. Pri klasifikácii pracujeme s označeným súborom údajov, zatiaľ čo pri zhlukovaní pracujeme s neoznačeným súborom údajov.
Príklad : Poďme pochopiť techniku zhlukovania na príklade Mall v reálnom svete: Keď navštívime akékoľvek nákupné centrum, môžeme pozorovať, že veci s podobným využitím sú zoskupené. Napríklad tričká sú zoskupené v jednej sekcii a nohavice sú v inej sekcii, podobne ako v sekciách zelenina, jablká, banány, mango atď., sú zoskupené v samostatných sekciách, aby sme veci ľahko zistili. Technika klastrovania tiež funguje rovnakým spôsobom. Ďalšími príkladmi klastrovania je zoskupovanie dokumentov podľa témy.
Technika klastrovania môže byť široko používaná v rôznych úlohách. Niektoré najbežnejšie použitia tejto techniky sú:
- Segmentácia trhu
- Štatistická analýza údajov
- Analýza sociálnych sietí
- Segmentácia obrazu
- Detekcia anomálií atď.
Okrem týchto všeobecných použití ho používajú Amazon vo svojom systéme odporúčaní poskytovať odporúčania podľa predchádzajúceho vyhľadávania produktov. Netflix tiež používa túto techniku na odporúčanie filmov a webových seriálov svojim používateľom podľa histórie pozerania.
Nižšie uvedený diagram vysvetľuje fungovanie klastrovacieho algoritmu. Vidíme, že rôzne druhy ovocia sú rozdelené do niekoľkých skupín s podobnými vlastnosťami.
Typy metód klastrovania
Metódy klastrovania sa vo všeobecnosti delia na Tvrdé zhlukovanie (údajový bod patrí len do jednej skupiny) a Mäkké zhlukovanie (dátové body môžu patriť aj do inej skupiny). Existujú však aj iné rôzne prístupy klastrovania. Nižšie sú uvedené hlavné metódy klastrovania používané v strojovom učení:
Rozdelenie do klastrov
Ide o typ klastrovania, ktorý rozdeľuje údaje do nehierarchických skupín. Je tiež známy ako metóda založená na centroidoch . Najbežnejším príkladom delenia klastrovania je Algoritmus klastrovania K-Means .
V tomto type je množina údajov rozdelená na množinu k skupín, pričom K sa používa na definovanie počtu preddefinovaných skupín. Stred klastra je vytvorený tak, že vzdialenosť medzi dátovými bodmi jedného klastra je minimálna v porovnaní s ťažiskom iného klastra.
Zhlukovanie založené na hustote
Metóda zhlukovania založená na hustote spája oblasti s vysokou hustotou do zhlukov a vytvárajú sa ľubovoľne tvarované distribúcie, pokiaľ je možné spojiť hustú oblasť. Tento algoritmus to robí identifikáciou rôznych zhlukov v súbore údajov a spája oblasti s vysokou hustotou do zhlukov. Husté oblasti v dátovom priestore sú od seba rozdelené redšími oblasťami.
Tieto algoritmy môžu čeliť ťažkostiam pri zoskupovaní údajových bodov, ak má súbor údajov rôzne hustoty a veľké rozmery.
Klastrovanie založené na distribučnom modeli
V metóde klastrovania založenej na modeli distribúcie sa údaje rozdeľujú na základe pravdepodobnosti toho, ako množina údajov patrí ku konkrétnej distribúcii. Zoskupenie sa vykonáva za predpokladu, že niektoré distribúcie sú bežné Gaussovo rozdelenie .
Príkladom tohto typu je Algoritmus zhlukovania očakávaní a maximalizácie ktorý používa Gaussove modely zmesí (GMM).
Hierarchické klastrovanie
Hierarchické klastrovanie sa môže použiť ako alternatíva pre rozdelené klastrovanie, pretože nie je potrebné vopred špecifikovať počet klastrov, ktoré sa majú vytvoriť. Pri tejto technike je súbor údajov rozdelený do zhlukov, aby sa vytvorila stromová štruktúra, ktorá sa tiež nazýva a dendrogram . Pozorovania alebo ľubovoľný počet zhlukov je možné vybrať rezom stromu na správnej úrovni. Najbežnejším príkladom tejto metódy je Aglomeratívny hierarchický algoritmus .
Fuzzy Clustering
Fuzzy klastrovanie je typ mäkkej metódy, v ktorej môže dátový objekt patriť do viac ako jednej skupiny alebo klastra. Každý súbor údajov má súbor koeficientov členstva, ktoré závisia od stupňa členstva v klastri. Algoritmus Fuzzy C-znamená je príkladom tohto typu klastrovania; niekedy je tiež známy ako algoritmus Fuzzy k-means.
Algoritmy klastrovania
Algoritmy klastrovania možno rozdeliť na základe ich modelov, ktoré sú vysvetlené vyššie. Existujú rôzne typy klastrovacích algoritmov publikovaných, ale len niekoľko z nich sa bežne používa. Algoritmus klastrovania je založený na druhu údajov, ktoré používame. Napríklad niektoré algoritmy potrebujú uhádnuť počet zhlukov v danom súbore údajov, zatiaľ čo niektoré musia nájsť minimálnu vzdialenosť medzi pozorovaním súboru údajov.
Tu diskutujeme hlavne o populárnych klastrovacích algoritmoch, ktoré sú široko používané v strojovom učení:
Aplikácie klastrovania
Nižšie sú uvedené niektoré bežne známe aplikácie techniky klastrovania v strojovom učení: