Czy jest jakiś sposób na określenie optymalnej liczby klastrów, czy powinienem po prostu wypróbować różne wartości i sprawdzić poziomy błędów, aby wybrać najlepszą wartość?
R
) tutaj: stackoverflow.com/a/15376462/1036500
Czy jest jakiś sposób na określenie optymalnej liczby klastrów, czy powinienem po prostu wypróbować różne wartości i sprawdzić poziomy błędów, aby wybrać najlepszą wartość?
R
) tutaj: stackoverflow.com/a/15376462/1036500
Odpowiedzi:
Używam metody CCC (Cubic Clustering Criteria). Poszukuję, aby CCC wzrosło do maksimum, gdy zwiększam liczbę klastrów o 1, a następnie obserwuję, kiedy CCC zaczyna spadać. W tym momencie biorę liczbę klastrów na (lokalnym) maksimum. Byłoby to podobne do używania wykresu piaskowego do wybierania liczby głównych składników.
Raport techniczny SAS A-108 Kryterium sześciennych klastrów ( pdf )
n k k p q X n × p M q × p Z z i k = 1 i k = liczba obserwacji = liczba w klastrze = liczba zmiennych = liczba klastrów = macierz danych = macierz klastrów oznacza = wskaźnik skupienia ( jeśli obs. w klastrze , 0 w przeciwnym razie)
Załóżmy, że każda zmienna ma średnią 0: ,
M = ( Z ′ Z ) - 1 Z ′ X
T X ′ X S S B M ′ Z ′ Z M S S W T - BMacierz (ogółem) = = (między klastrami) macierz = = (wewnątrz klastrów) macierz = =
(trace = suma elementów ukośnych)
Ułóż kolumny w jedną długą kolumnę.
Dokonaj regresji na produkcie Kroneckera dla z macierzą tożsamości
Oblicz Oblicz dla tej regresji - to samoZ p × p R 2 R 2
Ideą CCC jest porównanie otrzymanego dla danego zestawu klastrów z uzyskanym przez zgrupowanie równomiernie rozmieszczonego zestawu punktów w przestrzeni wymiarowej.R 2 p