logo

Clustering i Machine Learning

Clustering eller klyngeanalyse er en maskinlæringsteknik, som grupperer det umærkede datasæt. Det kan defineres som 'En måde at gruppere datapunkterne i forskellige klynger, bestående af lignende datapunkter. Objekterne med de mulige ligheder forbliver i en gruppe, der har mindre eller ingen ligheder med en anden gruppe.'

Det gør det ved at finde nogle lignende mønstre i det umærkede datasæt, såsom form, størrelse, farve, adfærd osv., og opdeler dem efter tilstedeværelsen og fraværet af disse lignende mønstre.

Det er en uovervåget læring metoden, derfor er der ikke givet overvågning til algoritmen, og den omhandler det umærkede datasæt.

Efter anvendelse af denne klyngeteknik er hver klynge eller gruppe forsynet med et klynge-ID. ML-systemet kan bruge dette id til at forenkle behandlingen af ​​store og komplekse datasæt.

prologsprog

Klyngeteknikken bruges almindeligvis til statistisk dataanalyse.

Bemærk: Clustering ligner et sted klassifikationsalgoritme , men forskellen er den type datasæt, vi bruger. Ved klassificering arbejder vi med det mærkede datasæt, hvorimod vi ved clustering arbejder med det umærkede datasæt.

Eksempel : Lad os forstå klyngeteknikken med det virkelige eksempel på Mall: Når vi besøger et indkøbscenter, kan vi observere, at tingene med lignende brug er grupperet sammen. Såsom t-shirts er grupperet i en sektion, og bukser er i andre sektioner, på samme måde er ved grøntsagsafdelinger, æbler, bananer, mangoer osv., grupperet i separate sektioner, så vi nemt kan finde ud af tingene. Klyngeteknikken fungerer også på samme måde. Andre eksempler på klyngedannelse er gruppering af dokumenter efter emnet.

Klyngeteknikken kan bruges bredt i forskellige opgaver. Nogle mest almindelige anvendelser af denne teknik er:

  • Markedssegmentering
  • Statistisk dataanalyse
  • Social netværksanalyse
  • Billedsegmentering
  • Anomalidetektion mv.

Bortset fra disse generelle anvendelser, bruges det af Amazon i sit anbefalingssystem for at give anbefalingerne i henhold til den tidligere søgning af produkter. Netflix bruger også denne teknik til at anbefale filmene og web-serien til sine brugere i henhold til visningshistorikken.

Nedenstående diagram forklarer, hvordan klyngealgoritmen fungerer. Vi kan se de forskellige frugter er opdelt i flere grupper med lignende egenskaber.

Clustering i Machine Learning

Typer af klyngemetoder

Klyngemetoderne er bredt opdelt i Hård klyngedannelse (datapunkt tilhører kun én gruppe) og Blød klynger (datapunkter kan også tilhøre en anden gruppe). Men der findes også andre forskellige tilgange til Clustering. Nedenfor er de vigtigste klyngemetoder, der bruges i maskinlæring:

    Opdeling af klynge Tæthedsbaseret klyngedannelse Distributionsmodelbaseret klyngedannelse Hierarkisk klyngedannelse Fuzzy Clustering

Opdeling af klynge

Det er en type klyngedannelse, der opdeler dataene i ikke-hierarkiske grupper. Det er også kendt som tyngdepunktsbaseret metode . Det mest almindelige eksempel på partitioneringsklynger er K-Means Clustering-algoritme .

I denne type er datasættet opdelt i et sæt af k grupper, hvor K bruges til at definere antallet af foruddefinerede grupper. Klyngecentret er skabt på en sådan måde, at afstanden mellem datapunkterne i en klynge er minimal sammenlignet med en anden klyngecentroid.

Clustering i Machine Learning

Tæthedsbaseret klyngedannelse

Den tæthedsbaserede klyngemetode forbinder de meget tætte områder til klynger, og de vilkårligt formede fordelinger dannes, så længe det tætte område kan forbindes. Denne algoritme gør det ved at identificere forskellige klynger i datasættet og forbinder områder med høj tæthed til klynger. De tætte områder i datarummet er opdelt fra hinanden af ​​tyndere områder.

Disse algoritmer kan have problemer med at gruppere datapunkterne, hvis datasættet har varierende tætheder og høje dimensioner.

Clustering i Machine Learning

Distributionsmodelbaseret klyngedannelse

I den distributionsmodelbaserede klyngemetode opdeles dataene ud fra sandsynligheden for, hvordan et datasæt tilhører en bestemt fordeling. Grupperingen udføres ved at antage nogle fordelinger almindeligt Gaussisk fordeling .

Eksemplet på denne type er Forventnings-maksimering Klyngealgoritme der bruger Gaussian Mixture Models (GMM).

Clustering i Machine Learning

Hierarkisk klyngedannelse

Hierarkisk clustering kan bruges som et alternativ til den opdelte clustering, da der ikke er noget krav om at forudspecificere antallet af klynger, der skal oprettes. I denne teknik er datasættet opdelt i klynger for at skabe en trælignende struktur, som også kaldes en dendrogram . Observationerne eller et hvilket som helst antal klynger kan vælges ved at skære træet på det korrekte niveau. Det mest almindelige eksempel på denne metode er Agglomerativ hierarkisk algoritme .

Clustering i Machine Learning

Fuzzy Clustering

Fuzzy clustering er en type blød metode, hvor et dataobjekt kan tilhøre mere end én gruppe eller klynge. Hvert datasæt har et sæt medlemskabskoefficienter, som afhænger af graden af ​​medlemskab for at være i en klynge. Fuzzy C-betyder algoritme er eksemplet på denne type klyngedannelse; det er nogle gange også kendt som Fuzzy k-middel-algoritmen.

Klyngealgoritmer

Clustering-algoritmerne kan opdeles baseret på deres modeller, der er forklaret ovenfor. Der er udgivet forskellige typer klyngealgoritmer, men kun få er almindeligt anvendte. Klyngealgoritmen er baseret på den slags data, vi bruger. Såsom nogle algoritmer skal gætte antallet af klynger i det givne datasæt, mens nogle er nødvendige for at finde minimumsafstanden mellem observation af datasættet.

Her diskuterer vi hovedsageligt populære Clustering-algoritmer, der er meget udbredt i maskinlæring:

    K-Means algoritme:K-middel-algoritmen er en af ​​de mest populære klyngealgoritmer. Den klassificerer datasættet ved at opdele prøverne i forskellige klynger med lige store varianser. Antallet af klynger skal angives i denne algoritme. Det er hurtigt med færre krævede beregninger, med den lineære kompleksitet af På). Middel-forskydningsalgoritme:Mean-shift-algoritmen forsøger at finde de tætte områder i den jævne tæthed af datapunkter. Det er et eksempel på en tyngdepunktsbaseret model, der arbejder på at opdatere kandidaterne for tyngdepunkt til at være centrum for punkterne inden for en given region.DBSCAN-algoritme:Den står til tæthedsbaseret rumlig klyngning af applikationer med støj . Det er et eksempel på en tæthedsbaseret model svarende til middelforskydningen, men med nogle bemærkelsesværdige fordele. I denne algoritme er områderne med høj tæthed adskilt af områderne med lav tæthed. På grund af dette kan klyngerne findes i enhver vilkårlig form.Forventningsmaksimering Clustering ved hjælp af GMM:Denne algoritme kan bruges som et alternativ til k-middel-algoritmen eller til de tilfælde, hvor K-middel kan mislykkes. I GMM antages det, at datapunkterne er Gaussisk fordelt.Agglomerativ hierarkisk algoritme:Den agglomerative hierarkiske algoritme udfører bottom-up hierarkisk clustering. I dette behandles hvert datapunkt som en enkelt klynge i starten og fusioneres derefter successivt. Klyngehierarkiet kan repræsenteres som en træstruktur.Affinitetsudbredelse:Det er forskelligt fra andre klyngealgoritmer, da det ikke kræver at specificere antallet af klynger. I dette sender hvert datapunkt en besked mellem parret af datapunkter indtil konvergens. Den har O(N2T) tidskompleksitet, som er den største ulempe ved denne algoritme.

Anvendelser af Clustering

Nedenfor er nogle almindeligt kendte anvendelser af klyngeteknikker i Machine Learning:

    Ved identifikation af kræftceller:Klyngealgoritmerne bruges i vid udstrækning til identifikation af kræftceller. Det opdeler datasæt for kræft og ikke-kræft i forskellige grupper.I søgemaskiner:Søgemaskiner arbejder også på klyngeteknikken. Søgeresultatet vises baseret på det objekt, der er tættest på søgeforespørgslen. Det gør det ved at gruppere lignende dataobjekter i én gruppe, der er langt fra de andre uens objekter. Det nøjagtige resultat af en forespørgsel afhænger af kvaliteten af ​​den anvendte klyngealgoritme.Kundesegmentering:Det bruges i markedsundersøgelser til at segmentere kunderne baseret på deres valg og præferencer.I biologi:Det bruges i biologistrømmen til at klassificere forskellige arter af planter og dyr ved hjælp af billedgenkendelsesteknikken.I landbrug:Klyngeteknikken bruges til at identificere arealet med lignende arealanvendelse i GIS-databasen. Dette kan være meget nyttigt for at finde ud af, at til hvilket formål den pågældende jord skal bruges, hvilket betyder, til hvilket formål den er mere egnet.