Come applicare la regressione sui componenti principali per prevedere una variabile di output?


9

Ho letto le basi dell'analisi dei componenti principali da tutorial1 , link1 e link2 .

Ho un set di dati di 100 variabili (inclusa la variabile di output Y), voglio ridurre le variabili a 40 tramite PCA e quindi prevedere la variabile Y utilizzando quelle 40 variabili.

Problema 1: dopo aver ottenuto i componenti principali e aver scelto i primi 40 componenti, se applico la regressione su di esso ottengo alcune funzioni che si adattano ai dati. Ma come prevedere una variabile Y dai dati originali? Per prevedere la variabile YI ho (100-1) variabili all'ingresso, e come faccio a sapere quali 40 variabili scegliere tra le mie variabili 100-1 originali?

Problema 2: inversione del PCA e recupero dei dati da quei 40 componenti principali. Ma i dati sono cambiati perché ho scelto solo i primi 40 componenti. Applicare la regressione a questi dati ha senso?

Uso Matlab / Octave.


Per fare PCA, quale software o programma usi? Ad esempio in SPSS questa analisi può essere eseguita facilmente e puoi impostare il numero di componenti principali che vuoi estrarre e puoi vedere quali sono selezionati nell'output. Ovviamente applicare la regressione in questi dati ha senso perché il PCA viene utilizzato solo per la riduzione delle dimensioni.
Merveceng,

1
Se sei interessato unicamente a fare previsioni, dovresti essere consapevole del fatto che Hastie, Tibshirani e Friedman raccomandano la regressione di LASSO sulla regressione dei componenti principali perché LASSO presumibilmente fa la stessa cosa (migliora l'abilità predittiva riducendo il numero di variabili nel modello), ma meglio. LASSO è anche ampiamente disponibile al giorno d'oggi in pacchetti statistici.
Shadowtalker,

@ssdecontrol: Do Hastie et al. raccomandare specificamente lazo sulla regressione del componente principale? La PCR è molto più vicina alla regressione della cresta che al lazo: non impone alcuna scarsità (cioè non sta facendo la selezione delle caratteristiche, a differenza del lazo), piuttosto penalizza tutti i pesi simili alla cresta. Forse raccomandano una rete elastica su PCR, ma è un lazo più una cresta.
Amoeba,

1
@amoeba Sono appena andato a controllare il PDF online. O il testo è cambiato o ho capito male la prima volta che l'ho letto. La conclusione non è che "il lazo è superiore", ma che "la PCR, la PLS e la regressione della cresta tendono a comportarsi in modo simile" e che la cresta potrebbe essere migliore perché è continua. Grazie per avermi reso onesto!
Shadowtalker,

Risposte:


7

Non scegli un sottoinsieme delle tue 99 (100-1) variabili originali.

Ciascuno dei componenti principali sono combinazioni lineari di tutte le 99 variabili predittive (variabili x, IV, ...). Se si utilizzano i primi 40 componenti principali, ciascuno di essi è una funzione di tutte le 99 variabili predittive originali. (Almeno con il normale PCA - ci sono versioni sparse / regolarizzate come SPCA di Zou, Hastie e Tibshirani che produrranno componenti basati su un minor numero di variabili.)

Considera il semplice caso di due variabili positivamente correlate, che per semplicità supponiamo siano ugualmente variabili. Quindi il primo componente principale sarà un multiplo (frazionario) della somma di entrambe le variate e il secondo sarà un multiplo (frazionario) della differenza delle due variate; se i due non sono ugualmente variabili, il primo componente principale peserà più pesantemente quello più variabile, ma coinvolgerà comunque entrambi.

yX

Quindi usi le tue 40 nuove variabili come se fossero predittori a sé stanti, proprio come faresti con qualsiasi problema di regressione multipla. (In pratica, ci sono modi più efficienti per ottenere le stime, ma lasciamo da parte gli aspetti computazionali e trattiamo solo un'idea di base)

Per quanto riguarda la tua seconda domanda, non è chiaro cosa intendi per "inversione dell'APC".

XZ=XWXn×99W99×4040y^=Zβ^PC

y^=Zβ^PC=XWβ^PC=Xβ^β^=Wβ^PCyX. Ovviamente non è lo stesso dei coefficienti che ottieni stimando una regressione sulle X originali - è regolarizzato facendo il PCA; anche se otterresti coefficienti per ciascuna delle tue X originali in questo modo, hanno solo il df del numero di componenti che hai montato.

Vedi anche Wikipedia sulla regressione del componente principale .

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.