• Non ci sono risultati.

Capitolo 5 Analisi delle componenti principali (PCA)

N/A
N/A
Protected

Academic year: 2021

Condividi "Capitolo 5 Analisi delle componenti principali (PCA)"

Copied!
20
0
0

Testo completo

(1)

Analisi delle componenti principali (PCA)

Questa parte di lezioni intende illustrare un metodo di analisi dei dati che va sotto il nome di Principal Component Analysis (PCA) ad eventuali lettori con un minimo background nell’ambito del calcolo matriciale. Per facilitare il rag- giungimento di una buona consapevolezza di quando, come e perch` e l’analisi PCA funziona, seguiremo per quanto possibile un approccio intuitivo utilizzando degli esempi.

Una osservazione o un esperimento vengono efficacemente descritti e hanno “sen- so fisico” solo quando siamo in grado di acquisire/conoscere i valori di un certo numero di grandezze che abbiamo in qualche modo deciso di utilizzare per carat- terizzare il fenomeno indagato. Per esempio, se studiamo i temporali potremmo essere interessati a registrare l’ora, la data, la durata, il numero di fulmini, la quantit` a d’acqua precipitata, la temperatura al suolo, la pressione atmosferica iniziale e finale, la dimensione dell’area interessata dalla pioggia, la presenza o assenza di grandine, la fase della Luna, ed altre possibili grandezze che riteniamo possano essere legate o possano condizionare in qualche modo il fenomeno che vogliamo studiare.

Questa elencazione, volutamente lunga, fa capire come possiamo facilmente trovar- ci a dover gestire una grande quantit` a di dati, dai quali vorremmo provare ad estrarre le informazioni essenziali per indagare sulla natura del fenomeno studi- ato. L’analisi delle componenti principali (che d’ora in avanti indicheremo con PCA (da Principal Component Analysis) viene utilizzata in questi contesti come uno strumento che sfrutta l’algebra lineare per individuare le correlazioni di

87

(2)

maggiore importanza che si presentano tra tutti i dati accumulati durante un esperimento o, meglio, una serie di esperimenti.

Lo scopo di queste note ` e duplice: da una parte quello di fornire un esempio intuitivo che faccia comprendere il meccanismo di funzionamento del metodo PCA; d’altra parte quello di discutere la faccenda in modo abbastanza completo, includendo per questo degli elementi di algebra lineare. Questa infatti fornisce gli strumenti di calcolo che trovano una importante applicazione nel risolvere il problema pratico di dare ai dati sperimentali una organizzazione che sia efficiente senza sacrificarne il contenuto informativo.

Il nostro obiettivo ` e infatti quello di diminuire, per quanto possibile, la dimen- sionalit` a

1

dei nostri dati, senza per questo rinunciare al grosso dell’informazione presente negli stessi dati. In pratica vogliamo ridurre il numero di variabili in gioco, senza per` o perdere la capacit` a di decrittare il “racconto” che i dati ci danno del fenomeno che ci interessa.

L’approccio che useremo sar` a di tipo operativo per cui useremo alcune propriet` a dell’algebra delle matrici senza darne una prova esplicita. Il lettore interessato alle specifiche dimostrazioni potr` a consultare uno dei tanti manuali di algebra lineare, mentre chi fosse interessato alla sola applicazione pratica del metodo potr` a ignorare le dimostrazioni ed assumere come provate tutte le propriet` a delle matrici che saranno utilizzate in seguito.

5.1 Un caso immaginario

Come abbiamo visto, dopo un dato esperimento ci troviamo in generale a dover maneggiare una gran mole di dati la cui lettura/interpretazione ` e resa complicata proprio dalla loro grande quantit` a e dalla loro eventuale ridondanza

2

. In senso pi` u tecnico potremmo sospettare che i dati raccolti durante il nostro esperimento non siano del tutto linearmente indipendenti gli uni dagli altri.

Per fare chiarezza sarebbe opportuno individuare quali tra le grandezze mis-

1

Con il termine dimensionali` a vogliamo indicare il numero di variabili casuali considerate per descrivere un dato esperimento/fenomeno.

2

La ridondanza qui si riferisce alla possibilit` a che i nostri dati siano “inutilmente troppi” nel

senso che alcuni di essi potrebbero semplicemente rappresentare una ripetizione di informazioni

gi` a acquisite su una data variabile del sistema. Per esempio, acquisire la densit` a di un gas

perfetto ` e ridondante se sono gi` a note temperatura e pressione.

(3)

Figura 5.1: Schema dell’esperimento idealmente allestito.

urate siano pi` u significative per descrivere il fenomeno osservato o, ancora pi` u in generale, quale combinazione tra grandezze misurate sia pi` u adatta ad una descrizione che mira ad essere la pi` u semplice possibile.

Per fare un esempio pratico immaginiamo una situazione sperimentale ipotetica in cui tre telecamere riprendono, da postazioni diverse, una scena in cui c’` e una molla di massa trascurabile fissata da una sua estremit` a ad una parete. All’altro capo della molla ` e fissata una massa che, poggiata su un piano senza attrito, viene fatta oscillare. Sappiamo dalla meccanica che la dinamica di un sistema del genere ` e monodimensionale e quindi pu` o essere perfettamente descritta usando un’unica variabile associata allo spostamento x.

Se ora noi ignoriamo la meccanica e ci comportiamo ingenuamente, eseguendo

l’esperimento potremo acquisire una quantit` a di immagini bidimensionali da cui

possiamo ricavare i valori di coppie di coordinate (x, y) che individuano la po-

sizione della massa oscillante ad un dato istante di tempo t per ognuna delle

tre telecamere usate. Si potrebbe obiettare che posizionando opportunamente

una telecamera potremmo eliminare ogni complicazione misurando esattamente

quello che serve, cio` e la dinamica lungo l’asse x del sistema di riferimento in

Fig. 5.1. Tuttavia questo non ` e quello che succede in generale, visto che nei casi

(4)

reali non sappiamo a priori quale tipo di misura sia la pi` u adatta per catturare la dinamica di un generico sistema fisico. In un caso reale poi interviene un’altra complicazione che ` e legata alla presenza del rumore (che qui intendiamo come incertezza) in ogni misura, cosa di cui si dovr` a anche tener conto per una pi` u verosimile interpretazione dei segnali.

5.1.1 Cambio di base

Da quanto abbiamo detto fin qui si pu` o gi` a intuire che il cambiamento del sis- tema di riferimento su cui proiettiamo i nostri dati ` e la chiave per semplificare il nostro problema. Si pu` o pensare infatti che, procedendo per prove ed errori, prima o poi riusciremo ad individuare un posizionamento di una telecamera tale da vedere il sistema muoversi lungo una sola direzione x o y di una telecamera, riducendo quindi il problema alla considerazione di una sola variabile. L’obiet- tivo del metodo PCA ` e proprio l’individuazione di un nuovo set di variabili v

0

, ottenute a partire da combinazioni delle variabili misurate v

m

, che possa descivere pi` u efficacemente il fenomeno studiato. Con “pi` u efficacemente” si intende dire che il numero di variabili nuove N (v

0

) necessarie per descrivere compiutamente il sistema dovr` a essere minore del numero di variabili misurate nell’esperimento N (v

m

). Per esprimere questo concetto, d’ora in avanti diremo che la nuova de- scrizione (o anche il set di dati) dovr` a avere una minore dimensionalit` a.

Ritornando ora al nostro ipotetico esperimento da studiare ` e evidente che le tre telecamere ci daranno un insieme di dati di dimensionalit` a 6 (2 coordinate per ognuna delle immagini ottenute dalle 3 telecamere) che saranno certamente ridondanti, visto cha gi` a sappiamo che il nostro problema ` e intrinsecamente uni- dimensionale. Ci aspettiamo quindi che l’uso del metodo della PCA sia in grado di suggerirci che l’essenza del moto nel nostro esperimento ` e unidimensionale, anche se partiamo da dati osservativi che sono invece 6-dimensionali.

Organizzazione dei dati

Conviene a questo punto stabilire un criterio organizzativo per i nostri dati in modo da potervi fare riferimento nel seguito, ogni volta che sar` a necessario.

Questo criterio ` e illustrato in Tabella 5.1 dove si vede che una riga j (con

1 ≤ j ≤ m) individua un dato parametro misurato n volte, mentre una

colonna i (con 1 ≤ i ≤ n) individua un particolare set di valori per gli

m parametri da noi considerati. Questi ultimi saranno i valori delle grandezze

(5)

fisiche che abbiamo ottenuto al tempo t

i

nello studio del fenomeno/osservazione che ci interessa.

j → 1 2 3 ... m

i → 1 2 3 . . . n

t

i

→ t

1

t

2

t

3

. . . t

n

par A → A

1,1

A

1,2

A

1,3

. . . A

1,n

par B → B

2,1

B

2,2

B

2,3

. . . B

2,n

par C → C

3,1

C

3,2

C

3,3

. . . C

3,n

.. . → .. . .. . .. . .. . .. . par Z → Z

m,1

Z

m,2

Z

m,3

. . . Z

m,n

Tabella 5.1: Schema di organizzazione dei nostri dati in forma di matrice. Il numero m di righe rappresenta il numero di parametri con cui caratterizziamo gli esperimenti/osservazioni, mentre il numero n di colonne ` e pari al numero di esperimenti/osservazioni che abbiamo condotto.

Con un po’ di immaginazione possiamo quindi costruirci uno spazio con m dimensioni in cui rappresentiamo gli n punti corrispondenti al valore che i parametri assumono nelle n colonne della matrice.

Una base “naive”

In generale allora possiamo immaginare che una osservazione ad un dato istante di tempo t

i

produca un set di m misure corrispondenti alle m variabili che ab- biamo deciso di osservare durante l’esperimento. Queste costituiscono un vet- tore di m componenti che possiamo imaginare di rappresentare in uno spazio m-dimensionale. Eseguendo n osservazioni, ognuna ad un dato tempo t

i

con 1 ≤ i ≤ n, saremo in grado di individuare n vettori nello spazio m-dimensionale che “fotografano” il comportamento del nostro sistema nelle varie osservazioni fatte. In modo pi` u formale potremmo dire che, data una base ortonormale nel- lo spazio m-dimensionale, ogni osservazione ` e rappresentata da una particolare combinazione lineare di questi vettori di base. Una scelta “naive” di una base B

` e la matrice identit` a I:

 b

1

b

2

.. . b

m

=

1 0 . . . 0 0 1 . . . 0 .. . .. . . .. ...

0 0 0 1

= I (5.1)

(6)

che ` e una matrice quadrata (m × m) in cui ogni riga j rappresenta le m compo- nenti del vettore di base b

j

. Come si vede i vettori b

j

hanno una sola componente diversa da zero cos`ı che ogni prodotto tra due di essi ` e nullo e Quindi, siccome il loro modulo ` e pari ad 1, rappresentano i versori di una base ortonormale.

Se ora torniamo al nostro esperimento le telecamere acquisiscono tre immagi- ni ad ogni istante di tempo t

i

e da ognuna di queste immagini vengono estratti due valori di posizione della massa (x, y). Quindi in tutto avremo 6 valori che possiamo considerare come componenti di vettori che, messe insieme per tutte le telecamere, costituiscono dei vettori a 6 componenti: (x

A

, y

A

, x

B

, y

B

, x

C

, y

C

). In questo modo, se costruiamo un vettore colonna del tipo:

x = ~ x =

 x

A

y

A

x

B

y

B

x

C

y

C

(5.2)

vediamo che questo pu` o rappresentare l’insieme dei coefficienti nella base “naive”

stabilita prima. Per provarlo baster` a moltiplicare la base (5.1) per il vettore (5.2) ottenendo le componenti del vettore rappresentativo di questa osservazione nello spazio a sei dimensioni che abbiamo definito per collocare le nostre misure. ` E ovvio che in questo caso “naive” le componenti sono pari alle misure ottenute e quindi adottare la base naive (5.1) non cambia la rappresentazione delle nostre misure.

Una nuova base

A questo punto ci dobbiamo domandare se ` e possibile individuare un’altra base che, usando una opportuna combinazione lineare dei vettori della base iniziale, possa rappresentare in modo pi` u efficiente l’insieme dei dati sperimentali acquisiti.

L’aggettivo lineare va sottolineato perch` e l’analisi PCA ` e basato proprio sul- la notevole semplificazione, indotta dalla linearita’ del metodo, che ci porta a definire una base migliore per una rappresentazione pi` u compatta dei nostri dati.

Con queste premesse possiamo quindi gi` a dire che il metodo PCA non far` a altro che fornirci una nuova rappresentazione dei nostri dati su una nuova base che ci proponiamo di individuare come “migliore”di quella banale mostrata in (5.1).

Nel caso dell’ipotetico esperimento in Figura 5.1 dovr` a indicare che basta una

(7)

coordinata per ricavare la dinamica del sistema.

Prima di procedere ricordiamo alcune convenzioni di uso comune usate nel trattare con matrici 2D:

- il primo indice si riferisce alle righe, il secondo alle colonne della matrice - le operazioni tra matrici rispettano le regole usuali, in particolare la molti-

plicazione segue la regola delle righe×colonne

Siano ora X ed Y due matrici n colonne per m righe, legate tra loro da una trasformazione lineare P che possiamo rappresentare cos`ı

P X = Y (5.3)

L’equazione precedente corrisponde proprio ad un cambiamento di base e pu` o essere interpretata in vari modi:

1) P ` e una matrice che, moltiplicata ad X la trasforma in Y

2) da un punto di vista geometrico P produce una rotazione pi` u uno stretching

3

che trasforma X in Y

3) le righe della matrice P, {p

1

, ..., p

m

}, possono essere considerate come un set di nuovi vettori di base (analogamente alla 5.1) su cui vanno a proi- ettarsi le colonne di X (che corrispondono ai set di dati raccolti durante l’esperimento, come mostrato nella (5.2).

Per esplicitare il senso dell’ultima interpretazione definiamo le seguenti quantit` a:

• p

j

siano le righe di P che sono formate da m elementi. Quindi P, con m righe ed m colonne, ` e quadrata (come in 5.1);

• x

i

ed y

i

siano rispettivamente le n colonne di X ed Y, ognuna formata da m elementi (ricordiamo: m sono i nostri 6 parametri ottenuti per ogni osser- vazione effettuata; n invece individua il numero di osservazioni effettuate, ognuna al suo tempo t

i

)

3

In 2D uno stretching corrisponde ad una trasformazione che dilata/comprime le distanze

lungo una sola direzione, lasciando invariate quelle nella direzione perpendicolare.

(8)

e scriviamo esplicitamente il prodotto (5.3):

P X =

 p

1

.. . p

m

 x

1

. . . x

n



=

p

1

x

1

.. . p

1

x

n

.. . . .. .. . p

m

x

1

.. . p

m

x

n

= Y

(5.4)

Nella precedente notiamo che una colonna della nuova matrice Y ` e composta dal prodotto scalare tra le diverse righe della P ed i dati corrispondenti ad una stessa colonna delle X. Siccome i dati contenuti in una generica colonna x

i

individuano una precisa osservazione, ` e come dire che stiamo “proiettando” i dati osservati su una base P attraverso il prodotto scalare. In altre parole non facciamo altro che scrivere in Y le componenti dei nostri dati X sulla nuova base P.

Ora che abbiamo familiarizzato con il meccanismo di trasformazione dei dati rispetto ad una nuova base, ci resta da individuare quale sia la base pi` u appro- priata per i nostri scopi. Evidentemente la risposta ` e legata alle caratteristiche che vorremmo per la Y che sar` a la nuova rappresentazione dei nostri dati.

5.1.2 Varianza e covarianza

Ora entriamo nel cuore del problema: a partire dai nostri dati originariamente

“ingarbugliati” vogliamo individuare il modo pi` u significativo in cui possiamo esprimere il loro comportamento medio. Per trovare una soluzione procederemo in modo intuitivo, cercando di chiarire di volta in volta le assunzioni che fac- ciamo, per poi illustrare la procedura matematica che ci permette di decifrare i dati. Partiamo quindi considerando che i dati originali sono “ingarbugliati” da due potenziali responsabili che ora andiamo a discutere: il rumore (noise) e la ridondanza.

Rumore (Noise)

In generale i dati sperimentali sono tanto pi` u significativi (utilizzabili) quanto mi-

nore ` e il contributo del rumore alle misure acquisite. Un parametro cruciale utile

(9)

Figura 5.2: Distribuzione delle misure di posizione X ed Y ottenute dalle immagini della telecamera A.

per rappresentare la qualit` a delle nostre misure ` e il rapporto tra il segnale effetti- vamente attribuibile alla grandezza fisica misurata ed il rumore che si sovrappone alla misura. Se definiamo allora il rapporto tra la varianza del segnale e quella del rumore come il rapporto segnale/rumore SNR (Signal to Noise Ratio) possiamo scrivere:

SNR = σ

2signal

σ

noise2

(5.5)

Con questa definizione diremo che un SNR >> 1 indicher` a misure di buona qualit` a, mentre un SNR≈ 1 indicher` a misure significativamente contaminate dal rumore. Per rappresentare graficamente questo concetto in Figura 5.2 vedi- amo come si distribuiscono le misure ottenute da una delle telecamere del nostro esperimento in Figura 5.1.

Idealmente ci aspettiamo che ogni telecamera riveli una relazione perfettamente

lineare tra X ed Y , per cui ogni allontanamento da questa linearit` a lo attribuiamo

alla presenza del rumore che sempre coesiste con i dati sperimentali. Le due di-

rezioni principali individuate dai punti possono in questo caso essere interpretate

come le segnature del segnale (nella direzione di elongazione massima) e del ru-

more (in direzione trasversale al segnale). Quindi, per chiarire il senso che diamo

(10)

alle σ nella (5.5), riportiamo in Figura 5.2 due vettori di lunghezza pari alle var- ianze dei dati lungo le due direzioni principali. Il rapporto tra i moduli dei due vettori ` e proprio il rapporto SNR prima definito che qui possiamo interpretare graficamente come una misura di quanto sia “gonfiata” la distribuzione dei punti nel grafico. ` E evidente che ad un SNR 1 corrisponder` a un caso in cui i punti si distribuiscono strettamente intorno alla linea del segnale in modo da rendere σ

noise2

 σ

signal2

. Nel seguito assumeremo che il nostro apparato strumentale sia abbastanza efficiente da consentire misure con un alto SNR. Stiamo quindi an- dando a considerare una situazione in cui i parametri (segnali) acquisiti sono tanti ma sono anche “buoni”, nel senso che hanno un buon SNR

4

.

Ridondanza

Questo problema emerge chiaramente nel caso dell’esperimento che stiamo con- siderando. Infatti abbiamo posizionato pi` u sensori (telecamere) che in pratica poi misurano la stessa grandezza, ovvero la posizione di una massa nel tempo.

L’informazione acquisita sar` a perci` o ridondante o, detto in modo diverso, inutil- mente abbondante. Una rappresentazione grafica di questo concetto la possiamo realizzare immaginando un plot in cui riportiamo punti corrispondenti a misure ottenute per due diverse grandezze registrate, come mostrato in Figura 5.3.

L’idea che guida il metodo PCA ` e strettamente legata a questa caratteristica dei dati: vogliamo infatti scoprire quale e quanta ridondanza c’` e nei nostri dati per poter poi riesprimere gli stessi dati in modo pi` u conciso, riducendone in questo modo la dimensionalit` a.

Matrice di covarianza

Abbiamo gi` a visto nella relazione (5.5) che abbiamo usato il rapporto tra varianze per definire il SNR. Dalla Figura 5.2 notiamo per` o che per valutare le varianze σ

signal2

e σ

2noise

relative a ci` o che noi stiamo considerando “segnale” e “rumore”, dobbiamo considerare che i dati sperimentali sono distribuiti sia in X che in Y cosicch` e abbiamo a che fare con due variabili contemporaneamente. Se ora im- maginiamo un esperimento in cui abbiamo ottenuto due set di misure simultanee A e B (p.es. voltaggio e corrente; pressione e temperatura; oppure x

A

e y

A

con

4

Notare che qui stiamo considerando come rumore non l’incertezza di una singola misura

ma l’allontanamento dei punti osservati dalla tendenza media che essi mostrano lungo l’asse di

elongazione principale.

(11)

Figura 5.3: Esempi di distribuzione dei dati che si possono osservare registrando due grandezze

(r

1

, r

2

). I casi a, b, c rappresentano situazioni a ridondanza crescente. E evidente che `

nel caso c) basterebbe misurare una delle due grandezze rappresentate per avere informazioni

anche sull’altra, rendendo quindi ridondante il considerarle tutte e due. In questi casi conviene

descrivere i dati con una sola variabile, che per` o possa descrivere tutta la dinamica del sistema

osservato (legata alla varianza nella direzione del best fit). Sar` a quindi una combinazione lineare

di r

1

, r

2

che massimizza la varianza.

(12)

la telecamera A nel nostro esempio) a media nulla

5

abbiamo:

A = {a

1

, a

2

, . . . , a

n

} , B = {b

1

, b

2

, . . . , b

n

} (5.6) le varianze di A e B sono rispettivamente definite da:

σ

2A

= ha

2i

i

i

, σ

B2

= hb

2i

i

i

(5.7) dove h. . .i

i

indica la media dei valori “. . .” valutata su tutti gli indici 1 < i < n e dove si ` e tenuto conto che A e B sono a media nulla, cio` e ` e stata gi` a fatta la riduzione a

i

← (a

i

− ¯ a). La generalizzazione della varianza quando si usano due variabili combinate ` e detta covarianza ed ` e definita da:

σ

AB2

= ha

i

b

i

i

i

(5.8)

Si noti che:

- σ

AB2

→ 0 solo se A e B sono completamente scorrelati dando luogo a termini positivi e negativi che nella media tendono ad annullarsi.

- σ

AB2

= σ

A2

, se A ≡ B

Proviamo ora ad esprimere la covarianza in forma matriciale e per far questo adottiamo la convenzione che considera le componenti delle misure per i parametri A e B come elementi di vettori di tipo riga:

a = [a

1

, a

2

, . . . , a

n

] , b = [b

1

, b

2

, . . . , b

n

] (5.9) Con questa notazione possiamo esprimere la covarianza come un prodotto di matrici:

σ

2AB

= ab

T

n − 1 (5.10)

avendo indicato con l’apice

T

la matrice trasposta. Ricordando infatti la regola

“righe × colonne” per la moltiplicazione tra matrici, abbiamo che:

ab

T

= a

1

b

1

+ a

2

b

2

+ . . . + a

n

b

n

cosicch` e, dividendo per n − 1 come in eq. (5.10), otteniamo proprio la covarianza definita dalla eq. (5.8)

6

.

5

Per ottenere una rappresentazione del segnale a media nulla, baster` a sottrarre il valor medio a tutti i valori del set di misure. Questo elimina dai dati il segnale medio costante per meglio evidenziare la variabilit` a e semplificare la trattazione.

6

Usando dati sperimentali il fattore di normalizzazione per la sommatoria nella 5.8 non ` e

1/n, ma piuttosto 1/(n-1). Per stimare la varianza ` e infatti necessario aver gi` a stimato la media,

togliendo un “grado di libert` a” agli stessi dati

(13)

Covarianza tra pi` u misure

Per generalizzare il discorso ad un numero arbitrario di misure (nel nostro esempio avremmo n misure ognuna con 6 grandezze misurate: x

A

, y

A

, x

B

, y

B

, x

C

, y

C

). Le indicheremo in forma compatta riassumendole in altrettanti vettori di tipo riga come in (5.9). Per questo useremo il simbolo x

j

per riferirci al parametro j-esimo che sar` a composto a sua volta da n singole misure. Con queste posizioni allora avremo pi` u vettori di tipo riga x

j

, di n elementi, che concorrono a definire una matrice che contiene tutta l’informazione su un esperimento:

X =

 x

1

x

2

.. . x

m

(5.11)

Per come ` e stata costruita, le componenti di questa matrice hanno una interpre- tazione immediata che riflette l’organizzazione della Tab. 5.1:

- una riga j corrisponde a tutte le misure di un particolare tipo (p.es. la temperatura) ottenute in vari istanti di tempo t

1

, t

2

, t

3

, . . . , t

n

;

- una colonna i corrisponde all’insieme delle diverse misure (p.es. temper- atura, pressione, voltaggio, ...) ottenute ad un dato istante di tempo t

i

nel corso dell’esperimento i-esimo.

Siamo ora in grado di generalizzare la covarianza, introdotta con la eq. 5.10 tra due set di misure, per definire una “matrice di covarianza” S

X

in questo modo:

S

X

≡ 1

n − 1 XX

T

(5.12)

Sempre usando la regola del prodotto “righe×colonne” possiamo verificare che moltiplicando la prima riga di X per la prima colonna di X

T

otteniamo la vari- anza della grandezza espressa dalla prima riga. Infatti, siccome nella trasposta le righe e le colonne sono scambiate, la prima colonna di X

T

sar` a uguale alla prima riga di X cosicch` e l’operazione descritta corrisponde alla eq. 5.10 con a=b, rap- presentando quindi la varianza σ

1,12

dei valori del parametro rappresentato nella prima riga di X.

Il prossimo passo ` e di moltiplicare la prima riga di X per la seconda colonna di X

T

dando luogo al termine di covarianza σ

1,22

tra la prima e la seconda grandezza fisica

utilizzate nell’esperimento. Proseguendo nel calcolo avremo riempito con valori

di covarianza una nuova matrice che, per come ` e costruita, risulter` a quadrata:

(14)

S

X

=

σ

1,12

σ

1,22

σ

1,32

. . . σ

1,m2

σ

2,12

σ

2,22

σ

2,32

. . . σ

2,m2

σ

3,12

σ

3,22

σ

3,32

. . . σ

3,m2

.. . .. . .. . . .. .. .

σ

m,12

σ

2m,2

σ

2m,3

. . . σ

m,m2

(5.13)

E da notare che: `

- ` e una matrice m × m, e quindi quadrata, avendo messo in relazione tra di loro le m grandezze fisiche acquisite per ogni esperimento effettuato;

- la sua diagonale ` e occupata dalle varianze delle singole grandezze rappre- sentate nell’esperimento;

- le posizioni fuori dalla diagonale contengono le covarianze tra tutte le coppie di grandezze;

- la matrice ` e simmetrica in quanto per costruzione σ

i,j2

= σ

j,i2

;

- un valore grande della covarianza indica una situazione ben correlata del tipo di quella rappresentata nel grafico c) di Figura 5.3.

Possiamo quindi dire che S

X

contiene informazione su tutte le correlazioni esisten- ti tra coppie di grandezze misurate. Questo ` e ora il punto: siccome sospettiamo che i nostri dati possano essere affetti da ridondanza, per cercare di ridurla ci ap- prestiamo a manipolare la S

X

per ottenere una nuova matrice, che indicheremo con S

Y

, che abbia delle particolari propriet` a.

Diagonalizzazione della matrice di covarianza

Siccome il nostro scopo ` e di ridurre la ridondanza dei dati, vorremmo trovare delle nuove variabili che mostrino una grande varianza e quindi una grande sensi- bilit` a (cio` e varino molto) al variare delle condizioni in cui si svolge l’esperimento.

Queste nuove variabili vorremmo che siano sempre rappresentative dei nostri dati

ma che abbiano una covarianza pi` u piccola possibile per minimizzare quella che

abbiamo chiamato ridondanza. Per questo ci aspettiamo che le variabili pi` u in-

dicate per descrivere le nostre osservazioni siano quelle che producono covarianze

(15)

piccole o nulle tra le diverse misure, come nel caso esemplificato nel grafico a) di Figura 5.3. In un caso del genere ci aspettiamo che la matrice S

Y

di covarianza debba mostrare i corrispondenti valori non-diagonali nulli o molto piccoli.

In questo senso possiamo allora collegare la riduzione di ridondanza con la dimin- uzione o annullamento delle covarianze, cosa che possiamo ottenere con la diag- onalizzazione della matrice di covarianza dei dati originali S

X

. Per raggiungere quindi il nostro scopo dobbiamo trovare una nuova proiezione dei nostri dati (su una diversa base) che produca una nuova matrice di dati Y tale che la sua co- varianza S

Y

abbia gli elementi non diagonali nulli (idealmente) o almeno molto piccoli (in pratica).

Questo semplificher` a l’analisi di nostri dati perch` e una matrice diagonale possiede tutti gli elementi fuori dalla diagonale pari a zero e quindi baster` a considerare i soli elementi diagonali per valutare quali siano le nuove variabili pi` u importanti per descrivere il comportamento del sistema studiato. In pratica si individuer- anno delle nuove variabili

7

che producono la maggiore varianza σ

signal2

nei dati e quindi massimizzano il rapporto S/N in eq. (5.5). Tutto ci` o ci permette di dire che le nuove variabili saranno pi` u sensibili di quelle originali e quindi pi` u adatte a rivelare e/o descrivere il comportamento del sistema in esame.

Possiamo quindi concludere che il metodo PCA si basa essenzialmente sulla ricer- ca di una base di vettori {p

1

,. . ., p

m

} ortonormali (p

i

p

j

i,j

) che individuano le direzioni pi` u appropriate per rappresentare il nostro insieme di dati nel modo pi` u essenziale possibile e quindi evitando la ridondanza.

Procedura seguita

Immaginiamo ora di avere uno spazio m dimensionale in cui abbiamo rappre- sentato i punti corrispondenti alle nostre m grandezze, misurate n volte (come p.es. nello schema di Tabella 5.1). Avremo cos`ı una distribuzione di n punti che somiglier` a ad una nuvola rappresentata in uno spazio m-dimensionale, pi` u o meno simile a quella mostrata in Figura 5.2 nel caso pi` u facilmente visualizzabile di due sole dimensioni.

Per ridurre la ridondanza il metodo PCA si muove in questo spazio m dimension- ale con i seguenti passi:

7

Queste saranno combinazioni lineari delle variabili originariamente acquisite negli

esperimenti

(16)

- individua una direzione nella quale le proiezioni dei punti rappresentati hanno la maggiore varianza (p.es. nella Figura 5.2 questa direzione ` e quella indicata da σ

signal

). A questa direzione viene associato il primo vettore della base p

1

;

- analogamente al passo precedente si va ad individuare la seconda direzione nella quale la varianza ` e maggiore (tra tutte quelle rimaste) in modo da individuare cos`ı la direzione verso cui puntare il successivo vettore di base p

2

;

- iterando il punto precedente individueremo via via i successivi vettori di base che saranno ordinati, per costruzione, rispetto al valore della varianza cio` e rispetto all’importanza di quella direzione nell’evidenziare la variabilit` a dei dati (da cui il termine utilizzato di “componenti principali”)

Il fatto che la PCA usi una base ortonormale rende il problema trattabile con i metodi dell’algebra lineare con i quali cercheremo soluzioni algebriche. Queste dovranno tradurre in pratica la nostra richiesta per l’estrazione delle componenti principali dai nostri dati.

Assunzioni e Limiti

Prima di procedere ribadiamo una serie di cose importanti per avere una pi` u piena consapevolezza dei vantaggi e dei limiti del metodo PCA.

1- Linearit` a.

Il cambiamento di base ` e realizzato attraverso proiezioni lineari dei dati sulla nuova base ortonormale. Per completezza diciamo che c’` e anche la possibilit` a di usare trasformazioni non-lineari ed il metodo che ne deriva viene detto “kernel PCA”.

2- Sufficienza di Media e Varianza:

Il metodo PCA assume che la media e la varianza descrivano completa-

mente la distribuzione di probabilit` a dei dati trattati. Si noti che la sola

distribuzione a media zero che soddisfa questa richiesta ` e la Gaussiana,

quindi il metodo ` e strettamente applicabile solo a dati “Gaussiani”. D’al-

tra parte la gaussianit` a dei dati garantisce anche che il nostro modo di

definire sia il rapporto segnale/rumore (SNR) che la matrice di covarianza,

corrisponde ad una descrizione completa rispettivamente del rumore e della

ridondanza.

(17)

3- Varianza come sinonimo di importanza:

Le grandezze che mostrano la varianza pi` u grande sono quelle che hanno SNR maggiore. In questo senso, le componenti principali sono quelle con le varianze maggiori perch` e sono associate a dinamiche dei dati potenzial- mente pi` u interessanti. Al contrario le componenti con minore varianza sono associate piuttosto al rumore. Si noti che questa caratteristica pu` o es- sere sfruttata per ottenere una riduzione del rumore nei dati attraverso una ricostruzione del segnale che usi le sole componenti interessanti, evitando quelle pi` u rappresentative del rumore.

4- Componenti principali ortogonali:

Questa assunzione corrisponde ad una semplificazione del nostro proble- ma perch` e ci permette di accedere a tecniche di decomposizione basate su operazioni ben note di algebra lineare che andremo ad utilizzare nel seguito.

5.2 PCA e Autovettori di Covarianza

Per ottenere una riduzione della ridondanza dei nostri dati percorreremo due pos- sibili strade. Nella prima, cercheremo una soluzione utilizzando l’algebra lineare.

Nella seconda introdurremo una soluzione detta SVD (da Singular Value Decom- position) che coinvolge un pi` u generale e importante metodo di decomposizione.

5.2.1 Soluzione #1: PCA classica

Questa soluzione deriva dal metodo che usa gli autovettori per decomporre una matrice. Riprendiamo la nostra matrice X dell’eq. 5.11 che ha dimensioni m × n, con m che indica la grandezze misurata ed n il numero di campioni di una stessa grandezza acquisiti durante gli n esperimenti/osservazioni effettuati. Ci proponiamo di:

trovare una matrice ortonormale P sulla quale proiettare i nostri dati X attraverso il prodotto tra matrici

8

ottenendo la matrice delle proiezioni

Y = PX

Questa deve essere tale che la sua matrice di covarianza (eq. 5.12) S

Y

≡ 1

n − 1 YY

T

8

Analogamente al prodotto scalare tra vettori, il prodotto interno tra matrici PX

corrisponde alla proiezione della matrice X sulla P

(18)

sia diagonalizzata. In questo caso interpreteremo le righe di P (cio` e i vet- tori della nuova base) come le componenti principali di X, cio` e saranno le componenti principali dei nostri dati.

Cominciamo allora riscrivendo la matrice di covarianza S

Y

in termini della nuova base ortonormale che abbiamo scelto di chiamare P:

S

Y

=

n−11

YY

T

=

n−11

(PX)(PX)

T

=

n−11

PXX

T

P

T

=

n−11

PAP

T

(5.14)

dove nell’ultimo passaggio abbiamo introdotto la matrice di covarianza A ≡ XX

T

che, come abbiamo gi` a notato in precedenza, ` e simmetrica per costruzione (vedi eq. 5.12 e 5.13). A questo punto ricordiamo un teorema di algebra lineare: una matrice simmetrica come la nostra A ` e diagonalizzata da una matrice ortogonale costruita con i suoi autovettori, secondo la relazione

A = EDE

T

(5.15)

dove D rappresenta una matrice diagonale ed E ` e una matrice costruita con gli autovettori di A organizzati in colonne. La matrice A ha r ≤ m autovettori ortonormali, con r detto rango della matrice. Se il rango di A fosse r < m la matrice ` e detta “degenerata” intendendo con questo che le sue righe (o colonne) non sono tutte linearmente indipendenti. Il rango ` e anche dato dal massimo nu- mero di linee o colonne linearmente indipendenti per cui, se r < m abbiamo una indicazione che alcune righe (o colonne) della matrice sono combinazione lineare di altre righe (o colonne) e quindi non aggiungono nuova informazione rispetto alle altre righe (o colonne) da cui sono derivate.

Possiamo allora immaginare che i dati in realt` a occupino (si possono rappre- sentare in) un sottospazio di dimensione r < m e quindi il problema andrebbe riformulato in modo da usare solo i parametri linearmente indipendenti ottenendo quindi una matrice A

0

di dimensione r < m. Tuttavia si pu` o rimediare aggiungen- do agli r vettori ortonormali, che si trovano usando gli autovettori della matrice A diversi da zero, m-r vettori addizionali usati per “riempire” la base ortonormale che stiamo costruendo. Questi vettori addizionali non avranno comunque effetto sulla soluzione finale perch` e le varianze associate alle loro direzioni saranno nulle, non essendo i nostri dati distribuiti lungo questi nuovi vettori di base aggiuntivi.

A questo punto siamo in grado di procedere in questo modo:

(19)

- scegliamo di costruire una matrice P in modo che ciascuna riga p

i

sia un autovettore della A=XX

T

(matrice di covarianza dei dati);

- per quanto stabilito nell’eq. 5.15 il punto precedente implica che possiamo scrivere: P≡ E

T

, trasposta perch` e in P gli autovettori sono organizzati in righe mentre in E lo sono in colonne;

- sostituiamo nella eq. 5.15 ottenendo A = P

T

DP;

- usiamo la propriet` a delle matrici ortogonali per cui la matrice inversa P

−1

` e uguale alla trasposta P

T

(vedi Appendice).

Possiamo usare ora queste considerazioni per riprendere la eq. 5.14 e scrivere:

S

Y

=

n−11

PAP

T

=

n−11

P(P

T

DP)(P)

T

=

n−11

(PP

T

)D(PP

T

) =

n−11

(PP

−1

)D(PP

−1

)

=

n−11

D

(5.16)

da cui appare evidente che la scelta fatta per P ` e quella che diagonalizza S

Y

. A chiusura di questo primo metodo ricordiamo il senso di quanto abbiamo esposto finora:

• le componenti principali di X(la matrice contenente i dati) sono gli autovet- tori di XX

T

che vanno a costituire poi le righe di P. Quindi le righe di P sono i nuovi vettori che costituiscono la base pi` u conveniente per i nostri dati;

• l’i-esimo valore diagonale di S

Y

rappresenta la varianza di dei dati X proiettati sul nuovo vettore di base p

i

.

In definitiva il calcolo della PCA di un set di dati X richiede di:

1- normalizzare tutte le misure sottraendo le rispettive medie, in modo da trattare con segnali a media nulla;

2- calcolare gli autovettori della matrice di covarianza XX

T

. Questi definis- cono la nuova base P pi` u conveniente su cui proiettare i dati originali ottenendo la nuova matrice Y;

3- calcolare la matrice S

Y

i cui elementi diagonali rappresentano le varianze

dei dati rispetto ai vettori p

i

della nuova base P.

(20)

Quest’ultimo punto permette poi di usare il valore della varianza per quantificare l’importanza delle varie componenti dei dati ottenute sulla nuova base.

In conclusione: La tecnica PCA fu introdotta gi` a nel 1901 come strumento per l’analisi di dati multivariati. Le componenti principali sono rappresen- tate dagli autovettori della matrice di covarianza dei dati. La proiezione dei dati sugli assi definiti dalle componenti principali viene anche detta trasfor- mata di Hotelling o anche di Karhunen-Lo` eve. Come abbiamo visto l’essenza del metodo consiste nel trovare la trasformazione ortogonale che diagonalizza la matrice S

Y

di covarianza dei dati.

5.2.2 Soluzione #2: SVD

Un’altra possibile strada per individuare le componenti principali dei nostri dati ` e di sfruttare il metodo detto della Singular Value Decomposition, o SVD, al quale la PCA ` e strettamente connessa. Si tratta di un modo pi` u generale, dimostrato in algebra lineare, per decomporre una matrice X di dimensioni qualsiasi in un prodotto di altre matrici che, date le loro propriet` a, possono semplificare i calcoli successivi che coinvolgano la X.

Limitandoci ad una matrice X reale (che nel nostro caso rappresenta i dati) possiamo sempre scomporla in tre matrici:

X = UΣV

T

(5.17)

con X di dimensioni m × n, U quadrata di dimensioni m × m ed unitaria

9

, Σ matrice diagonale m × n, e V

T

trasposta di una matrice n × n.

Mentre i valori diagonali di Σ sono noti come “valori singolari” della matrice X, le colonne di U sono i “vettori singolari sinistri” di X e le colonne di V sono i

“vettori singolari destri” di X.

Per riconoscere il legame tra SVD e PCA, costruiamo la matrice di covarianza dei nostri dati espressi secondo la SVD in (5.17):

C = X

T

X/(n − 1) = (UΣV

T

)

T

UΣV

T

/(n − 1)

= VΣ

T

U

T

UΣV

T

/(n − 1) = VΣ

2

V

T

/(n − 1) (5.18) da cui, per confronto con il caso della PCA, vediamo che i vettori singolari destri V giocano lo stesso ruolo di P nella (5.14) e quindi rappresentano le direzioni

9

per unitaria si intende che il prodotto UU

T

= I con I matrice identit` a (quadrata,

contenente 1 sulla diagonale e 0 altrove).

Riferimenti

Documenti correlati

Per le seguenti matrici reali A, trovare la forma normale di Jordan di A.. , f tale che la forma normale di Jordan di A ha un unico blocco

[r]

Identifichiamo V o 2 ed R 2 fissando nel piano un sistema di riferimento cartesiano ortogo- nale monometrico destrorso (cio` e tale che l’angolo dal primo asse al secondo sia retto

In what follows we will derive the outcome of the regulation by the competition authority or au- thorities, as the case may be, for each of the three bases for jurisdiction in

Ainsi, le grand nom bre de participants invités à siéger au sein du Comité de Suivi franco-espagnol instauré par les conseils m unicipaux ne doit pas cacher la

With the signing of the Memorandum of Understanding on Specific Economic Policy Conditionality (MoU) by the so-called 'Troika' (International Monetary Fund, European

Per rendersi conto di come ci`o sia possibile baster`a procedere come segue: per prima cosa elenchiamo in qualche ordine (ad esempio in quello alfabetico) tutte le formule

Il gruppo educativo, così costituito, viene organizzato dal suo conduttore, l’educatore o l’operatore pedagogico, sul molteplice binario del parent training, la formazione