Perché trasformare i dati prima di eseguire l'analisi dei componenti principali?


16

Sto seguendo un tutorial qui: http://www.r-bloggers.com/computing-and-visualizing-pca-in-r/ per ottenere una migliore comprensione del PCA.

Il tutorial utilizza il set di dati di Iris e applica una trasformazione del registro prima di PCA:

Si noti che nel codice seguente applichiamo una trasformazione del registro alle variabili continue come suggerito da [1] e impostato centere scaleuguale a TRUEnella chiamata prcompper standardizzare le variabili prima dell'applicazione di PCA.

Qualcuno potrebbe spiegarmi in un inglese semplice perché per prima cosa usi la funzione log nelle prime quattro colonne del set di dati di Iris. Capisco che abbia qualcosa a che fare con il rendere i dati relativi ma sono confuso qual è esattamente la funzione di registro, centro e scala.

Il riferimento [1] sopra è a Venables e Ripley, moderne statistiche applicate con S-PLUS , Sezione 11.1 che dice brevemente:

I dati sono misurazioni fisiche, quindi una solida strategia iniziale è quella di lavorare su scala logaritmica. Questo è stato fatto dappertutto.


Risposte:


19

Il set di dati dell'iride è un ottimo esempio per imparare il PCA. Detto questo, le prime quattro colonne che descrivono la lunghezza e la larghezza dei sepali e dei petali non sono un esempio di dati fortemente distorti. Pertanto, la trasformazione dei log dei dati non modifica molto i risultati, poiché la rotazione risultante dei componenti principali è pressoché invariata dalla trasformazione dei log.

In altre situazioni, la trasformazione dei log è una buona scelta.

Eseguiamo PCA per ottenere informazioni sulla struttura generale di un set di dati. Centriamo, ridimensioniamo e talvolta trasformiamo il log per filtrare alcuni effetti banali, che potrebbero dominare il nostro PCA. L'algoritmo di un PCA troverà a sua volta la rotazione di ciascun PC per minimizzare i residui quadrati, vale a dire la somma delle distanze perpendicolari quadrate da qualsiasi campione ai PC. Valori elevati tendono ad avere una leva elevata.

Immagina di iniettare due nuovi campioni nei dati dell'iride. Un fiore con una lunghezza di 430 cm di petalo e uno con una lunghezza di petalo di 0,0043 cm. Entrambi i fiori sono molto anormali essendo 100 volte più grandi e 1000 volte più piccoli rispettivamente rispetto agli esempi medi. L'effetto leva del primo fiore è enorme, in modo che i primi PC descriveranno principalmente le differenze tra il grande fiore e qualsiasi altro fiore. Il raggruppamento di specie non è possibile a causa di quello anomalo. Se i dati vengono trasformati in log, il valore assoluto ora descrive la variazione relativa. Ora il piccolo fiore è il più anormale. Tuttavia è possibile sia contenere tutti i campioni in un'unica immagine sia fornire un giusto raggruppamento delle specie. Dai un'occhiata a questo esempio:

data(iris) #get data
#add two new observations from two new species to iris data
levels(iris[,5]) = c(levels(iris[,5]),"setosa_gigantica","virginica_brevis")
iris[151,] = list(6,3,  430  ,1.5,"setosa_gigantica") # a big flower
iris[152,] = list(6,3,.0043,1.5  ,"virginica_brevis") # a small flower

#Plotting scores of PC1 and PC" without log transformation
plot(prcomp(iris[,-5],cen=T,sca=T)$x[,1:2],col=iris$Spec)

inserisci qui la descrizione dell'immagine

#Plotting scores of PC1 and PC2 with log transformation
plot(prcomp(log(iris[,-5]),cen=T,sca=T)$x[,1:2],col=iris$Spec)

inserisci qui la descrizione dell'immagine


2
Bella demo e trame.
Shadowtalker

3

Bene, l'altra risposta fornisce un esempio, quando la trasformazione del log viene utilizzata per ridurre l'influenza di valori estremi o valori anomali.
Un altro argomento generale si verifica quando si tenta di analizzare dati composti in modo moltiplicativo anziché additivamente - il modello PCA e FA in base alla loro matematica tali composizioni additive. moltiplicativole composizioni si verificano nel caso più semplice di dati fisici come la superficie e il volume dei corpi (funzionalmente) dipendenti (ad esempio) dai tre parametri lunghezza, larghezza, profondità. Si possono riprodurre le composizioni di un esempio storico del primo PCA, penso che sia chiamato "problema della palla di Thurstone (o" cubi ") o simili. Una volta avevo giocato con i dati di quell'esempio e avevo scoperto che i dati trasformati in tronchi davano un modello molto più bello e chiaro per la composizione del volume misurato e dei dati di superficie con le tre misure unidimensionali.

Oltre a esempi così semplici, se consideriamo nelle interazioni dei dati della ricerca sociale, li consideriamo usualmente così come le misurazioni composte in modo multiplo di più elementi elementari. Quindi, se guardiamo specificamente alle interazioni, una trasformazione del log potrebbe essere uno strumento utile utile per ottenere un modello matematico per la decomposizione.


Potresti elencare alcuni riferimenti che potrebbero spiegare meglio le composizioni "moltiplicative"? Molte grazie!
Amatya,

1
@Amatya - Non ho trovato il "problema del thurstone-box-problem", ma una discussione (tedesca) del sito pca sui cubi, contenente larghezza, lunghezza, altezza come elementi e superfici di base e volume come elementi aggiuntivi combinati in modo moltiplicativo. Forse le formule incluse per le definizioni sono sufficienti. Vedi sgipt.org/wisms/fa/Quader/q00.htm
Gottfried Helms

1
Ah, e ho dimenticato - una mia vecchia discussione su questo go.helms-net.de/stat/fa/SGIPT_Quader.htm
Gottfried Helms

@GottfriedHelms Non riesco ancora a capire perché, se stiamo standardizzando le variabili, dobbiamo anche trasformarle nel log. Comprendo il principio generale di ridurre l'influenza indesiderata di valori anomali estremi, ma se stiamo già standardizzando (centrando, ridimensionando), sembra che il log che lo trasformi in aggiunta stia effettivamente distorcendo i dati.
Yu Chen,

@YuChen - qualsiasi trasformazione del log converte in modo moltiplicativo la composizione in composizione additiva e la composizione additiva è il presupposto di base (oltre alla linearità ecc.) Di tutti i tipi di componenti e analisi dei fattori. Quindi, se i tuoi dati hanno una composizione moltiplicativa, una trasformazione del log dovrebbe essere un'opzione che vale la pena considerare.
Gottfried Helms,
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.