Existe alguma maneira de determinar o número ideal de cluster ou devo tentar valores diferentes e verificar as taxas de erro para decidir sobre o melhor valor?
R
) aqui: stackoverflow.com/a/15376462/1036500
Existe alguma maneira de determinar o número ideal de cluster ou devo tentar valores diferentes e verificar as taxas de erro para decidir sobre o melhor valor?
R
) aqui: stackoverflow.com/a/15376462/1036500
Respostas:
O método que eu uso é usar o CCC (Cubic Clustering Criteria). Procuro que o CCC aumente ao máximo à medida que incremento o número de clusters em 1 e, em seguida, observo quando o CCC começa a diminuir. Nesse ponto, tomo o número de clusters no máximo (local). Isso seria semelhante ao uso de um gráfico de scree para selecionar o número de componentes principais.
Relatório Técnico SAS A-108 Critério de agrupamento cúbico ( pdf )
= número de observações n k = número no cluster k p = número de variáveis q = número de clusters X = n × p matriz de dados M = q × p matriz do cluster significa Z = indicador do cluster ( z i k = 1 se obs . i em conjunto k , 0 de outro modo)
Suponha que cada variável tenha média 0:
, M = ( Z ′ Z ) - 1 Z ′ X
Matriz S S (total) = T = X ′ X S S (entre os aglomerados) matriz = B = M ′ Z ′ Z M S S (dentro dos aglomerados) matriz = W = T - B
(trace = soma dos elementos diagonais)
Empilhe colunas de em uma coluna longa.
Regress no produto de Kronecker de Z com p × p matriz identidade
Computar R 2 para esta regressão - mesmo R 2
A idéia CCC é comparar a você começa para um determinado conjunto de clusters com o R 2 que se obtém agrupando um conjunto distribuído uniformemente de pontos em p espaço dimensional.