Pri učení bez učiteľa sú údaje neoznačené. Algoritmus musí sám nájsť spoločné črty v údajoch. Ako sa však dá niečo také dosiahnuť?
Neoznačené údaje
Najprv si pripomeňme, čo nazývame „neoznačené“ údaje. Pri učení s učiteľom poznáme hodnoty x a y pre každú jednotku údajov, prípadne aj ďalšie premenné. Výhodou algoritmov strojového učenia je schopnosť spracovať veľké množstvo premenných.
Pri učení bez učiteľa však poznáme iba hodnoty x. Na rozdiel od učenia s učiteľom cieľom nie je predpovedať y, ale analyzovať všetky hodnoty x, aby sme odhalili spoločné charakteristiky v údajoch.
Clustering – zoskupovanie
Najznámejšou aplikáciou učenia bez učiteľa je zoskupovanie (clustering), teda zoskupenie údajov so spoločnými črtami.
Predstavte si, že chcete vylepšiť odporúčací systém pre platformu na streamovanie filmov. Aby ste to dosiahli, potrebujete lepšie pochopiť svojich používateľov a rozdeliť ich do profilových skupín. K dispozícii máte rôzne typy údajov: vek používateľov, priemerný počet filmov, ktoré sledujú mesačne, percento komédií alebo trilerov, ktoré preferujú, a podobne.
Všetky tieto hodnoty sú x hodnoty, ktoré vytvoria n-dimenzionálny bodový oblak. Predstavme si, že rozloženie v tomto oblaku nie je homogénne: niektoré body sú bližšie k sebe, iné ďalej. Úlohou clusteringu je vytvoriť skupiny definovaním hraníc medzi podmnožinami bodov.
Algoritmus K-means
V prípade jasne zoskupených bodov je proces jednoduchý: všetko sa zlúči dohromady. Ale čo v prípadoch, kde hranice nie sú jasné? Ako zabrániť tomu, aby sme používateľa, ktorý preferuje vesmírne opery, priradili k skupine fanúšikov hororových filmov?
Tu prichádzajú na scénu špecializované algoritmy na clustering, z ktorých najznámejší je algoritmus K-means. Tento algoritmus ponúka jednoduchý spôsob, ako pochopiť princíp clusteringu.
Ako funguje algoritmus K-means?
Vráťme sa k príkladu segmentácie používateľov a n-dimenzionálnemu bodovému oblaku. Pre lepšiu prehľadnosť si predstavme, že oblak má len 2 rozmery. Povedzme, že naším cieľom je vytvoriť 3 skupiny používateľov.
- Prvý krok: Náhodne umiestnime 3 body – tzv. centroidy – na graf. Každý bod v oblaku priradíme k najbližšiemu centroidu.
- Druhý krok: Posunieme centroidy do stredu každej skupiny.
- Opakujeme kroky 1 a 2: každý bod znovu priradíme k najbližšiemu centroidu, ktorý sa následne presunie do stredu skupiny. Tento proces pokračuje, kým nie je umiestnenie 3 centroidov optimálne.
A voilà! Máme 3 skupiny používateľov a môžeme im odporučiť ich ideálny sobotňajší večerný film!
Záver
Clustering je kľúčovou technikou učenia bez učiteľa, ktorá umožňuje efektívne segmentovať údaje. Jeho správna aplikácia môže priniesť významné zlepšenie pri návrhu personalizovaných odporúčaní a analýze dát.