Użyłem statystyki GAP do oszacowania k klastrów w R. Jednak nie jestem pewien, czy dobrze ją interpretuję. enter opis obrazu tutaj

Z powyższego wykresu zakładam, że powinienem użyć 3 klastrów.

tutaj wprowadź opis obrazu

Z drugiego wykresu powinienem wybrać 6 skupień. Czy to poprawna interpretacja statystyki GAP?

Byłbym wdzięczny za wszelkie wyjaśnienia.

Komentarze

  • Dwa pytania – Jaki jest pierwszy wykres? Czy jest to statystyka GAP dla tych samych danych? Dlaczego miałaby wyglądać inaczej niż druga (którą widzę, jest GAP). Jakich funkcji R użyłeś? Drugie pytanie: czy użyłeś ' 1-standardowego błędu ', aby wybrać 6 dla drugiego wykresu ?
  • Są więc dwa różne podejścia do grupowania. Pierwsze oparte na szeregach czasowych – sprzedaż w ciągu 26 tygodni, a ja grupowałem dane na podstawie dynamicznego czasu e wypaczenie. Drugim podejściem było określenie parametrów krzywej wzrostu klastra, również w oparciu o dynamiczne dopasowanie czasu. Użyłem clusGap w oparciu o globalmax, nie ' nie wiem, jak zaimplementować maxSE.

Odpowiedź

Aby uzyskać idealne grupowanie, należy wybrać $ k $ tak, aby zmaksymalizować statystykę luki. Oto przykład podany przez Tibshirani i wsp. (2001) w ich artykule, wykres utworzony przez sztuczne dane z 2 skupieniami. Jak widać, 2 jest wyraźnie idealnym $ k $, ponieważ statystyka luki jest zmaksymalizowana na poziomie $ k = 2 $:

Statystyka luk

Jednak , w wielu rzeczywistych zestawach danych klastry nie są tak dobrze zdefiniowane i chcemy być w stanie zrównoważyć maksymalizację statystyki luki z parsymonią modelu. Przykład: pierwszy obraz OP. Jeśli „ponownie maksymalizujemy statystykę luki samodzielnie , powinniśmy wybrać model z 30 (lub nawet więcej!) Klastrami. Zakładając, że wykres będzie nadal wzrastał, oczywiście wyniki są mniej przydatne. Dlatego Tibshirani sugeruje metodę 1-standard-error :

Wybierz rozmiar klastra $ \ hat {k} $ jako najmniejszy $ k $ taki, że $ \ text {Gap} (k) \ geq \ text {Gap} (k + 1) – s_ {k + 1} $.

Co nieformalnie identyfikuje punkt, w którym tempo wzrostu statystyki luk zaczyna „zwalniać”.

Tak więc, na pierwszym obrazie OP, jeśli przyjmiemy czerwone słupki błędu za błąd standardowy, to 3 jest najmniejszym $ k $ spełniającym to kryterium:

Obraz z adnotacjami 1

Jednak w przypadku drugiego obrazu OP zobaczysz, że statystyka przerwy natychmiast maleje dla $ k > 1 $. Zatem pierwszy $ k $, który spełnia kryterium 1 błędu standardowego, to 1 $. To jest sposób, w jaki wykres mówi, że dane nie powinny być grupowane.

Jak się okazuje, istnieją dodatkowe sposoby wyboru optymalnego $ k $. Domyślna metoda funkcji R clusGap , na przykład, zawsze szuka lokalnego maksimum wykresu i wybiera najmniejsze $ k $ w ramach jednego błędu standardowego lokalnego maks. Używając tej metody firstSEmax, wybralibyśmy odpowiednio $ k = 30 $ i $ k = 19 $ odpowiednio dla wykresów OP 1 i 2. Jak już powiedziałem, wydaje się, że jest to problem ze złożonością.

Źródło: Robert Tibshirani, Guenther Walther i Trevor Hastie (2001). Szacowanie liczby klastrów w zbiorze danych za pomocą statystyki luk.

Komentarze

  • Podczas szacowania wartości k $ na podstawie statystyki luk , jak mogę obliczyć / oszacować prawdopodobieństwo, że k $ to prawdziwa liczba klastrów? A może moje pytanie jest bezsensowne?
  • Dziękuję za wskazanie kompromisu między maksymalizacją statystyki luki a uzyskaniem oszczędności modelu

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *