PCA sulla correlazione o covarianza: il PCA sulla correlazione ha mai senso? [chiuso]


32

Nell'analisi dei componenti principali (PCA), si può scegliere la matrice di covarianza o la matrice di correlazione per trovare i componenti (dai rispettivi autovettori). Questi danno risultati diversi (caricamenti e punteggi del PC), poiché gli autovettori tra le due matrici non sono uguali. La mia comprensione è che ciò è causato dal fatto che un vettore di dati non elaborati e la sua standardizzazione non possono essere correlati tramite una trasformazione ortogonale. Matematicamente, matrici simili (cioè correlate dalla trasformazione ortogonale) hanno gli stessi autovalori, ma non necessariamente gli stessi autovettori.ZXZ

Ciò solleva alcune difficoltà nella mia mente:

  1. La PCA ha davvero senso, se puoi ottenere due risposte diverse per lo stesso set di dati di partenza, entrambi cercano di ottenere la stessa cosa (= trovare le direzioni della massima varianza)?

  2. Quando si utilizza l'approccio della matrice di correlazione, ogni variabile viene standardizzata (ridimensionata) in base alla propria deviazione standard individuale, prima di calcolare i PC. In che modo ha quindi senso trovare le indicazioni di massima varianza se i dati sono già stati precedentemente ridimensionati / compressi in modo diverso? So che la PCA basata sulla correlazione è molto conveniente (le variabili standardizzate sono senza dimensioni, quindi è possibile aggiungere le loro combinazioni lineari; altri vantaggi si basano anche sul pragmatismo), ma è corretto?

Mi sembra che il PCA basato sulla covarianza sia l'unico veramente corretto (anche quando le varianze delle variabili differiscono notevolmente) e che ogni volta che questa versione non può essere utilizzata, non dovrebbe essere usato neanche il PCA basato sulla correlazione.

So che esiste questa discussione: PCA sulla correlazione o covarianza? - ma sembra concentrarsi solo sulla ricerca di una soluzione pragmatica, che può anche essere o meno una soluzione algebricamente corretta.


4
Sarò onesto e ti dirò che a un certo punto ho smesso di leggere la tua domanda. PCA ha un senso. Sì, i risultati possono variare a seconda che si scelga di utilizzare la matrice di correlazione o varianza / covarianza. La PCA basata sulla correlazione è preferita se le variabili vengono misurate su scale diverse, ma non si desidera che questo domini il risultato. Immagina se hai una serie di variabili che vanno da 0 a 1 e poi alcune che hanno valori molto grandi (relativamente parlando, come 0 a 1000), dominerà la grande varianza associata al secondo gruppo di variabili.
Patrick,

4
Ma è così anche con molte altre tecniche e penso che il punto di Patrick sia ragionevole. Inoltre era solo un commento, non c'era bisogno di diventare aggressivo. In generale, perché dovresti presumere che ci dovrebbe essere un vero modo "algebricamente" corretto per affrontare il problema?
Gala,

5
Forse stai pensando alla PCA nel modo sbagliato: è solo una trasformazione, quindi non c'è dubbio che sia corretta o errata o che faccia affidamento su ipotesi sul modello di dati, a differenza, diciamo, della regressione o dell'analisi dei fattori.
Scortchi - Ripristina Monica

5
Il nocciolo di questa questione sembra basarsi su un malinteso su cosa fa la standardizzazione e su come funziona la PCA. Questo è comprensibile, perché una buona conoscenza del PCA richiede la visualizzazione di forme di dimensioni superiori. Sosterrei che questa domanda, come molte altre domande basate su una sorta di incomprensione, è quindi buona e dovrebbe rimanere aperta, perché le sue risposte possono rivelare verità che molte persone potrebbero non aver pienamente apprezzato prima.
whuber

6
PCA non "rivendica" nulla. Le persone fanno affermazioni su PCA e infatti lo usano in modo molto diverso a seconda del campo. Alcuni di questi usi potrebbero essere sciocchi o discutibili, ma non sembra molto illuminante supporre che una singola variante della tecnica debba essere quella "algebricamente corretta" senza alcun riferimento al contesto o obiettivo dell'analisi.
Gala,

Risposte:


29

Spero che queste risposte alle tue due domande calmino la tua preoccupazione:

  1. Una matrice di correlazione è una matrice di covarianza dei dati standardizzati (cioè non solo centrati ma anche riscalati); cioè una matrice di covarianza (come se) di un altro set di dati diverso. Quindi è naturale e non dovrebbe preoccuparti che i risultati differiscano.
  2. Sì, ha senso trovare le direzioni della massima varianza con i dati standardizzati - sono le direzioni di - per così dire - "correlazione", non "covarianza"; cioè, dopo che l'effetto della varianza diseguale - delle variabili originali - sulla forma del cloud di dati multivariato è stato rimosso.

Prossimo testo e immagini aggiunti da @whuber (lo ringrazio. Vedi anche il mio commento qui sotto)

Ecco un esempio bidimensionale che mostra perché ha ancora senso individuare gli assi principali dei dati standardizzati (mostrato a destra). Si noti che nel grafico a destra la nuvola ha ancora una "forma" anche se le varianze lungo gli assi delle coordinate sono ora esattamente uguali (a 1.0). Allo stesso modo, nelle dimensioni più elevate la nuvola di punti standardizzata avrà una forma non sferica anche se le varianze lungo tutti gli assi sono esattamente uguali (a 1.0). Gli assi principali (con gli autovalori corrispondenti) descrivono quella forma. Un altro modo per comprenderlo è notare che tutto il riscalamento e lo spostamento che avvengono durante la standardizzazione delle variabili avvengono solo nelle direzioni degli assi delle coordinate e non nelle direzioni principali stesse.

figura

Ciò che sta accadendo qui è geometricamente così intuitivo e chiaro che sarebbe un tratto caratterizzarlo come una "operazione black-box": al contrario, la standardizzazione e la PCA sono alcune delle cose più basilari e di routine che facciamo con i dati in ordine per capirli.


Continua da @ttnphns

Quando si preferirebbe fare PCA (o analisi fattoriale o altro tipo analogo di analisi) su correlazioni (cioè su variabili z standardizzate) invece di farlo su covarianze (cioè su variabili centrate)?

  1. Quando le variabili sono diverse unità di misura. È chiaro
  2. Quando si desidera che l'analisi rifletta solo e solo le associazioni lineari . Pearson r non è solo la covarianza tra le variabili non graduate (varianza = 1); è improvvisamente la misura della forza della relazione lineare, mentre il solito coefficiente di covarianza è ricettivo alla relazione sia lineare che monotona.
  3. Quando si desidera che le associazioni riflettano la co-deviazione relativa (dalla media) piuttosto che la co-deviazione cruda. La correlazione si basa sulle distribuzioni, i loro spread, mentre la covarianza si basa sulla scala di misurazione originale. Se dovessi analizzare i fattori psicopatologici dei pazienti come valutato dagli psichiatri su alcuni questionari clinici costituiti da elementi di tipo Likert, preferirei le covarianze. Perché non è previsto che i professionisti distorcano la scala di valutazione intrapsichica. Se, d'altra parte, dovessi analizzare gli auto-portrati dei pazienti con lo stesso questionario, sceglierei probabilmente le correlazioni. Poiché la valutazione del profano dovrebbe essere relativa ad "altre persone", "la maggioranza" "deviazione ammissibile" lente che "restringe" o "allunga" la scala di valutazione per uno.

1
1. Mi dispiace, ma questo disturba molto. Per un individuo esterno, la standardizzazione è un'operazione in scatola nera, parte del pre-condizionamento dei dati PCA (anche in ICA). Vuole una risposta per i suoi dati di input (grezzi), soprattutto se si riferisce a dati fisici (dimensionati) per i quali l'output PCA deve essere interpretato fisicamente (cioè, in termini di variabili non standardizzate).
Lucozade,

1
La tua ultima revisione sembra essere una riaffermazione secondo cui "la PCA basata sulla covarianza è l'unica veramente corretta". Poiché l'insieme delle risposte finora è essenzialmente "No; modo sbagliato di pensarci; ed ecco perché" è difficile sapere come ti aspetti di guidare la discussione contro un disaccordo così schiacciante.
Nick Cox,

4
@Lucozade: ero confuso riguardo alla descrizione della tua applicazione: - In che modo PCA raccomanda qualcosa? Come hai misurato le prestazioni ? Allo stesso modo per il tuo ultimo commento: - L' ottimale per cosa?
Scortchi - Ripristina Monica

5
@Lucozade: Anzi, ascolta per favore quello che ha detto Scortchi, sembra che tu continui a inseguire gli spettri. PCA è semplicemente una forma speciale di rotazione dei dati nello spazio. Fa sempre in modo ottimale ciò che fa con i dati di input. Il dilemma cov-corr è pragmatico, radicato nella pre-elaborazione dei dati e risolto a quel livello, non a livello di PCA.
ttnphns,

1
@Lucozade: Sarebbe la mia opinione (non esperta) basata sulla tua risposta che secondo le tue specifiche esigenze, hai ragione a desiderare un PCA basato su cov. Ancora una volta, le variabili sono tutte omogenee in termini di tipo di dati / misura (stesso tipo di macchina e tutti i dati in volt). Per me il tuo esempio è chiaramente un caso in cui cov-PCA è corretto, ma tieni presente che non è sempre così, e penso che questo sia il punto importante di questo mentre il thread (la scelta di cor v. Cov è specifica del caso e necessita essere determinato dalla persona che comprende meglio i dati e l'applicazione). Buona fortuna con la tua ricerca!
Patrick,

6

Parlando da un punto di vista pratico - probabilmente impopolare qui - se hai dati misurati su scale diverse, procedi con la correlazione ("ridimensionamento UV" se sei un chemiometrico), ma se le variabili sono sulla stessa scala e le dimensioni contano (ad es. con dati spettroscopici), quindi la covarianza (centrando solo i dati) ha più senso. PCA è un metodo dipendente dalla scala e anche la trasformazione dei registri può aiutare con dati altamente distorti.

A mio modesto parere, basato su 20 anni di applicazione pratica della chemiometria, devi sperimentare un po 'e vedere cosa funziona meglio per il tuo tipo di dati. Alla fine della giornata devi essere in grado di riprodurre i tuoi risultati e provare a dimostrare la prevedibilità delle tue conclusioni. Il modo in cui ci si arriva è spesso un caso di tentativi ed errori, ma l'importante è che ciò che fai sia documentato e riproducibile.


4
L'approccio pratico che sembra sostenere qui si riduce a - quando sono garantite sia le covarianze che le correlazioni - "provate entrambe e vedete cosa funziona meglio". Quella posizione empirica pura maschera il fatto che ogni scelta si accompagna ai suoi stessi presupposti o paradigma sulla realtà di cui il ricercatore dovrebbe essere consapevole in anticipo, anche se capisce che preferisce uno di loro in modo completamente arbitrario. Selezionare "ciò che funziona meglio" è capitalizzare sulla sensazione di piacere, la narcomania.
ttnphns,

-2

Non ho tempo di andare a una descrizione più completa degli aspetti dettagliati e tecnici dell'esperimento che ho descritto, e i chiarimenti sulle diciture (raccomandazione, prestazione, ottimale) ci allontanerebbero di nuovo dal vero problema, che riguarda il tipo di dati di input il PCA può (non) / dovrebbe (non) assumere. PCA opera prendendo combinazioni lineari di numeri (valori di variabili). Matematicamente, ovviamente, si possono aggiungere due numeri (reali o complessi). Ma se sono stati ridimensionati prima della trasformazione della PCA, la loro combinazione lineare (e quindi il processo di massimizzazione) è ancora significativa su cui operare? Se ogni variabile ha la stessa varianza , allora chiaramente sì, perchés 2 ( x 1 / s 1 ) + ( x 2 / s 2 ) = ( x 1 + x 2 ) / s x 1 + x 2 s 1s 2xis2(x1/s1)+(x2/s2)=(x1+x2)/sè ancora proporzionale e paragonabile alla sovrapposizione fisica dei dati stesso. Ma se , la combinazione lineare di quantità standardizzate distorce i dati delle variabili di input in modo diversox1+x2s1s2gradi. Sembra poco utile quindi massimizzare la varianza della loro combinazione lineare. In tal caso, PCA offre una soluzione per un diverso insieme di dati, per cui ciascuna variabile viene ridimensionata in modo diverso. Se successivamente non si standardizza (quando si utilizza corr_PCA), potrebbe essere OK e necessario; ma se prendessi la soluzione corr_PCA grezza così com'è e ti fermassi lì, otterrai una soluzione matematica, ma non una relativa ai dati fisici. Dato che la non standardizzazione in seguito sembra obbligatoria come minimo (cioè, "distendere" gli assi dalle deviazioni standard inverse), all'inizio si sarebbe potuto usare cov_PCA. Se stai ancora leggendo, sono impressionato! Per ora, finisco citando dal libro di Jolliffe, p. 42, che è la parte che mi riguarda:"Non si deve dimenticare, tuttavia, che i PC a matrice di correlazione, se riespressi in termini di variabili originali, sono ancora funzioni lineari di x che massimizzano la varianza rispetto alle variabili standardizzate e non rispetto alle variabili originali." Se pensi che io stia interpretando erroneamente questa o le sue implicazioni, questo estratto potrebbe essere un buon punto di messa a fuoco per ulteriori discussioni.


3
È così divertente che la tua risposta, che è in sintonia con tutto ciò che la gente qui stava cercando di comunicarti, rimane inquieta per te. Discuti ancora There seems little pointin PCA sulle correlazioni. Bene, se hai bisogno di stare vicino ai dati grezzi ("dati fisici", come li chiami stranamente), non dovresti davvero usare le correlazioni poiché corrispondono ad altri dati ("distorti").
ttnphns,

2
(Cont.) La citazione di Jolliffe afferma che i PC ottenuti con le correlazioni saranno sempre loro stessi e non possono essere "restituiti" in PC nelle covarianze anche se è possibile ri-esprimerli come combinazioni lineari delle variabili originali. Pertanto, Jolliffe sottolinea l'idea che i risultati della PCA dipendono completamente dal tipo di pre-elaborazione utilizzata e che non esistono PC "veri", "autentici" o "universali" ...
ttnphns,

2
(Cont.) E in effetti, diverse righe sotto Jolliffe parlano di un'altra "forma" di PCA - PCA su X'Xmatrice. Questo modulo è persino "più vicino" ai dati originali rispetto a cov-PCA perché non viene eseguito il centraggio delle variabili. E i risultati sono di solito completamente diversi . Puoi anche fare PCA sui coseni. Le persone fanno PCA su tutte le versioni della matrice SSCP , sebbene le covarianze o le correlazioni vengano utilizzate più spesso.
ttnphns,

3
Alla base di questa risposta è un presupposto implicito che le unità in cui vengono misurati i dati hanno un significato intrinseco. Ciò accade raramente: potremmo scegliere di misurare la lunghezza in Angstrom, parsec o qualsiasi altra cosa e il tempo in picosecondi o millenni, senza alterare il significato dei dati di una virgola. Le modifiche apportate nel passaggio dalla covarianza alla correlazione sono semplicemente cambiamenti di unità (che, tra l'altro, sono particolarmente sensibili ai dati periferici). Ciò suggerisce che il problema non è la covarianza rispetto alla correlazione, ma piuttosto di trovare modi fruttuosi per esprimere i dati per l'analisi.
whuber

3
@ttnphns Resterò "solo", grazie. Indipendentemente dal fatto che le implicazioni siano "profonde", resta il fatto che la standardizzazione di una variabile è letteralmente una re-espressione affine dei suoi valori: un cambiamento nelle sue unità di misura. L'importanza di questa osservazione sta nelle sue implicazioni per alcune affermazioni che appaiono in questo thread, di cui la più importante è "la PCA basata sulla covarianza è l'unica veramente corretta". Qualsiasi concezione di correttezza che alla fine dipende da un aspetto essenzialmente arbitrario dei dati - come li scriviamo - non può essere giusta.
whuber
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.