Standardizzare le funzionalità quando si utilizza LDA come fase di pre-elaborazione


9

Se un'analisi discriminante lineare multi-classe (o leggo talvolta anche analisi discriminante multipla) viene utilizzata per la riduzione della dimensionalità (o trasformazione dopo la riduzione della dimensionalità tramite PCA), capisco che in generale una "normalizzazione del punteggio Z" (o standardizzazione) di le funzionalità non saranno necessarie, anche se misurate su scale completamente diverse, giusto? Dato che LDA contiene un termine simile alla distanza di Mahalanobis che implica già distanze euclidee normalizzate?

Quindi non solo non sarebbe necessario, ma i risultati dopo un LDA sulle funzionalità standardizzate e non standardizzate dovrebbero essere esattamente gli stessi !?


1
in general a "Z-score normalization" (or standardization) of features won't be necessary, even if they are measured on completely different scalesNo, questa affermazione non è corretta. Il problema della standardizzazione con LDA è lo stesso di qualsiasi metodo multivariato. Ad esempio, PCA. La distanza di Mahalanobis non ha nulla a che fare con questo argomento.
ttnphns,

Grazie, sarebbe bello se potessi commentare questo "problema di standardizzazione" in PCA, per esempio. Se le funzionalità non sono standardizzate per PCA, alcune funzionalità non contribuiscono (ponderate) di più se vengono misurate su una scala diversa e mi danno assi componenti completamente diversi? E per la LDA, perché non sarà necessario? Il risultato (i discriminanti lineari) è diverso, se no, perché?

2
Quando si standardizza (cioè centra, quindi si scala) si analizzano effettivamente le correlazioni. Se non standardizzi, solo il centro, analizzerai effettivamente le covarianze. I risultati differiranno, il che è normale, perché è come se gestissi dati diversi. Questo fatto non dovrebbe preoccuparti. Potresti leggere il thread stats.stackexchange.com/q/62677/3277 .
ttnphns,

2
@SebastianRaschka, ameba: devo riconsiderare il mio commento The issue of standardization with LDA is the same as in any multivariate method. In realtà, con LDA (al contrario di PCA, ad esempio) i risultati non dovrebbero differire se hai centrato solo (LDA centra sempre le variabili internamente, per estrarre i discriminanti) o standardizza i dati.
ttnphns,

2
(Cont.) Autovalori, coefficienti standardizzati, correlazioni strutturali, punteggi discriminanti: tutto sarà uguale. Solo gli autovettori differiranno. Il motivo per cui non vi è alcun effetto della standardizzazione sui principali risultati della LDA è che la LDA decompone il rapporto tra covarianze tra e all'interno e non la covarianza stessa che ha la sua grandezza (come fa PCA).
ttnphns,

Risposte:


13

Il merito di questa risposta va a @ttnphns che ha spiegato tutto nei commenti sopra. Tuttavia, vorrei fornire una risposta estesa.

Alla tua domanda: i risultati LDA su funzionalità standardizzate e non standardizzate saranno esattamente gli stessi? --- la risposta è . Per prima cosa fornirò una discussione informale, quindi procederò con un po 'di matematica.

Immagina un set di dati 2D mostrato come un diagramma a dispersione su un lato di un palloncino (immagine del palloncino originale presa da qui ): LDA su un baloon

Qui i punti rossi sono una classe, i punti verdi sono un'altra classe e la linea nera è il limite della classe LDA. Ora riscalandox o ygli assi corrispondono allo stiramento del palloncino in orizzontale o in verticale. È intuitivamente chiaro che anche se la pendenza della linea nera cambierà dopo tale allungamento, le classi saranno esattamente separabili come prima e la posizione relativa della linea nera non cambierà. Ogni osservazione di prova verrà assegnata alla stessa classe di prima dello stretching. Quindi si può dire che lo stretching non influenza i risultati della LDA.


Ora, matematicamente, LDA trova una serie di assi discriminanti calcolando gli autovettori di W1B, dove W e Bsono matrici di dispersione all'interno e tra le classi. Equivalentemente, si tratta di autovettori generalizzati del problema degli autovalori generalizzatiBv=λWv.

Considera una matrice di dati centrata X con variabili in colonne e punti dati in righe, in modo che la matrice di dispersione totale sia data da T=XX. Standardizzare gli importi dei dati per ridimensionare ogni colonna diXcon un certo numero, ovvero sostituendolo con , dove è una matrice diagonale con coefficienti di scala (inversa delle deviazioni standard di ogni colonna) sulla diagonale. Dopo tale riscalaggio, la matrice scatter cambierà come segue: e la stessa trasformazione avverrà con e .Xnew=XΛΛTnew=ΛTΛWnewBnew

Sia un autovettore del problema originale, ovveroSe moltiplichiamo questa equazione con a sinistra e inseriamo su entrambi i lati prima di , otteniamo ovvero che significa chev

Bv=λWv.
ΛΛΛ1v
ΛBΛΛ1v=λΛWΛΛ1v,
BnewΛ1v=λWnewΛ1v,
Λ1vè un autovettore dopo il ridimensionamento esattamente con lo stesso autovalore di prima.λ

Quindi l'asse discriminante (dato dall'autovettore) cambierà, ma il suo autovalore, che mostra quanto sono separate le classi, rimarrà esattamente lo stesso. Inoltre, la proiezione su questo asse, originariamente data da , sarà ora data da , ovvero rimarrà esattamente lo stesso (forse fino a un fattore di ridimensionamento).XvXΛ(Λ1v)=Xv


2
+1. La "morale" di tutta la storia è che la differenza tra i soli dati centrati e i dati standardizzati è completamente assente negli autovettori. Quindi, quando i dati vengono moltiplicati dagli autovettori corrispondenti per produrre punteggi discriminanti, l'effetto della standardizzazione si annulla. XXΛΛ
ttnphns,
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.