logo

Clustering în Machine Learning

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.

Clustering în Machine Learning

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 Clustering bazat pe densitate Clustering bazat pe modele de distribuție Clustering ierarhic Clustering neclar

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 în Machine Learning

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 în Machine Learning

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 în Machine Learning

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 în Machine Learning

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ă:

    Algoritmul K-Means:Algoritmul k-means este unul dintre cei mai populari algoritmi de grupare. Clasifică setul de date prin împărțirea eșantioanelor în diferite grupuri de varianțe egale. Numărul de clustere trebuie specificat în acest algoritm. Este rapid, cu mai puține calcule necesare, cu complexitatea liniară a Pe). Algoritmul de schimbare medie:Algoritmul de schimbare medie încearcă să găsească zonele dense în densitatea netedă a punctelor de date. Este un exemplu de model bazat pe centroid, care funcționează la actualizarea candidaților pentru centroid pentru a fi centrul punctelor dintr-o regiune dată.Algoritmul DBSCAN:Sta în picioare pentru clusterizarea spațială bazată pe densitate a aplicațiilor cu zgomot . Este un exemplu de model bazat pe densitate similar cu deplasarea medie, dar cu unele avantaje remarcabile. În acest algoritm, zonele cu densitate mare sunt separate de zonele cu densitate scăzută. Din acest motiv, clusterele pot fi găsite în orice formă arbitrară.Clusterizarea așteptărilor-maximizare folosind GMM:Acest algoritm poate fi folosit ca alternativă pentru algoritmul k-means sau pentru acele cazuri în care K-means poate fi eșuat. În GMM, se presupune că punctele de date sunt distribuite gaussian.Algoritm ierarhic aglomerativ:Algoritmul ierarhic aglomerativ realizează gruparea ierarhică de jos în sus. În acest sens, fiecare punct de date este tratat ca un singur cluster la început și apoi fuzionat succesiv. Ierarhia clusterului poate fi reprezentată ca o structură arborescentă.Propagarea afinității:Este diferit de alți algoritmi de clustering, deoarece nu necesită specificarea numărului de clustere. În aceasta, fiecare punct de date trimite un mesaj între perechea de puncte de date până la convergență. Are O(N2T) complexitatea timpului, care este principalul dezavantaj al acestui algoritm.

Aplicații ale Clusteringului

Mai jos sunt câteva aplicații cunoscute în mod obișnuit ale tehnicii de clustering în Machine Learning:

    În identificarea celulelor canceroase:Algoritmii de grupare sunt utilizați pe scară largă pentru identificarea celulelor canceroase. Împarte seturile de date canceroase și non-canceroase în diferite grupuri.În motoarele de căutare:Motoarele de căutare lucrează și la tehnica de grupare. Rezultatul căutării apare pe baza celui mai apropiat obiect de interogarea de căutare. O face prin gruparea obiectelor de date similare într-un grup care este departe de celelalte obiecte diferite. Rezultatul exact al unei interogări depinde de calitatea algoritmului de clustering utilizat.Segmentarea clienților:Este folosit în studiile de piață pentru a segmenta clienții în funcție de alegerea și preferințele acestora.În biologie:Este folosit în fluxul de biologie pentru a clasifica diferite specii de plante și animale folosind tehnica de recunoaștere a imaginii.În utilizarea terenurilor:Tehnica grupării este utilizată în identificarea zonei de utilizare similară a terenurilor în baza de date GIS. Acest lucru poate fi foarte util pentru a descoperi că în ce scop ar trebui utilizat terenul anume, adică pentru ce scop este mai potrivit.