Jag använde GAP-statistik för att uppskatta k-kluster i R. Men jag är inte säker på om jag tolkar det bra. enter bildbeskrivning här

Från plot ovan antar jag att jag ska använda tre kluster.

ange bildbeskrivning här

Från den andra plottet ska jag välja sex kluster. Är det korrekt tolkning av GAP-statistik?

Jag skulle vara tacksam för alla förklaringar.

Kommentarer

  • Två frågor – Vad visar den första handlingen? Är det en GAP-statistik för samma data? Varför skulle den se annorlunda ut än den andra (som jag ser är en GAP). Vilka R-funktioner använde du? Andra frågan: använde du ' 1-standardfel ' för att välja 6 för den andra plottet ?
  • Så det finns två olika tillvägagångssätt för klustring. Den första baserad på tidsserier – försäljning under 26 veckor och jag klusterade data baserat på dynamisk tid snedvridning. Det andra tillvägagångssättet var att gruppera parametrar för tillväxtkurva, även baserat på dynamisk tidsförvrängning. Jag använde clusGap baserat på globalmax, jag visste ' inte hur jag skulle implementera maxSE.

Svar

För att få ett perfekt klustring bör du välja $ k $ så att du maximerar gapstatistiken. Här är exemplet som Tibshirani et al. (2001) gav i deras papper, handlingen bildad av artificiell data med två kluster. Som ni ser är 2 helt klart den idealiska $ k $, eftersom gapstatistiken maximeras till $ k = 2 $:

Gapstatistik

Men , i många verkliga datauppsättningar är klusterna inte lika väldefinierade, och vi vill kunna balansera maximering av gapstatistiken med modellens parsimonium. Exempel: OP: s första bild. Om vi maximerar gapstatistiken ensam , bör vi välja modellen med 30 (eller till och med fler!) Kluster. Om vi antar att den tomten bara kommer att fortsätta öka, naturligtvis, blir resultaten är mindre användbara. Så Tibshirani föreslår 1-standardfel -metoden:

Välj klusterstorleken $ \ hat {k} $ för att vara den minsta $ k $ så att $ \ text {Gap} (k) \ geq \ text {Gap} (k + 1) – s_ {k + 1} $.

Vilket informellt identifierar den punkt vid vilken ökningstakten för gapstatistiken börjar ”sakta ner”.

Så, i OP: s första bild, om vi tar de röda felstaplarna som standardfel, är 3 det minsta $ k $ som uppfyller detta kriterium:

Kommenterad bild 1

För OP: s andra bild ser du dock att gap-statistiken minskar omedelbart för $ k > 1 $. Så den första $ k $ som uppfyller kriteriet 1-standardfel är $ 1 $. Detta är plotens sätt att säga att data inte ska klustras.

Som det visar sig finns det ytterligare sätt att välja optimal $ k $. Standardmetoden för R-funktionen clusGap , till exempel, söker alltid efter det lokala maximumet i diagrammet och väljer den minsta $ k $ inom ett standardfel av det lokala maxvärdet. Med denna firstSEmax -metod skulle vi välja $ k = 30 $ och $ k = 19 $ för OP: s diagram 1 respektive 2. Som jag ser verkar detta dock drabbas av en komplexitetsfråga.

Källa: Robert Tibshirani, Guenther Walther och Trevor Hastie (2001). Uppskattning av antalet kluster i en datamängd via gapstatistiken.

Kommentarer

  • Vid uppskattning av $ k $ -värde från gapstatistik , hur kan jag beräkna / uppskatta sannolikheten att $ k $ är det verkliga antalet kluster? Eller är min fråga meningslös?
  • Tack för att du påpekade avvägningen mellan att maximera klyftstatistiken och få parisens av modellen

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *