Per ottenere un cluster ideale, è necessario selezionare modo da massimizzare la statistica gap. Ecco l'esempio dato da Tibshirani et al. (2001) nel loro articolo, la trama formata da dati artificiali con 2 cluster. Come puoi vedere, 2 è chiaramente il ideale , poiché la statistica gap è massimizzata in :KKk = 2
Tuttavia, in molti set di dati del mondo reale, i cluster non sono così ben definiti e vogliamo essere in grado di bilanciare massimizzando la statistica gap con la parsimonia del modello. Caso in questione: la prima immagine di OP. Se stiamo massimizzando la statistica gap da solo , allora dovremmo scegliere il modello con 30 (o anche di più!) Cluster. Supponendo che quella trama continuerà ad aumentare, ovviamente, i risultati sono meno utili. Quindi Tibshirani suggerisce il metodo dell'errore 1 standard :
Scegli la dimensione del cluster in modo che sia la più piccola tale che .K^KSpazio ( k ) ≥ Spazio ( k + 1 ) - sk + 1
Che informalmente sta identificando il punto in cui il tasso di aumento della statistica gap inizia a "rallentare".
Quindi, nella prima immagine di OP, se consideriamo le barre di errore rosse come errori standard, allora 3 è il più piccolo che soddisfa questo criterio:K
Per la seconda immagine di OP, tuttavia, vedrai che la statistica gap diminuisce immediatamente per . Quindi il primo che soddisfa il criterio di errore 1 standard è . Questo è il modo in cui la trama dice che i dati non dovrebbero essere raggruppati.k > 1K1
A quanto pare, ci sono altri modi per scegliere ottimale . Il metodo predefinito della funzione R , ad esempio, cerca sempre il massimo locale del grafico e seleziona il più piccolo all'interno di un errore standard del max locale. Usando questo metodo, selezioneremmo e per i grafici 1 e 2 di OP. Come ho detto, tuttavia, questo sembra soffrire di un problema di complessità.KclusGap
KfirstSEmax
k = 30K = 19
Fonte: Robert Tibshirani, Guenther Walther e Trevor Hastie (2001). Stima del numero di cluster in un set di dati tramite la statistica gap.