Qual è la differenza tra l'analisi dei componenti principali e il ridimensionamento multidimensionale?


133

In cosa differiscono PCA e MDS classico? Che ne dici di MDS contro MDS non metrico? C'è un momento in cui preferiresti l'uno all'altro? In cosa differiscono le interpretazioni?

Risposte:


96

L 'MDS metrico di Torgerson classico viene effettivamente fatto trasformando le distanze in somiglianze ed eseguendo PCA (decomposizione di automi o decomposizione di valore singolare) su quelli. [L'altro nome di questa procedura ( distances between objects -> similarities between them -> PCA, per cui i carichi sono le coordinate ricercate) è Principal Coordinate Analysis o PCoA .] Quindi, PCA potrebbe essere chiamato l'algoritmo dell'MDS più semplice.

L'MDS non metrico si basa sull'algoritmo iterativo ALSCAL o PROXSCAL (o algoritmo simile a loro) che è una tecnica di mappatura più versatile rispetto al PCA e può essere applicato anche all'MDS metrico. Mentre PCA mantiene m importanti dimensioni per te, ALSCAL / PROXSCAL adatta la configurazione a m dimensioni (tu pre-definisci m ) e riproduce le differenze sulla mappa in modo più diretto e accurato rispetto al solito PCA (vedi la sezione Illustrazione sotto).

Pertanto, MDS e PCA probabilmente non sono allo stesso livello per essere in linea o opposti l'uno all'altro. PCA è solo un metodo mentre MDS è una classe di analisi. Come mappatura, PCA è un caso particolare di MDS. D'altra parte, PCA è un caso particolare di analisi fattoriale che, essendo una riduzione dei dati, è più di una semplice mappatura, mentre MDS è solo una mappatura.

Per quanto riguarda la tua domanda su MDS metrico vs MDS non metrico, c'è poco da commentare perché la risposta è semplice. Se credo che le mie differenze di input siano così vicine alle distanze euclidee che una trasformazione lineare sarà sufficiente per mapparle nello spazio m-dimensionale, preferirò la MDS metrica. Se non ci credo, è necessaria la trasformazione monotonica, che implica l'uso di MDS non metrico.


Una nota sulla terminologia per un lettore. Il termine Classic (al) MDS (CMDS) può avere due significati diversi in una vasta letteratura sull'MDS, quindi è ambiguo e dovrebbe essere evitato. Una definizione è che CMDS è sinonimo di MDS metrico di Torgerson. Un'altra definizione è che CMDS è qualsiasi MDS (con qualsiasi algoritmo; analisi metrica o non metrica) con input a matrice singola (poiché esistono modelli che analizzano più matrici contemporaneamente - Modello individuale "INDSCAL" e modello replicato).


Illustrazione alla risposta . Alcune nuvole di punti (ellisse) vengono mappate su una mappa mds monodimensionale. Una coppia di punti è mostrata in punti rossi.

inserisci qui la descrizione dell'immagine

DoDm22D o - D m 1Do2Dm21DoDm1

L'MDS basato su PCA (Torgerson's o PCoA) non è diretto. Riduce al minimo le distanze al quadrato tra gli oggetti nello spazio originale e le loro immagini sulla mappa. Questo non è un compito MDS abbastanza genuino; ha successo, come MDS, solo nella misura in cui gli assi principali junior scartati sono deboli. Se spiega una varianza molto maggiore rispetto a il primo da solo può sostanzialmente riflettere le distanze a coppie nella nuvola, specialmente per i punti distanti lungo l'ellisse. L'MDS iterativo vincerà sempre, soprattutto quando si desidera una mappa di dimensioni molto ridotte. Anche MDS iterativo avrà più successo quando un'ellisse del cloud è sottile, ma completerà il compito mds meglio di PCoA. Di proprietà della matrice a doppia centratura (descritta quiP 2D o 2 2 - D m 2 2P1P2) sembra che PCoA minimizzi , che è diverso da qualsiasi delle minimizzazioni di cui sopra.Do22Dm22

Ancora una volta, PCA proietta i punti del cloud sul sottospazio di risparmio più corporale più vantaggioso. Non proietta distanze a coppie , posizioni relative di punti su un sottospazio che risparmiano maggiormente in questo senso, come fa MDS iterativo. Tuttavia, storicamente PCoA / PCA è considerato tra i metodi di MDS metrico.


3
(+1) Mi sono piaciute entrambe le risposte, questa probabilmente un po 'di più.
Dmitrij Celov,

Il link del PDF relativo a PCoA. Può essere trovato su Web Archive: web.archive.org/web/20160315120635/http://forrest.psych.unc.edu/…
Pierre

49

Uhm ... abbastanza diverso. In PCA, ti vengono dati i dati continui multivariati (un vettore multivariato per ogni soggetto) e stai cercando di capire se non hai bisogno di così tante dimensioni per concettualizzarli. In (metrico) MDS, ti viene data la matrice delle distanze tra gli oggetti e stai cercando di capire quali sono le posizioni di questi oggetti nello spazio (e se hai bisogno di uno spazio 1D, 2D, 3D, ecc.). In MDS non metrico, sai solo che gli oggetti 1 e 2 sono più distanti degli oggetti 2 e 3, quindi provi a quantificarlo, oltre a trovare le dimensioni e le posizioni.

Con un notevole tratto di immaginazione, puoi dire che un obiettivo comune di PCA e MDS è visualizzare oggetti in 2D o 3D. Ma dato quanto sono diversi gli input, questi metodi non saranno discussi come lontanamente correlati in nessun libro di testo multivariato. Immagino che tu possa convertire i dati utilizzabili per PCA in dati utilizzabili per MDS (diciamo, calcolando le distanze di Mahalanobis tra gli oggetti, usando la matrice di covarianza del campione), ma ciò comporterebbe immediatamente una perdita di informazioni: MDS è definito solo posizione e rotazione, e questi ultimi due possono essere eseguiti in modo più informativo con PCA.

Se dovessi mostrare brevemente a qualcuno i risultati dell'MDS non metrico e volessi dargli un'idea approssimativa di ciò che fa senza entrare nei dettagli, potrei dire:

Date le misure di somiglianza o dissomiglianza che abbiamo, stiamo cercando di mappare i nostri oggetti / soggetti in modo tale che le "città" che formano abbiano distanze tra loro più vicine a queste misure di somiglianza che possiamo farle. Tuttavia, potremmo mapparli perfettamente nello spazio dimensionale, quindi qui sto rappresentando le due dimensioni più informative - un po 'come quello che faresti in PCA se mostrassi un'immagine con i due principali componenti principali.n


18
Un PCA non è applicato su una matrice di correlazione equivalente a un MDS con distanze euclidee calcolate su variabili standardizzate?
chl

Quindi, se dovessi mostrare brevemente a qualcuno i risultati dell'MDS non metrico e volessi dargli un'idea approssimativa di ciò che fa senza entrare nei dettagli, potrei dire "questo fa qualcosa di simile al PCA" senza essere fuorviante?
Freya Harrison,

6
Direi: "Date le misure di somiglianza o dissomiglianza che abbiamo, stiamo cercando di mappare i nostri oggetti / soggetti in modo tale che le" città "che formano abbiano distanze tra loro vicine a queste misure di somiglianza come possiamo realizzarli. Potremmo mapparli perfettamente solo nello spazio dimensionale, quindi qui sto rappresentando le dimensioni più informative - un po 'come quello che faresti in PCA se mostrassi un'immagine con i due principali componenti principali ". n
StasK

+1 Fantastico - per me questo commento lega bene la tua risposta. Grazie.
Freya Harrison,

47

Due tipi di MDS metrico

Il compito del dimensionamento multidimensionale metrico (MDS) può essere formulato in modo astratto come segue: data una matrice di distanze a coppie tra punti, trova un incorporamento a bassa dimensione di punti dati in tale che Le distanze euclidee si avvicinano alle distanze indicate:D n R kx i - x jD i j .n×nDnRk

xixjDij.

Se "approssimativo" qui è inteso nel solito senso di errore di ricostruzione, cioè se l'obiettivo è minimizzare la funzione di costo chiamata "stress": quindi la soluzione non è equivalente a PCA. La soluzione non è data da alcuna formula chiusa e deve essere calcolata da un algoritmo iterativo dedicato.

StressDxixj2,

"MDS classico", noto anche come "MDS Torgerson", sostituisce questa funzione di costo con una funzione correlata ma non equivalente , denominata "tensione": che cerca di ridurre al minimo l'errore di ricostruzione dei prodotti scalari centrati anziché le distanze. Si scopre che può essere calcolato da (se sono distanze euclidee) e che minimizzare l'errore di ricostruzione di è esattamente ciò che fa PCA, come mostrato nella sezione successiva.K c D D K c

StrainKcxi,xj2,
KcDDKc

La MDS classica (Torgerson) sulle distanze euclidee è equivalente alla PCA

Consenti ai dati di essere raccolti in matrice di dimensioni con osservazioni in righe e caratteristiche in colonne. Sia la matrice centrata con la colonna sottratta.Xn×kXc

Quindi PCA equivale a fare una scomposizione del valore singolare , con colonne di come componenti principali. Un modo comune per ottenerli è tramite una composizione eigend della matrice di covarianza , ma un altro modo possibile è eseguire una composizione eigend di la matrice Gram : i componenti principali sono i suoi autovettori ridimensionati dalle radici quadrate dei rispettivi autovalori.Xc=USVUS1nXcXcKc=XcXc=US2U

È facile vedere che , dove è una matrice di una. Da questo otteniamo immediatamente che dove è una matrice Gram di dati non centrati. Questo è utile: se disponiamo della matrice Gram di dati non centrati, possiamo centrarli direttamente, senza tornare a stesso. Questa operazione viene talvolta chiamataXc=(I1n1n)X1nn×n

Kc=(I1nn)K(I1nn)=K1nnKK1nn+1nnK1nn,
K=XXXdoppio centraggio : nota che equivale a sottrarre media di riga e media di colonna da (e aggiungere nuovamente la media globale che viene sottratta due volte), in modo che sia la media di riga che la media di colonna di siano uguali a zero.KKc

Consideriamo ora una matrice di distanze euclidee a coppie con. Questa matrice può essere convertita in per eseguire PCA? Si scopre che la risposta è sì.D D i j = x i - x jK cn×nDDij=xixjKc

In effetti, secondo la legge dei coseni vediamo che Quindi differisce da solo per alcune costanti di riga e colonna (qui significa quadrato per elemento!). Ciò significa che se lo due volte, otterremo :

Dij2=xixj2=xix¯2+xjx¯22xix¯,xjx¯=xix¯2+xjx¯22[Kc]ij.
D2/2KcD2Kc
Kc=(I1nn)D22(I1nn).

Ciò significa che partendo dalla matrice delle distanze euclidee a coppie possiamo eseguire la PCA e ottenere i componenti principali. Questo è esattamente ciò che fa MDS (Torgerson) classico: , quindi il suo risultato è equivalente al PCA.DK cU SDDKcUS

Naturalmente, se viene scelta qualsiasi altra misura della distanza anziché, quindi l'MDS classico si tradurrà in qualcos'altro.xixj

Riferimento: gli elementi dell'apprendimento statistico , sezione 18.5.2.


Devo ammettere che non ci ho ancora pensato: ma ecco un "controllo di plausibilità" di cui mi chiedo: dalle dimensioni delle matrici, la tua matrice Gram non dovrebbe essere che è ? n × nXXTn×n
cbeleites il

Grazie, @cbeleites, ovviamente hai ragione - è solo un errore di battitura. Lo risolverò ora. Fammi sapere se vedi altri errori (o sentiti libero di modificare direttamente).
amoeba,

1
+1. E grazie per aver mostrato in matematica ciò che è stato affermato nel primo paragrafo della mia risposta.
ttnphns,

2
+1 Vorrei che questa fosse la risposta accettata / migliore. Penso che meriti facilmente di esserlo.
Zhubarb,

35

La PCA produce gli stessi risultati ESATTI dell'MDS classico se si utilizza la distanza euclidea.

Sto citando Cox & Cox (2001), p. 43-44:

Esiste una dualità tra un'analisi delle componenti dei principali e la PCO [analisi delle coordinate principali, nota anche come MDS classico] in cui le differenze sono date dalla distanza euclidea.

La sezione in Cox & Cox lo spiega abbastanza chiaramente:

  • Immagina di avere = attributi di prodotti per dimensione , media centrataXnp
  • La PCA si ottiene trovando autovettori della matrice di covarianza ~ (divisa per n-1) - chiama gli autovettori e gli autovalori .XXξμ
  • L'MDS si ottiene prima convertendo in matrice di distanza, qui, distanza euclidea, cioè , quindi trovando gli autovettori - chiama gli autovettori , e autovalori .XXXvλ
  • p 43: "È un risultato ben noto che gli autovalori di sono gli stessi di , insieme ad un autovelox np extra". Quindi, per , =XXXXi<pμiλi
  • Tornando alla definizione di autovettori, considera gli autovalori . ithXXvi=λivi
  • Premultiply con , otteniamoviX(XX)Xvi=λiXvi
  • Abbiamo anche . Poiché , otteniamo che per .XXξi=μiξiλi=μiξi=Xvii<p

2
Ho fatto un po 'di programmazione in R, e ho usato cmdscale come implementazione di MDS classico e prcomp per PCA - tuttavia il risultato non è lo stesso ... c'è qualche punto che mi manca ?!
user4581

3
same results as classical MDS. Con "MDS classico" devi indicare qui l'MDS di Torgerson. Quindi l'affermazione è davvero vera, poiché l'MDS di Torgerson è in realtà PCA (a partire solo dalla matrice della distanza). Se definisci "MDS classico" in modo diverso (vedi la mia risposta), l'affermazione non è vera.
ttnphns,

7
Aspetta, come mai XX 'fornisce la distanza euclidea ?? XX 'è un prodotto interno: se la matrice fosse standardizzata, darebbe la somiglianza del coseno. La distanza euclidea richiede una sottrazione e una radice quadrata.
ShainaR,

@ user1705135 Sono confuso dal tuo punto 5. Non dovrebbe essere ? XXvi=λivi
Michael,

4

Confronto: "Metric MDS fornisce il risultato SAME come PCA" - proceduralmente - quando osserviamo il modo in cui SVD viene utilizzato per ottenere il massimo. Ma i criteri ad alta dimensione conservati sono diversi. PCA utilizza una matrice di covarianza centrata mentre MDS utilizza una matrice di grammi ottenuta da matrici di distanza a doppio centraggio.

Metterà matematicamente la differenza: PCA può essere visto come massimizzando su sotto vincoli che è ortogonale, dando così assi / componenti principali. In multidimensionale scalare una matrice grammo (una matrice PSD che può essere rappresentato come ) viene calcolato dalla grande distanza euclidea tra righe e seguenti è ridotta al minimo sopra . minimizza: .XXZTZXY| | G-YTY| | 2 F.Tr(XT(I1neeT)X)XXZTZXY||GYTY||F2

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.