logo

Klustring i maskininlärning

I den verkliga världen har inte alla data vi arbetar med en målvariabel. Denna typ av data kan inte analyseras med hjälp av övervakade inlärningsalgoritmer. Vi behöver hjälp av oövervakade algoritmer. En av de mest populära typerna av analyser under oövervakat lärande är kundsegmentering för riktade annonser, eller inom medicinsk bildbehandling för att hitta okända eller nya infekterade områden och många fler användningsfall som vi kommer att diskutera vidare i den här artikeln.

Innehållsförteckning

Vad är Clustering?

Uppgiften att gruppera datapunkter baserat på deras likhet med varandra kallas Clustering eller Cluster Analysis. Denna metod definieras under grenen av Oövervakat lärande , som syftar till att få insikter från omärkta datapunkter, det vill säga till skillnad från övervakat lärande vi har ingen målvariabel.



Klustring syftar till att bilda grupper av homogena datapunkter från en heterogen datauppsättning. Den utvärderar likheten baserat på ett mått som euklidiskt avstånd, Cosinus-likhet, Manhattan-avstånd, etc. och grupperar sedan poängen med högsta likhetspoäng.

Till exempel, i grafen nedan kan vi tydligt se att det finns 3 cirkulära kluster som bildas på basis av avstånd.

Klustring i maskininlärning

Nu är det inte nödvändigt att de bildade klustren måste vara cirkulära till formen. Formen på kluster kan vara godtycklig. Det finns många algoritmer som fungerar bra med att detektera godtyckligt formade kluster.

java datatyper

Till exempel, i nedanstående graf kan vi se att de bildade klustren inte är cirkulära till formen.

Godtyckligt formade kluster identifierade genom klusteranalys

Typer av kluster

I stort sett finns det två typer av klustring som kan utföras för att gruppera liknande datapunkter:

  • Hård klustring: I denna typ av klustring tillhör varje datapunkt ett kluster helt eller inte. Låt oss till exempel säga att det finns 4 datapunkter och vi måste gruppera dem i 2 kluster. Så varje datapunkt kommer antingen att tillhöra kluster 1 eller kluster 2.
Datapunkter Kluster
A C1
B C2
C C2
D C1
  • Mjuk klustring: I den här typen av klustring, istället för att tilldela varje datapunkt till ett separat kluster, utvärderas en sannolikhet eller sannolikhet för att den punkten är det klustret. Låt oss till exempel säga att det finns 4 datapunkter och vi måste gruppera dem i 2 kluster. Så vi kommer att utvärdera sannolikheten för en datapunkt som tillhör båda klustren. Denna sannolikhet beräknas för alla datapunkter.
Datapunkter Sannolikhet för C1 Sannolikhet för C2
A 0,91 0,09
B 0,3 0,7
C 0,17 0,83
D 1 0

Användningar av Clustering

Innan vi börjar med typer av klustringsalgoritmer kommer vi att gå igenom användningsfallen för klustringsalgoritmer. Klustringsalgoritmer används huvudsakligen för:

  • Marknadssegmentering – Företag använder klustring för att gruppera sina kunder och använder riktade annonser för att locka fler publik.
  • Analys av sociala nätverk – Sociala medier använder din data för att förstå ditt surfbeteende och förse dig med riktade vänrekommendationer eller innehållsrekommendationer.
  • Medicinsk avbildning – Läkare använder klustering för att ta reda på sjuka områden i diagnostiska bilder som röntgenstrålar.
  • Anomalidetektering – För att hitta extremvärden i en ström av realtidsdatauppsättningar eller förutsäga bedrägliga transaktioner kan vi använda klustring för att identifiera dem.
  • Förenkla arbetet med stora datamängder – Varje kluster får ett kluster-ID efter att klustringen är klar. Nu kan du reducera en funktionsuppsättnings hela funktionsuppsättning till dess kluster-ID. Klustring är effektivt när det kan representera ett komplicerat fall med ett enkelt kluster-ID. Med samma princip kan klustring av data göra komplexa datauppsättningar enklare.

Det finns många fler användningsfall för klustring men det finns några av de stora och vanliga användningsfallen för klustring. Framöver kommer vi att diskutera klustringsalgoritmer som hjälper dig att utföra ovanstående uppgifter.

Typer av klustringsalgoritmer

På ytnivå hjälper klustring vid analys av ostrukturerad data. Grafer, det kortaste avståndet och datapunkternas täthet är några av de element som påverkar klusterbildningen. Klustring är processen för att bestämma hur relaterade objekten är baserat på ett mått som kallas likhetsmåttet. Likhetsmått är lättare att hitta i mindre uppsättningar funktioner. Det blir svårare att skapa likhetsmått när antalet funktioner ökar. Beroende på vilken typ av klustringsalgoritm som används i datautvinning, används flera tekniker för att gruppera data från datamängderna. I denna del beskrivs klustringsteknikerna. Olika typer av klustringsalgoritmer är:

  1. Centroid-baserad klustring (partitioneringsmetoder)
  2. Densitetsbaserad klustring (modellbaserade metoder)
  3. Anslutningsbaserad klustring (hierarkisk klustring)
  4. Distributionsbaserad klustering

Vi kommer att gå igenom var och en av dessa typer i korthet.

1. Partitioneringsmetoder är de enklaste klustringsalgoritmerna. De grupperar datapunkter utifrån sin närhet. I allmänhet är likhetsmåttet som valts för dessa algoritmer euklidiskt avstånd, Manhattan-avstånd eller Minkowski-avstånd. Datauppsättningarna är separerade i ett förutbestämt antal kluster, och varje kluster refereras av en vektor av värden. Jämfört med vektorvärdet visar indatavariabeln ingen skillnad och ansluter sig till klustret.

handledning för javafx

Den primära nackdelen med dessa algoritmer är kravet att vi fastställer antalet kluster, k, antingen intuitivt eller vetenskapligt (med armbågsmetoden) innan något klustringsmaskininlärningssystem börjar allokera datapunkterna. Trots detta är det fortfarande den mest populära typen av klustring. K-betyder och K-medoider klustring är några exempel på denna typ av klustring.

2. Densitetsbaserad klustring (modellbaserade metoder)

Densitetsbaserad klustring, en modellbaserad metod, hittar grupper baserat på tätheten av datapunkter. I motsats till tyngdpunktsbaserad klustring, som kräver att antalet kluster är fördefinierat och är känsligt för initiering, bestämmer densitetsbaserad kluster antalet kluster automatiskt och är mindre känsligt för startpositioner. De är bra på att hantera kluster av olika storlekar och former, vilket gör dem idealiska för datauppsättningar med oregelbundet formade eller överlappande kluster. Dessa metoder hanterar både täta och glesa dataregioner genom att fokusera på lokal täthet och kan särskilja kluster med en mängd olika morfologier.

Däremot har tyngdpunktsbaserad gruppering, som k-medel, problem med att hitta godtyckligt formade kluster. På grund av dess förinställda antal klusterkrav och extrema känslighet för den initiala positioneringen av tyngdpunkter, kan resultaten variera. Dessutom begränsar tendensen hos tyngdpunktsbaserade tillvägagångssätt att producera sfäriska eller konvexa kluster deras förmåga att hantera komplicerade eller oregelbundet formade kluster. Sammanfattningsvis övervinner densitetsbaserad klustring nackdelarna med tyngdpunktsbaserade tekniker genom att autonomt välja klusterstorlekar, vara motståndskraftig mot initiering och framgångsrikt fånga kluster av olika storlekar och former. Den mest populära densitetsbaserade klustringsalgoritmen är DBSCAN .

3. Anslutningsbaserad klustring (hierarkisk klustring)

En metod för att sammanställa relaterade datapunkter till hierarkiska kluster kallas hierarkisk klustring. Varje datapunkt beaktas initialt som ett separat kluster, som sedan kombineras med de kluster som är mest lika för att bilda ett stort kluster som innehåller alla datapunkter.

Fundera på hur du kan ordna en samling föremål baserat på hur lika de är. Varje objekt börjar som sitt eget kluster vid basen av trädet när man använder hierarkisk klustring, vilket skapar ett dendrogram, en trädliknande struktur. De närmaste paren av kluster kombineras sedan till större kluster efter att algoritmen undersökt hur lika objekten är varandra. När varje objekt är i ett kluster högst upp i trädet har sammanslagningsprocessen avslutats. Att utforska olika granularitetsnivåer är en av de roliga sakerna med hierarkisk klustring. För att få ett givet antal kluster kan du välja att klippa dendrogram på en viss höjd. Ju mer lika två objekt är inom ett kluster, desto närmare är de. Det är jämförbart med att klassificera föremål enligt deras släktträd, där de närmaste släktingarna är samlade och de bredare grenarna betecknar mer allmänna kopplingar. Det finns två metoder för hierarkisk klustring:

  • Delande klustring : Det följer en top-down-strategi, här betraktar vi alla datapunkter som en del av ett stort kluster och sedan delas detta kluster in i mindre grupper.
  • Agglomerativ klustring : Det följer en bottom-up-strategi, här betraktar vi alla datapunkter som en del av individuella kluster och sedan klubbas dessa kluster ihop till ett stort kluster med alla datapunkter.

4. Distributionsbaserad klustering

Med hjälp av distributionsbaserad klustring genereras och organiseras datapunkter i enlighet med deras benägenhet att falla in i samma sannolikhetsfördelning (som en Gaussisk, binomial eller annat) inom data. Dataelementen grupperas med en sannolikhetsbaserad fördelning som är baserad på statistiska fördelningar. Inkluderat är dataobjekt som har större sannolikhet att vara i klustret. En datapunkt är mindre sannolikt att inkluderas i ett kluster ju längre den är från klustrets centrala punkt, som finns i varje kluster.

En anmärkningsvärd nackdel med densitet och gränsbaserade tillvägagångssätt är behovet av att specificera klustren a priori för vissa algoritmer, och i första hand definitionen av klusterformen för huvuddelen av algoritmer. Det måste finnas minst en inställning eller hyperparameter vald, och även om det ska vara enkelt, kan det få oväntade konsekvenser att göra fel. Distributionsbaserad klustring har en klar fördel jämfört med närhet och tyngdpunktsbaserade klustringsmetoder när det gäller flexibilitet, noggrannhet och klusterstruktur. Nyckelfrågan är att, för att undvika överanpassning , många klustringsmetoder fungerar bara med simulerad eller tillverkad data, eller när huvuddelen av datapunkterna verkligen tillhör en förinställd distribution. Den mest populära distributionsbaserade klustringsalgoritmen är Gaussisk blandningsmodell .

Tillämpningar av Clustering inom olika områden:

  1. Marknadsföring: Den kan användas för att karakterisera och upptäcka kundsegment i marknadsföringssyfte.
  2. Biologi: Den kan användas för klassificering mellan olika arter av växter och djur.
  3. Bibliotek: Den används för att gruppera olika böcker utifrån ämnen och information.
  4. Försäkring: Den används för att erkänna kunderna, deras policyer och identifiera bedrägerierna.
  5. Stadsplanering: Det används för att göra grupper av hus och för att studera deras värden baserat på deras geografiska läge och andra faktorer som finns.
  6. Jordbävningsstudier: Genom att lära oss de jordbävningsdrabbade områdena kan vi fastställa farliga zoner.
  7. Bildbehandling : Klustring kan användas för att gruppera liknande bilder, klassificera bilder baserat på innehåll och identifiera mönster i bilddata.
  8. Genetik: Clustering används för att gruppera gener som har liknande uttrycksmönster och identifiera gennätverk som samverkar i biologiska processer.
  9. Finansiera: Clustering används för att identifiera marknadssegment baserat på kundbeteende, identifiera mönster i aktiemarknadsdata och analysera risker i investeringsportföljer.
  10. Kundservice: Clustering används för att gruppera kundförfrågningar och klagomål i kategorier, identifiera vanliga problem och utveckla riktade lösningar.
  11. Tillverkning : Clustering används för att gruppera liknande produkter, optimera produktionsprocesser och identifiera defekter i tillverkningsprocesser.
  12. Medicinsk diagnos: Clustering används för att gruppera patienter med liknande symtom eller sjukdomar, vilket hjälper till att ställa korrekta diagnoser och identifiera effektiva behandlingar.
  13. Spårning av bedrägerier: Clustering används för att identifiera misstänkta mönster eller anomalier i finansiella transaktioner, vilket kan hjälpa till att upptäcka bedrägerier eller andra ekonomiska brott.
  14. Trafikanalys: Clustering används för att gruppera liknande mönster av trafikdata, såsom rusningstid, rutter och hastigheter, vilket kan hjälpa till att förbättra transportplanering och infrastruktur.
  15. Analys av sociala nätverk: Clustering används för att identifiera gemenskaper eller grupper inom sociala nätverk, vilket kan hjälpa till att förstå socialt beteende, inflytande och trender.
  16. Cybersäkerhet: Clustering används för att gruppera liknande mönster av nätverkstrafik eller systembeteende, vilket kan hjälpa till att upptäcka och förhindra cyberattacker.
  17. Klimatanalys: Clustering används för att gruppera liknande mönster av klimatdata, såsom temperatur, nederbörd och vind, vilket kan hjälpa till att förstå klimatförändringar och dess påverkan på miljön.
  18. Sportanalys: Clustering används för att gruppera liknande mönster av spelar- eller lagprestationsdata, vilket kan hjälpa till att analysera spelarens eller lagets styrkor och svagheter och fatta strategiska beslut.
  19. Brottsanalys: Clustering används för att gruppera liknande mönster av brottsdata, såsom plats, tid och typ, vilket kan hjälpa till att identifiera hotspots för brott, förutsäga framtida brottstrender och förbättra brottsförebyggande strategier.

Slutsats

I den här artikeln diskuterade vi Clustering, dess typer och dess tillämpningar i den verkliga världen. Det finns mycket mer att ta upp i oövervakat lärande och klusteranalys är bara det första steget. Den här artikeln kan hjälpa dig att komma igång med klustringsalgoritmer och hjälpa dig att få ett nytt projekt som kan läggas till din portfölj.

Vanliga frågor (FAQ) om klustring

F. Vilken är den bästa klustringsmetoden?

De 10 bästa klustringsalgoritmerna är:

  1. K-betyder Clustering
  2. Hierarkisk klustring
  3. DBSCAN (Density-Based Spatial Clustering of Applications with Noise)
  4. Gaussiska blandningsmodeller (GMM)
  5. Agglomerativ klustring
  6. Spektral klustring
  7. Mean Shift Clustering
  8. Affinitetsförökning
  9. OPTIK (beställningspunkter för att identifiera klustringsstrukturen)
  10. Björk (Balanserad iterativ reduktion och klustring med hjälp av hierarkier)

F. Vad är skillnaden mellan klustring och klassificering?

Den största skillnaden mellan klustring och klassificering är att klassificering är en övervakad inlärningsalgoritm och klustring är en oövervakad inlärningsalgoritm. Det vill säga, vi tillämpar klustring på de datamängder som saknar målvariabel.

F. Vilka är fördelarna med klustringsanalys?

Data kan organiseras i meningsfulla grupper med hjälp av det starka analytiska verktyget klusteranalys. Du kan använda den för att lokalisera segment, hitta dolda mönster och förbättra beslut.

F. Vilken är den snabbaste klustringsmetoden?

K-means klustring anses ofta vara den snabbaste klustringsmetoden på grund av dess enkelhet och beräkningseffektivitet. Den tilldelar iterativt datapunkter till närmaste klustercentrum, vilket gör den lämplig för stora datamängder med låg dimensionalitet och ett måttligt antal kluster.

vad är en speciell karaktär

F. Vilka är begränsningarna med klustring?

Begränsningar för kluster inkluderar känslighet för initiala förhållanden, beroende av val av parametrar, svårigheter att bestämma det optimala antalet kluster och utmaningar med att hantera högdimensionella eller brusiga data.

F. Vad beror kvaliteten på resultatet av klustring av?

Kvaliteten på klustringsresultat beror på faktorer som val av algoritm, avståndsmått, antal kluster, initialiseringsmetod, dataförbehandlingstekniker, mätvärden för klusterutvärdering och domänkunskap. Dessa element påverkar tillsammans effektiviteten och noggrannheten av klustringsresultatet.