Va bene usare la distanza di Manhattan con il collegamento tra cluster di Ward nel cluster gerarchico?


15

Sto usando il clustering gerarchico per analizzare i dati delle serie temporali. Il mio codice è implementato usando la funzione MathematicaDirectAgglomerate[...] , che genera cluster gerarchici dati i seguenti input:

  • una matrice di distanza D

  • il nome del metodo utilizzato per determinare il collegamento tra cluster.

Ho calcolato la matrice di distanza D usando la distanza di Manhattan:

d(X,y)=Σio|Xio-yio|

dove e è il numero di punti dati nelle mie serie temporali.io=1,,nn150

La mia domanda è: va bene usare il collegamento tra cluster di Ward con una matrice di distanza di Manhattan? Alcune fonti suggeriscono che il collegamento di Ward dovrebbe essere usato solo a distanza euclidea.

Nota che DirectAgglomerate[...]calcola il legame di Ward usando solo la matrice della distanza, non le osservazioni originali. Sfortunatamente, non sono sicuro di come Mathematica modifichi l'algoritmo originale di Ward, che (dalla mia comprensione) ha funzionato minimizzando la somma degli errori dei quadrati delle osservazioni, calcolata rispetto alla media del cluster. Ad esempio, per un cluster costituito da un vettore di osservazioni univariate, Ward ha formulato la somma degli errori dei quadrati come:c

(Σj||cj-meun'n(c)||2)2

(Altri strumenti software come Matlab e R implementano anche il clustering di Ward usando solo una matrice di distanza, quindi la domanda non è specifica per Mathematica.)


Di recente ho analizzato un insieme abbastanza grande di dati usando il metodo Ward. Nel mio caso specifico, la distanza di Manatthan ha dato essenzialmente lo stesso raggruppamento della distanza euclidea. Non posso darti alcuna prova matematica a favore di alcuna combinazione di metodi, ma - almeno nel mio caso - il raggruppamento non è stato influenzato dal metodo della distanza
nico

Tutte le funzioni R non attendono necessariamente una matrice di distanza. Vedere ad esempio la guida in linea per agnesil pacchetto cluster .
chl

In realtà va bene usare qualsiasi distanza. Controlla vlado.fmf.uni-lj.si/pub/preprint/ward.pdf L'unico problema è che la media di cui stiamo parlando non è più la media aritmetica ma la media di Frechet.
Randy Lai,

ma possiamo usare la distanza di manhattan per un collegamento completo ??
Payel Banerjee,

Risposte:


8

L'algoritmo di clustering di Ward è un metodo di clustering gerarchico che riduce al minimo i criteri di "inerzia" in ogni fase. Questa inerzia quantifica la somma dei residui quadrati tra il segnale ridotto e il segnale iniziale: è una misura della varianza dell'errore in un senso l2 (euclideo). In realtà, lo dici anche nella tua domanda. Questo è il motivo per cui, credo, non ha senso applicarlo a una matrice di distanza che non è una distanza euclidea l2.

D'altra parte, un collegamento medio o un singolo raggruppamento gerarchico sarebbe perfettamente adatto per altre distanze.


2
Grazie per il tuo commento; Penso che tu abbia ragione. Tuttavia, in pratica sembra che il legame di Ward sia spesso usato con distanze non euclidee. Non sono ancora sicuro di quali possano essere le implicazioni.
Rachel,

Probabilmente viene da persone che usano Ward semplicemente perché è ben noto. Direi che Ward non porta alcun guadagno rispetto a un collegamento medio in queste impostazioni. Tuttavia, è più costoso dal punto di vista computazionale (è necessario calcolare i primi due momenti per ciascuna unione o precalcolarli). Quindi, da un punto di vista pragmatico, preferirei semplicemente un collegamento medio.
Gael Varoquaux,

1
In realtà, l'inerzia sarebbe definita usando la somma della distanza quadrata (non necessario per essere euclidea) vedi vlado.fmf.uni-lj.si/pub/preprint/ward.pdf
Randy Lai

5

Non riesco a pensare a nessun motivo per cui Ward dovrebbe favorire qualsiasi metrica. Il metodo di Ward è solo un'altra opzione per decidere quali gruppi da fondere successivamente durante l'agglomerazione. Ciò si ottiene trovando i due cluster la cui fusione minimizzerà un certo errore ( fonte esemplificativa per la formula ).

Quindi si basa su due concetti:

  1. La media dei vettori che (per i vettori numerici) è generalmente calcolata facendo la media su ogni dimensione separatamente.
  2. La stessa metrica della distanza, ovvero il concetto di somiglianza espresso da questa metrica.

Quindi: fintanto che le proprietà della metrica scelta (come ad es. Rotazione, traduzione o invarianza di scala) soddisfano le tue esigenze (e la metrica si adatta al modo in cui viene calcolata la media del cluster), non vedo alcun motivo per non usarla .

Sospetto che la maggior parte delle persone suggerisca la metrica euclidea perché loro

  • desidera aumentare il peso delle differenze tra una media del cluster e un singolo vettore di osservazione (che viene fatto per quadrazione)
  • o perché è emersa come la migliore metrica nella convalida basata sui loro dati
  • o perché è usato in generale.

Grazie per la risposta. Ho chiarito un po 'la mia domanda per evidenziare che l'algoritmo "DirectAgglomerate [...]" richiede solo una matrice di distanza. Detto questo, l'implementazione modificata del collegamento di Ward si baserebbe sul presupposto che la matrice della distanza sia euclidea? L'implementazione di Matlab del collegamento di Ward, ad esempio, osserva che è adatto solo per le distanze euclidee ( mathworks.com/help/toolbox/stats/linkage.html ).
Rachel,

1
@ Rachel: ahah, capisco. Qualsiasi implementazione del rione deve calcolare la distanza tra i membri del cluster e il centroide. Intuitivamente è chiaro che la metrica utilizzata per questo dovrebbe essere equivalente alla metrica utilizzata per calcolare le distanze tra le osservazioni ... quindi Matlab richiede una distmatrix euclidea. Ma ora sorge la domanda perché le implementazioni non richiedono una funzione invece della matrice della distanza? Quanto danno viene fatto quando si usano metriche diverse per entrambe le attività? Lo ammetto, non lo so, lo so.
Steffen,

ciao esempio rimosso. qualsiasi altro sito web?
MonsterMMORPG

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.