Se il clustering k-mean è una forma di modellizzazione della miscela gaussiana, può essere usato quando i dati non sono normali?


21

Sto leggendo Bishop sull'algoritmo EM per GMM e la relazione tra GMM e k-mean.

In questo libro si dice che k-mean è una versione difficile di GMM. Mi chiedo questo implica che se i dati che sto cercando di raggruppare non sono gaussiani, non posso usare k-mean (o almeno non è adatto da usare)? Ad esempio, cosa succede se i dati sono immagini di cifre scritte a mano, costituite da 8 * 8 pixel ciascuna con valore 0 o 1 (e supponiamo che siano indipendenti, quindi dovrebbe essere una miscela di Bernoulli)?

Sono un po 'confuso su questo e apprezzerò ogni pensiero.


2
Se si sta chiedendo se è valido eseguire il clustering k-mean su dati non normali, la risposta è sì se si presume che i dati siano continui. I dati binari non sono continui. Alcune persone fanno mezzi k su tali dati, cosa euristicamente ammissibile, ma teoricamente non valida.
ttnphns,

Non esiste un modello di probabilità per k-significa quindi non si presuppone che la normalità si invalidi. (non significa che funzionerà bene però)
congetture l'

1
@conjectures Hmm ... Ma k-menas equivale a GMM, e GMM assume normale.
eddie.xie,

@ttnphns Grazie per la tua risposta! Quindi immagino che se utilizzo TF-IDF per trasferire il testo in punteggi e renderlo continuo, posso applicare ed è valido?
eddie.xie,

Improvvisamente mi rendo conto che GMM è un miscuglio (somma di) alcuni gaussiani e dovrebbe essere in grado di esprimere qualunque distribuzione dato abbastanza miscele. Pertanto, anche GMM e mezzi K sono equivalenti non significa che i mezzi K non possano usare dati non normali perché GMM può esprimere qualunque distribuzione. È corretto?
eddie.xie,

Risposte:


20

Nelle tipiche situazioni EM GMM, si tiene conto della varianza e della covarianza. Questo non viene fatto in k-medie.

Ma in effetti, una delle euristiche popolari per k-mean (nota: k-mean è un problema, non un algoritmo) - l'algoritmo Lloyd - è essenzialmente un algoritmo EM, che utilizza un modello centroide (senza varianza) e assegnazioni complesse.

Quando si esegue il clustering di stile k-mean (ovvero la minimizzazione della varianza), l'utente

  • minimizzare casualmente la distanza euclidea quadrata, perché contributo varianza WCSS (somma dei quadrati all'interno del cluster) = distanza euclidea quadrata
  • per coincidenza assegnare oggetti al cluster più vicino per distanza euclidea, perché la funzione sqrt è monotona (si noti che la media non ottimizza le distanze euclidee, ma la funzione WCSS)
  • rappresentano i cluster usando solo un centroide
  • ottenere grappoli a forma di cellula Voronoi, cioè poligoni
  • funziona meglio con i cluster sferici

argminSΣio=1KΣXjSioΣd=1D(Xjd-μiod)2
S={S1...SK}KDXjdjd .

Si dice comunemente che k-mean assume gruppi sferici. È anche comunemente riconosciuto che i cluster k-mean sono cellule Voronoi, cioè non sferiche. Entrambi sono corretti ed entrambi hanno torto. Prima di tutto, i cluster non sono celle Voronoi complete, ma solo gli oggetti noti al loro interno. Non è necessario considerare lo spazio morto tra i cluster come parte di entrambi i cluster, poiché la presenza di un oggetto influirebbe sul risultato dell'algoritmo. Ma non è molto meglio chiamarlo "sferico", solo perché la distanza euclidea è sferica. K-mean non si preoccupa della distanza euclidea. Tutto ciò che è, è un'euristica per minimizzare le varianze . E questo è in realtà ciò che dovresti considerare come k-significa: minimizzazione della varianza.


Lascia che ti suggerisca di affinare un po 'alcune delle tue espressioni - per una maggiore precisione. Ad esempio, che cosa è minimize squared euclidean distanceo minimize the variances? Ci devono essere parole "somma di" o "raggruppate" o simili, perché abbiamo 2 o più cluster, non è vero?
ttnphns,

A proposito, poiché k-mean minimizza la somma raggruppata all'interno del cluster di d ^ 2 divisa per il numero di oggetti nel rispettivo cluster, il tuo punto coincidentally minimize Euclidean distance, because the sqrt function is monotoneè, per essere precisi, non corretto.
ttnphns,

La funzione oggettiva corretta, per la quale è possibile dimostrare la convergenza, è WCSS, somma dei quadrati all'interno del cluster . E in effetti, non minimizza le distanze euclidee, ma la distanza centroide-per-euclidea più vicina è anche l'assegnazione ottimale del WCSS.
Anony-Mousse -Reststate Monica

Purtroppo la tua formulazione rimane dubbia . Cosa frase minimize squared Euclidean distance, because WCSS variance contribution = squared euclidean distance significa ? Stai dicendo che "le D quadrate tra gli oggetti nei cluster vengono minimizzate perché il WCSS delle deviazioni viene ridotto al minimo", o semplicemente "il WCSS delle deviazioni viene ridotto al minimo, che - le deviazioni - sono distanze euclidee per natura"? O qualcos'altro?
ttnphns,

1
Ovviamente, k-means è una buona scelta solo se si desidera un modello centroide dei propri dati. Se si desidera ottimizzare le distanze a coppie, utilizzare il clustering gerarchico.
Anony-Mousse -Reststate Monica

8

GMM usa colline sovrapposte che si estendono all'infinito (ma praticamente contano solo per 3 sigma). Ogni punto ottiene tutti i punteggi di probabilità delle colline. Inoltre, le colline sono "a forma di uovo" [ok, sono ellissi simmetriche ] e, usando la matrice di covarianza completa, possono essere inclinate .

K significa che assegna un punto a un singolo cluster, quindi i punteggi degli altri centri del cluster vengono ignorati (vengono implicitamente azzerati / non importa). Le colline sono bolle di sapone sferiche. Quando due bolle di sapone si toccano, il confine tra loro diventa un piano (iper) piano. Proprio come quando si soffia una schiuma di molte bolle di sapone, le bolle all'interno non sono piatte ma sono squadrate, così i confini tra molte (iper) sfere in realtà formano una partizione Voronoi dello spazio. In 2D, questo tende ad apparire vagamente come un impacchettato esagonale, pensa a un alveare (anche se ovviamente le cellule Voronoi non sono garantite come esagoni). Una collina K significa che è rotonda e non si inclina, quindi ha meno potere di rappresentazione; ma è molto più veloce da calcolare, specialmente nelle dimensioni più elevate.

Poiché K-mean utilizza la metrica della distanza euclidea, presuppone che le dimensioni siano comparabili e di uguale peso. Quindi, se la dimensione X ha unità di miglia orarie, che variano da 0 a 80, e la dimensione Y ha unità di libbre, che variano da 0 a 400 e si stanno adattando cerchi in questo spazio XY, quindi una dimensione (e la sua diffusione) sarà più potente dell'altra dimensione e oscurerà i risultati. Questo è il motivo per cui è consuetudine normalizzare i dati quando si assumono K-medie.

Sia GMM che K-sign modellano i dati adattando le migliori approssimazioni a ciò che viene dato. GMM si adatta a uova inclinate e K-significa per sfere non inclinate. Ma i dati sottostanti potrebbero essere modellati come qualsiasi cosa, potrebbe essere una spirale o un dipinto di Picasso, e ogni algoritmo sarebbe ancora in esecuzione, e prenderebbe il suo colpo migliore. Il fatto che il modello risultante assomigli ai dati effettivi dipende dal processo fisico sottostante che genera i dati. (Ad esempio, le misurazioni del ritardo sono unilaterali; un gaussiano è adatto? Forse.)

Tuttavia, sia GMM che K-significano implicitamente assi / domini di dati provenienti dal campo dei numeri reali Rn. Ciò è importante in base al tipo di asse / dominio di dati che si sta tentando di raggruppare. I conteggi interi ordinati vengono mappati correttamente sui reali. Simboli ordinati, come i colori in uno spettro, non così bene. Simboli binari, ehn. I simboli non ordinati non si associano affatto ai reali (a meno che non si utilizzi una nuova matematica creativa dal 2000).

Pertanto, l'immagine binaria 8x8 verrà interpretata come un ipercubo a 64 dimensioni nel primo hyperquadrant. Gli algoritmi quindi usano analogie geometriche per trovare i cluster. La distanza, con i mezzi K, si presenta come distanza euclidea nello spazio 64-dimensionale. È un modo per farlo.


Nota che entrambi gli algoritmi assumono anche implicitamente che gli assi spaziali siano ugualmente densi in tutti i punti, quindi adattando i dati in modo esponenziale, logaritmico o sinusoidale beneficia in genere di una pre-trasformazione per rimappare i dati in un dominio approssimativamente lineare.
DragonLord,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.