Clustering sau analiza cluster este o tehnică de învățare automată, care grupează setul de date neetichetat. Poate fi definit ca „O modalitate de grupare a punctelor de date în grupuri diferite, constând din puncte de date similare. Obiectele cu posibile asemănări rămân într-un grup care are mai puține sau deloc asemănări cu un alt grup.'
O face prin găsirea unor modele similare în setul de date neetichetat, cum ar fi forma, dimensiunea, culoarea, comportamentul etc. și le împarte în funcție de prezența și absența acelor modele similare.
Este un învăţare nesupravegheată metoda, prin urmare nu este furnizată nicio supraveghere algoritmului și se ocupă de setul de date neetichetat.
După aplicarea acestei tehnici de grupare, fiecare cluster sau grup este furnizat cu un cluster-ID. Sistemul ML poate folosi acest id pentru a simplifica procesarea seturilor de date mari și complexe.
Tehnica grupării este folosită în mod obișnuit pentru analiza datelor statistice.
Notă: Clustering-ul este undeva similar cu algoritm de clasificare , dar diferența este tipul de set de date pe care îl folosim. În clasificare, lucrăm cu setul de date etichetat, în timp ce în grupare, lucrăm cu setul de date neetichetat.
Exemplu : Să înțelegem tehnica de grupare cu exemplul real al Mall: Când vizităm orice centru comercial, putem observa că lucrurile cu utilizare similară sunt grupate împreună. Precum tricourile sunt grupate într-o secțiune, iar pantalonii sunt la alte secțiuni, la fel, la secțiunile de legume, merele, bananele, Mango, etc., sunt grupate în secțiuni separate, astfel încât să putem afla cu ușurință lucrurile. Tehnica de grupare funcționează, de asemenea, în același mod. Alte exemple de grupare sunt gruparea documentelor în funcție de subiect.
Tehnica de grupare poate fi utilizată pe scară largă în diverse sarcini. Unele dintre cele mai frecvente utilizări ale acestei tehnici sunt:
- Segmentarea pieței
- Analiza datelor statistice
- Analiza rețelelor sociale
- Segmentarea imaginii
- Detectarea anomaliilor etc.
În afară de aceste utilizări generale, este folosit de către Amazon în sistemul său de recomandări pentru a oferi recomandări conform căutării anterioare de produse. Netflix De asemenea, folosește această tehnică pentru a recomanda filmele și serialele web utilizatorilor săi conform istoricului vizionărilor.
Diagrama de mai jos explică funcționarea algoritmului de grupare. Putem vedea că diferitele fructe sunt împărțite în mai multe grupuri cu proprietăți similare.
Tipuri de metode de grupare
Metodele de grupare sunt împărțite în general în Agrupare grea (punctul de date aparține unui singur grup) și Clustering moale (punctele de date pot aparține și unui alt grup). Dar există și alte abordări diferite ale Clustering-ului. Mai jos sunt principalele metode de grupare utilizate în învățarea automată:
Partitionare Clustering
Este un tip de grupare care împarte datele în grupuri non-ierarhice. Este cunoscut și sub numele de metoda bazata pe centroid . Cel mai obișnuit exemplu de grupare de partiționare este Algoritmul K-Means Clustering .
În acest tip, setul de date este împărțit într-un set de k grupuri, unde K este folosit pentru a defini numărul de grupuri predefinite. Centrul cluster este creat în așa fel încât distanța dintre punctele de date ale unui cluster este minimă în comparație cu un alt centroid de cluster.
Clustering bazat pe densitate
Metoda de grupare bazată pe densitate conectează zonele foarte dense în clustere, iar distribuțiile de formă arbitrară sunt formate atâta timp cât regiunea densă poate fi conectată. Acest algoritm o face prin identificarea diferitelor clustere din setul de date și conectează zonele cu densități mari în clustere. Zonele dense din spațiul de date sunt împărțite unele de altele prin zone mai rare.
Acești algoritmi pot întâmpina dificultăți în gruparea punctelor de date dacă setul de date are densități diferite și dimensiuni mari.
Clustering bazat pe modele de distribuție
În metoda de grupare bazată pe modelul de distribuție, datele sunt împărțite în funcție de probabilitatea în care un set de date aparține unei anumite distribuții. Gruparea se face prin asumarea unor distribuții în mod obișnuit Distribuția Gaussiană .
Exemplul de acest tip este Algoritmul de Clustering Expectation-Maximization care utilizează modele de amestec Gaussian (GMM).
Clustering ierarhic
Gruparea ierarhică poate fi utilizată ca alternativă pentru gruparea partiționată, deoarece nu este necesară prespecificarea numărului de clustere care urmează să fie create. În această tehnică, setul de date este împărțit în clustere pentru a crea o structură arborescentă, numită și a dendrograma . Observațiile sau orice număr de grupuri pot fi selectate prin tăierea copacului la nivelul corect. Cel mai comun exemplu al acestei metode este Algoritm ierarhic aglomerativ .
Clustering neclar
Gruparea fuzzy este un tip de metodă soft în care un obiect de date poate aparține mai mult de un grup sau cluster. Fiecare set de date are un set de coeficienți de apartenență, care depind de gradul de apartenență la un cluster. Fuzzy C-means algoritm este exemplul acestui tip de clustering; este uneori cunoscut și ca algoritmul Fuzzy k-means.
Algoritmi de grupare
Algoritmii de clusterizare pot fi împărțiți pe baza modelelor lor, care sunt explicate mai sus. Există diferite tipuri de algoritmi de grupare publicate, dar doar câțiva sunt utilizați în mod obișnuit. Algoritmul de grupare se bazează pe tipul de date pe care le folosim. De exemplu, unii algoritmi trebuie să ghicească numărul de clustere din setul de date dat, în timp ce unii sunt necesari să găsească distanța minimă dintre observarea setului de date.
Aici discutăm în principal algoritmi de clusterizare populari care sunt utilizați pe scară largă în învățarea automată:
Aplicații ale Clusteringului
Mai jos sunt câteva aplicații cunoscute în mod obișnuit ale tehnicii de clustering în Machine Learning: