22
COMPONENTI PRINCIPALI Mario Romanazzi 1 Introduzione Le componenti principali sono combinazioni lineari delle variabili osservate, ordinate in base ad un cri- terio di rilevanza informativa. La prima componente principale estrae dai dati la massima quantit` a d’informazione; le componenti successive (seconda, terza, ecc.) ottimizzano l’informazione residua sotto il vincolo d’incorrelazione con le altre componenti. In generale, avendo osservato p> 1 variabili X 1 , ..., X p si possono determinare altrettante componenti principali Z 1 , ..., Z p , a due a due linearmente indipenden- ti, tali che le prime 1 q<p componenti Z 1 , ..., Z q spiegano una parte significativa dell’informazione contenuta in X 1 , ..., X p . L’applicazione pi` u importante ` e la riduzione di dimensionalit` a dei dati osservati. Infatti la loro proiezione nello spazio delle prime q componenti consente di studiare le propriet` a stati- stiche della distribuzione in uno spazio di dimensione ridotta con una perdita (sperabilmente) limitata d’informazione. Un’altra applicazione ` e nei modelli di regressione con variabili esplicative fortemente cor- relate (o addirittura collineari). In tal caso le stime dei parametri prodotte dai metodi standard (minimi quadrati, massima verosimiglianza sotto l’ipotesi di normalit` a) sono instabili o addirittura non esistono. Un possibile rimedio ` e la sostituzione delle variabili esplicative X 1 , ..., X p del modello di regressione con le corrispondenti componenti principali Z 1 , ..., Z p (o un loro sottoinsieme). Il metodo delle componenti principali ` e illustrato in tutti i libri di analisi multivariata. Un riferimento autorevole ` e Mardia et al (1979), Cap. 8. L’argomento presuppone la conoscenza delle nozioni base di algebra delle matrici di cui forniamo un veloce riepilogo nell’Appendice A. L’Appendice B espone la definizione e le principali propriet` a di autovalori e autovettori. Per ulteriori approfondimenti il lettore pu` o consultare l’Appendice A del gi` a citato Mardia et al (1979). Una pi` u ampia esposizione particolarmente mirata alle applicazioni di Statistica ed Econometria ` e Magnus and Neudecker (2001). Alcuni esempi numerici sono sviluppati col programma R (R Development Core Team, 2006). 2 Notazione e risultati preliminari Supponiamo di aver rilevato p variabili numeriche X 1 , ..., X p su un campione di n unit` a. I dati sono ordinati nella matrice nxp X =(x ij ); x ij rappresenta il dato della i-esima unit` a sulla j -esima variabile. Elenchiamo di seguito le statistiche di sintesi pi` u comuni. Il vettore delle medie (centroide della distribuzione) ¯ x = (¯ x 1 , ..., ¯ x j , ..., x p ) T , con ¯ x j = n -1 n i=1 x ij . Un’espressione matriciale di ¯ x ` e ¯ x = n -1 X T 1 n , in cui 1 n ` e il vettore nx1 con tutte le componenti uguali a 1. Il centroide descrive la posizione del campione nello spazio p-dimensionale. La matrice di varianze e covarianze S X =(s hk ), quadrata d’ordine p, in cui i termini diagonali s hh = n -1 n i=1 (x ih - ¯ x h ) 2 = var(X h ) sono le varianze mentre i termini non diagonali s hk = n -1 n i=1 (x ih - ¯ x h )(x ik - ¯ x k )= cov(X h , X k ) sono le covarianze della distribuzione. Ogni matrice di covarianza ` e simmetrica e semi-definita positiva. Essa descrive la dispersione del campione nello spazio p-dimensionale; pi` u precisamente, le deviazioni standard (radici quadrate delle varianze) 1

COMPONENTI PRINCIPALI

Embed Size (px)

Citation preview

Page 1: COMPONENTI PRINCIPALI

COMPONENTI PRINCIPALI

Mario Romanazzi

1 Introduzione

Le componenti principali sono combinazioni lineari delle variabili osservate, ordinate in base ad un cri-terio di rilevanza informativa. La prima componente principale estrae dai dati la massima quantitad’informazione; le componenti successive (seconda, terza, ecc.) ottimizzano l’informazione residua sottoil vincolo d’incorrelazione con le altre componenti. In generale, avendo osservato p > 1 variabili X1, ...,Xp

si possono determinare altrettante componenti principali Z1, ...,Zp, a due a due linearmente indipenden-ti, tali che le prime 1 ≤ q < p componenti Z1, ...,Zq spiegano una parte significativa dell’informazionecontenuta in X1, ...,Xp. L’applicazione piu importante e la riduzione di dimensionalita dei dati osservati.Infatti la loro proiezione nello spazio delle prime q componenti consente di studiare le proprieta stati-stiche della distribuzione in uno spazio di dimensione ridotta con una perdita (sperabilmente) limitatad’informazione. Un’altra applicazione e nei modelli di regressione con variabili esplicative fortemente cor-relate (o addirittura collineari). In tal caso le stime dei parametri prodotte dai metodi standard (minimiquadrati, massima verosimiglianza sotto l’ipotesi di normalita) sono instabili o addirittura non esistono.Un possibile rimedio e la sostituzione delle variabili esplicative X1, ...,Xp del modello di regressione conle corrispondenti componenti principali Z1, ...,Zp (o un loro sottoinsieme).

Il metodo delle componenti principali e illustrato in tutti i libri di analisi multivariata. Un riferimentoautorevole e Mardia et al (1979), Cap. 8. L’argomento presuppone la conoscenza delle nozioni basedi algebra delle matrici di cui forniamo un veloce riepilogo nell’Appendice A. L’Appendice B espone ladefinizione e le principali proprieta di autovalori e autovettori. Per ulteriori approfondimenti il lettore puoconsultare l’Appendice A del gia citato Mardia et al (1979). Una piu ampia esposizione particolarmentemirata alle applicazioni di Statistica ed Econometria e Magnus and Neudecker (2001). Alcuni esempinumerici sono sviluppati col programma R (R Development Core Team, 2006).

2 Notazione e risultati preliminari

Supponiamo di aver rilevato p variabili numeriche X1, ...,Xp su un campione di n unita. I dati sonoordinati nella matrice nxp X = (xij ); xij rappresenta il dato della i-esima unita sulla j-esima variabile.Elenchiamo di seguito le statistiche di sintesi piu comuni.

Il vettore delle medie (centroide della distribuzione) x = (x1, ..., xj , ..., xp)T , con xj = n−1

∑ni=1 xij .

Un’espressione matriciale di x ex = n−1XT 1n,

in cui 1n e il vettore nx1 con tutte le componenti uguali a 1. Il centroide descrive la posizione delcampione nello spazio p-dimensionale.

La matrice di varianze e covarianze SX = (shk), quadrata d’ordine p, in cui i termini diagonalishh = n−1

∑ni=1(xih − xh)

2 = var(Xh) sono le varianze mentre i termini non diagonali shk =n−1

∑ni=1(xih − xh)(xik − xk) = cov(Xh,Xk) sono le covarianze della distribuzione. Ogni matrice

di covarianza e simmetrica e semi-definita positiva. Essa descrive la dispersione del campione nellospazio p-dimensionale; piu precisamente, le deviazioni standard (radici quadrate delle varianze)

1

Page 2: COMPONENTI PRINCIPALI

2 NOTAZIONE E RISULTATI PRELIMINARI 2

misurano la dispersione delle variabili attorno alle rispettive medie mentre le covarianze misuranol’interdipendenza lineare delle variabili. Un’espressione matriciale di SX e

SX = n−1n∑

i=1

(xi − x)(xi − x)T = n−1XTCXC ,

in cui xi indica l’i-esima riga di X (scritta come vettore colonna px1) e XC = X − 1nxT = (x

(C)ij )

indica la matrice dei dati centrati rispetto alle rispettive medie, x(C)ij = xij − xj .

La matrice di correlazione RX = (rhk), quadrata d’ordine p, in cui i termini diagonali sono iden-ticamente uguali a 1 mentre i termini non diagonali rhk = shk/(shhskk)

1/2 sono i coefficienti dicorrelazione lineare tra le variabili. Un’importante proprieta e −1 ≤ rhk ≤ 1; rhk = 0 nel caso diindipendenza lineare, rhk = ±1 nel caso di massima dipendenza lineare; il segno positivo o negativodi rhk descrive il verso della relazione lineare (concorde o discorde). La matrice di correlazione e la

matrice di covarianza dei dati standardizzati x(ST )ij = (xij − xj)/(sjj)

1/2 ed e pertanto simmetricae semi-definita positiva. Un’espressione matriciale di RX e

RX = n−1XTSTXST ,

in cui XST = XC(diag SX)−1/2 = (xSTij ) e la matrice dei dati standardizzati; diag SX indica la

matrice i cui elementi diagonali sono quelli di SX e quelli non diagonali sono identicamente nulli.

Esempio 1 (Indicatori delle economie dell’Unione Europea) Dall’edizione 2009 di Italia in cifre(ISTAT) abbiamo ripreso i seguenti indicatori delle economie dei 27 Paesi dell’Unione Europea: PILpro-capite a parita di potere d’acquisto (UE27 = 100), deficit pubblico (% sul PIL), debito pubblico (%sul PIL), tasso d’inflazione, tasso d’occupazione. I dati sono riferiti al 2007. Riportiamo di seguito lamatrice dati.

Paese PIL Deficit Debito Inflazione Occupazione

1 AUSTRIA 123.8 -0.4 59.5 2.2 71.4

2 BELGIO 118.1 -0.3 83.9 1.8 62.0

3 CIPRO 90.6 3.5 59.5 2.2 71.0

4 FINLANDIA 115.8 5.3 35.1 1.6 70.3

5 FRANCIA 109.1 -2.7 63.9 1.6 70.3

6 GERMANIA 114.7 -0.2 65.1 2.3 69.4

7 GRECIA 94.8 -3.5 94.8 3.0 61.4

8 IRLANDA 150.2 0.2 24.8 2.9 69.1

9 ITALIA 101.4 -1.5 103.5 2.0 58.7

10 LUSSEMBURGO 266.2 3.2 7.0 2.7 64.2

11 MALTA 77.7 -1.8 62.2 0.7 54.6

12 PAESI_BASSI 130.9 0.3 45.7 1.6 76.0

13 PORTOGALLO 76.1 -2.6 63.6 2.4 67.8

14 SLOVACCHIA 67.0 -1.9 29.4 1.9 60.7

15 SLOVENIA 89.2 0.5 23.4 3.8 67.8

16 SPAGNA 105.4 2.2 36.2 2.8 65.6

17 BULGARIA 37.3 0.1 18.2 7.6 61.7

18 DANIMARCA 120.0 4.9 26.2 1.7 77.1

19 ESTONIA 67.9 2.7 3.5 6.7 69.4

20 LETTONIA 57.9 0.1 9.5 10.1 68.3

21 LITUANIA 59.5 -1.2 17.0 5.8 64.9

22 POLONIA 53.3 -2.0 44.9 2.6 57.0

Page 3: COMPONENTI PRINCIPALI

3 COMBINAZIONI LINEARI 3

23 REGNO_UNITO 119.1 -2.8 44.2 2.3 71.5

24 REP_CECA 80.2 -1.0 28.9 3.0 66.1

25 ROMANIA 42.1 -2.6 12.9 4.9 58.8

26 SVEZIA 122.2 3.6 40.4 1.7 74.2

27 UNGHERIA 62.6 -5.0 65.8 7.9 57.3

Otteniamo il vettore delle medie, la matrice di varianze e covarianze e la matrice di correlazione conle funzioni R mean, cov e cor.

> mean(eu[, 4:8])

PIL Deficit Debito Inflazione Occupazione

98.2629630 -0.1074074 43.3000000 3.3259259 66.1703704

> round(cov(eu[, 4:8]), 2)

PIL Deficit Debito Inflazione Occupazione

PIL 1993.66 48.80 3.21 -47.41 95.99

Deficit 48.80 6.98 -28.53 -1.03 9.13

Debito 3.21 -28.53 710.81 -27.39 -35.64

Inflazione -47.41 -1.03 -27.39 5.37 -2.65

Occupazione 95.99 9.13 -35.64 -2.65 35.99

> round(cor(eu[, 4:8]), 2)

PIL Deficit Debito Inflazione Occupazione

PIL 1.00 0.41 0.00 -0.46 0.36

Deficit 0.41 1.00 -0.41 -0.17 0.58

Debito 0.00 -0.41 1.00 -0.44 -0.22

Inflazione -0.46 -0.17 -0.44 1.00 -0.19

Occupazione 0.36 0.58 -0.22 -0.19 1.00

3 Combinazioni lineari

Una combinazione lineare generalizza il familiare concetto di media aritmetica ponderata. Essa trasformail vettore delle determinazioni x1, ..., xj , ..., xp di p variabili numeriche in un valore numerico unico, indi-cato con z, pari alla somma delle determinazioni numeriche x1, ..., xj , ..., xp moltiplicate per i coefficientia1, ..., aj , ..., ap

z = a1x1 + ...+ apxp.

I coefficienti possono assumere valori numerici arbitrari (non tutti nulli). In termini matematici, unacombinazione lineare e una funzione t : Rp → R tale che, per ogni vettore x di Rp, t(x) =

∑pj=1 ajxj =

aTx.La famiglia delle combinazioni lineari e molto ampia e comprende trasformazioni largamente usate

nell’analisi dei dati.

Somma. La combinazione lineare piu comune e la somma, corrispondente ad a = 1p, il vettore con pcomponenti identicamente uguali a 1. Supponiamo di aver rilevato su un campione di n famigliele spese mensili divise per capitolo di spesa: abbigliamento, alimentazione, casa, istruzione e cul-tura, trasporti, tempo libero. La spesa totale, pari alla somma delle voci di ogni capitolo, e lacombinazione lineare z = 1T6 x =

∑6j=1 xj .

Page 4: COMPONENTI PRINCIPALI

3 COMBINAZIONI LINEARI 4

Differenza. Il risultato di bilancio di un’impresa, differenza fra il totale delle entrate ed il totale delleuscite, e una combinazione lineare con vettore a = (1,−1)T .

Media. Un altro familiare esempio e la media, corrispondente ad a = 1p/p. Quando gli studenti calcolanoil voto medio negli esami applicano esattamente questa trasformazione.

Esempio 2 (Voto medio degli esami) In un campione di 16 laureati in Economia abbiamo rilevato ivoti nelle seguenti discipline: Matematica, Statistica, Economia Politica I e II, Economia Aziendale I eII, Diritto I e II. La tabella sottostante riporta i voti nelle singole discipline insieme col corrispondentevoto medio.

stu mat stat eco1 eco2 eca1 eca2 dir1 dir2 media

1 S1 24 26 30 30 28 27 25 30 27.500

2 S2 18 21 26 28 30 24 25 19 23.875

3 S3 26 22 30 28 27 25 22 21 25.125

4 S4 20 20 21 26 26 23 23 27 23.250

5 S5 22 23 25 27 30 28 25 28 26.000

6 S6 21 18 20 19 23 26 21 22 21.250

7 S7 22 23 28 26 24 28 25 23 24.875

8 S8 26 24 22 18 24 20 21 20 21.875

9 S9 18 19 23 25 22 19 20 24 21.250

10 S10 23 21 24 24 28 23 30 28 25.125

11 S11 26 25 28 27 29 30 25 28 27.250

12 S12 24 27 25 23 29 25 25 27 25.625

13 S13 18 18 21 25 22 19 20 24 20.875

14 S14 20 20 24 23 26 22 27 23 23.125

15 S15 26 21 24 21 22 18 19 23 21.750

16 S16 26 24 22 25 24 23 18 22 23.000

Vale la pena sottolineare la differenza tra la combinazione lineare ”voto medio”, che definisce un’ulte-riore variabile (funzione di quelle osservate), e la media campionaria dei voti nelle singole discipline. Eovviamente possibile calcolare la media campionaria anche del ”voto medio”, insieme con le altre usualistatistiche riassuntive. Le medie e le deviazioni standard sono riportate di seguito.

[1] Medie

mat stat eco1 eco2 eca1 eca2 dir1 dir2 media

22.50 22.00 24.56 24.69 25.88 23.75 23.19 24.31 23.86

[1] Deviazioni Standard

mat stat eco1 eco2 eca1 eca2 dir1 dir2 media

3.08 2.73 3.14 3.28 2.92 3.57 3.23 3.28 2.15

La distribuzione di una combinazione lineare dipende dalla distribuzione congiunta delle variabiliosservate. Ad esempio, se questa e normale, allora ogni combinazione lineare ha una distribuzione normalecon media e deviazione standard dipendenti dal vettore delle medie e dalla matrice di varianze e covarianzedi partenza. Nel caso campionario, la media e la deviazione standard di ogni combinazione lineare sonosemplici funzioni matriciali di x e SX .

Page 5: COMPONENTI PRINCIPALI

4 COMPONENTI PRINCIPALI 5

Teorema 3 (Media e varianza delle combinazioni lineari) Per ogni combinazione lineare z = aTx,

z = aT x, s2Z = aTSXa.

Dimostrazione. Sia X la matrice nxp dei dati campionari e sia a il vettore px1 dei coefficienti dellacombinazione lineare. Il vettore z nx1 dei valori campionari della combinazione lineare e il prodotto(righe per colonne) z = Xa. La media campionaria di z e

z = n−1n∑

i=1

zi = n−1zT1n

= n−1aTXT1n = aT (n−1XT 1n) = aT x.

La varianza campionaria di z e

s2Z = n−1n∑

i=1

(zi − z)2 = n−1n∑

i=1

aT (xi − x)(xi − x)T a

= aT (n−1n∑

i=1

(xi − x)(xi − x)T )a = aTSXa.

Notiamo che s2Z = aTSXa ≥ 0 per ogni vettore a il che prova che la matrice di varianze e covarianze SX

e semi-definita positiva.

Nel caso particolare p = 2, il teorema precedente fornisce le formule, note dai corsi di base

z = a1x1 + a2x2,

s2Z = a21s11 + a22s22 + 2a1a2s12.

4 Componenti principali

Negli esempi della Sezione 4, i coefficienti delle combinazioni lineari sono valori stabiliti in anticipo, inbase al problema in esame: di volta in volta si considera la somma, la differenza oppure la media. Un casocompletamente diverso e quello in cui viene fissata qualche proprieta della combinazione lineare z ≡ za eil vettore a dei coefficienti e determinato in modo da soddisfare tali requisiti. L’esempio piu importantee proprio la (prima) componente principale, definita come la combinazione lineare normalizzata conmassima varianza. Il significato di tale requisito e identificare la combinazione lineare, cioe la proiezioneda R

p in R, capace di assorbire la massima quantita d’informazione (misurata dalla varianza) contenutanei dati osservati. Una combinazione lineare viene definita normalizzata se il vettore dei coefficientisoddisfa il vincolo

aTa =

p∑

j=1

a2j = 1.

Questa restrizione e necessaria per assicurare l’esistenza e l’unicita della soluzione del problema dimassimizzazione della varianza.

In base al Teorema 3, dobbiamo determinare il vettore a tale che la funzione var(za) = aTSXa ≡ ψ(a)assuma il suo massimo valore, sotto il vincolo aTa = 1. La matrice SX , simmetrica e semi-definitapositiva, ha p autovalori non negativi λ1 ≥ λ2 ≥ ... ≥ λp ≥ 0 associati ai corrispondenti autovettoria1, a2, ..., ap normalizzati (aThah = 1) e a due a due ortogonali (aThak = 0, h 6= k). La generica coppiaautovalore-autovettore verifica l’equazione matriciale

SXah = λhah,

h = 1, ..., p. Il numero degli autovalori positivi e uguale al rango di X e di SX . Nel seguente teoremadimostriamo che il vettore a ottimale e l’autovettore a1 di SX associato al massimo autovalore λ1.

Page 6: COMPONENTI PRINCIPALI

5 PROPRIETA STATISTICHE DELLE COMPONENTI PRINCIPALI 6

Teorema 4 (Prima componente principale) Il valore massimo della funzione ψ(a) = aTSXa, sottoil vincolo aT a = 1, e pari al massimo autovalore λ1 di SX e viene raggiunto quando il vettore a coincidecol corrispondente autovettore a1.

Dimostrazione. La dimostrazione e basata sulla disuguaglianza di Cauchy-Schwarz secondo la quale,per ogni coppia di vettori u = (u1, u2, ..., up)

T , v = (v1, v2, ..., vp)T di Rp

(uT v)2 ≤ (uTu)(vT v).

L’uguaglianza vale se e solo se v = λu per qualche scalare λ. Nella funzione ψ(a) poniamo u = a,v = SXa. In base alla disuguaglianza di Cauchy-Schwarz

ψ(a)2 ≤ (aT a)(aTS2Xa) = (aTS2

Xa)

perche aTa = 1. L’uguaglianza e soddisfatta se e solo se

SXa = λa,

cioe se e solo se a e un autovettore di SX . Premoltiplicando l’equazione per aT otteniamo

aTSXa = ψ(a) = λaT a = λ,

pertanto la funzione ψ(a) viene massimizzata se a e l’autovettore di SX associato al massimo autovalore.

Nota 5 Dalla dimostrazione segue che gli autovalori della matrice di covarianza sono le varianze dellecomponenti principali. In particolare, il massimo autovalore e la varianza della prima, e piu importante,componente.

Nota 6 Ai p autovettori ah, h = 1, ..., p, della matrice di covarianza corrispondono altrettante componentiprincipali zh, combinazioni lineari delle variabili originarie, ordinate secondo la varianza (autovalore λh)decrescente.

Nota 7 Le componenti principali associate agli autovalori piu piccoli sono usate per individuare le va-riabili osservate ridondanti. Un criterio frequentemente usato e di eliminare le variabili osservate aventimassima correlazione assoluta con le ultime s componenti,1 ≤ s ≤ p− 1.

Nota 8 Se la matrice dati X ha rango k < p, anche il rango di SX e pari a k e gli ultimi p−k autovalorisono nulli. I corrispondenti autovettori descrivono le relazioni di collinearita tra le variabili osservate.

5 Proprieta statistiche delle componenti principali

L’analisi delle componenti principali (ACP) consiste nella determinazione di q < p componenti, basatesui primi q autovettori della matrice di covarianza dei dati osservati. Il valore di q viene scelto in mododa assorbire una quota adeguata d’informazione. Le componenti sono usate per studiare le proprieta delcampione in uno spazio di dimensione ridotta rispetto a quello di partenza. Il problema fondamentalee l’interpretazione delle componenti che sono di per se variabili artificiali, combinazioni lineari di quelled’origine.

L’estrazione delle componenti principali e sempre preceduta da qualche trasformazione dei dati os-servati. I dati sono sempre centrati rispetto al vettore delle medie. Inoltre, in molti casi, i dati vengonostandardizzati per evitare possibili distorsioni dovute a sperequazioni delle varianze delle variabili d’orig-ine. In questo secondo caso, poiche la matrice di covarianza dei dati standardizzati coincide con la matricedi correlazione dei dati di partenza, le componenti principali sono basate sugli autovalori ed autovettoridella matrice di correlazione.

Nel seguente teorema ricaviamo medie, varianze e covarianze delle componenti principali. Indichiamocon zh una generica componente. Se i dati sono centrati, zh = XCah; se i dati sono standardizzati,zh = XST bh, in cui bh indica l’autovettore della matrice di correlazione associato al suo h-esimo piu altoautovalore µh.

Page 7: COMPONENTI PRINCIPALI

5 PROPRIETA STATISTICHE DELLE COMPONENTI PRINCIPALI 7

Teorema 9 (Proprieta statistiche) i. Le componenti principali hanno medie nulle

zh = 0.

ii. Se i dati sono centrati, le varianze delle componenti principali sono uguali agli autovalori della matricedi covarianza

var(zh) = λh;

se i dati sono standardizzati, sono uguali agli autovalori della matrice di correlazione

var(zh) = µh.

iii. Le componenti principali sono a due a due incorrelate

cov(zh, zk) = 0.

Dimostrazione.

i. In base al Teorema 3,zh = aTh xC = 0,

perche xC = 0p, il vettore nullo. La dimostrazione nel caso di dati standardizzati e simile.

ii. Se i dati sono centrati, la varianza di zh e

var(zh) = aThSXah = λhaThah = λh.

Se i dati sono standardizzati,

var(zh) = bThRXbh = µhbTh bh = µh.

iii. Usando la definizione di covarianza

cov(zh, zk) = n−1n∑

i=1

(zih − zh)(zik − zk)

= n−1n∑

i=1

zihzik = n−1zTh zk,

perche zh = zk = 0. Se i dati sono centrati,

cov(zh, zk) = n−1zTh zk = n−1aThXTCXCak

= aThSXak = λkaThak = 0

perche autovettori distinti sono ortogonali. La dimostrazione nel caso di dati standardizzati e simile.

La qualita statistica delle componenti principali si misura mediante la percentuale spiegata della va-rianza totale. La varianza totale e la traccia della matrice di covarianza (dati centrati) o di correlazione(dati standardizzati)

tr(SX ) =

p∑

h=1

shh =

p∑

h=1

λh

tr(RX ) =

p∑

h=1

rhh =

p∑

h=1

µh = p

Page 8: COMPONENTI PRINCIPALI

6 APPLICAZIONI 8

Supponiamo di considerare tutte le p componenti. In tal caso, la varianza complessivamente assorbitae la varianza totale, tr(SX ) o tr(RX ) = p ce rappresenta pertanto la massima quantita d’informazioneestraibile dai dati. Se si considerano le prime q < p componenti, la varianza assorbita e

∑qh=1 λh e un

indice relativo di qualita eq

h=1

λh/tr(SX ).

La formula corrispondente per dati standardizzati e

q∑

h=1

µh/tr(RX ) =

q∑

h=1

µh/p.

Per una buona approssimazione il rapporto non dovrebbe essere inferiore al 70%. Per dati standardizzati,un criterio frequentemente usato e di considerare tutti gli autovalori maggiori di 1 =

∑ph=1 µh/p, media

campionaria degli autovalori.

6 Applicazioni

La funzione R che determina le componenti principali di un campione numerico e princomp; l’opzionecor=FALSE centra i dati rispetto alle medie delle variabili mentre cor=TRUE li standardizza . Essa produceuna lista contenente tre risultati principali:

1. $loadings, matrice pxp le cui colonne contengono gli autovettori ordinati in modo decrescente,secondo i corrispondenti autovalori,

2. $scores, matrice nxp delle componenti principali ordinate,

3. $sdev, vettore px1 delle deviazioni standard delle componenti principali (uguali alle radici quadratedegli autovalori).

La funzione summary, applicata ai risultati di princomp, fornisce la % della varianza spiegata dalleprime q componenti, q = 1, 2, ..., p. Per l’interpretazione delle componenti, sono utili le correlazioni linearitra le variabili osservate e le componenti principali, ottenibili mediante la funzione cor.

6.1 Indicatori economici dell’Unione Europea

Illustriamo di seguito l’ACP degli indicatori economici dell’Unione Europea, considerando prima i daticentrati. Come sappiamo, essa e basata sugli autovalori ed autovettori della matrice di covarianza.

> pc <- princomp(eu[, 4:8], cor = FALSE)

> summary(pc)

Importance of components:

Comp.1 Comp.2 Comp.3 Comp.4

Standard deviation 43.8930764 26.2380377 5.42881267 1.948002663

Proportion of Variance 0.7267847 0.2597027 0.01111792 0.001431505

Cumulative Proportion 0.7267847 0.9864874 0.99760535 0.999036855

Comp.5

Standard deviation 1.5978605134

Proportion of Variance 0.0009631446

Cumulative Proportion 1.0000000000

> round(cor(eu[, 4:8], pc$scores[, 1:5]), 2)

Page 9: COMPONENTI PRINCIPALI

6 APPLICAZIONI 9

Comp.1 Comp.2 Comp.3 Comp.4 Comp.5

PIL 1.00 0.00 0.01 0.00 0.00

Deficit 0.42 0.41 -0.42 -0.60 -0.34

Debito 0.00 -1.00 -0.01 0.00 0.00

Inflazione -0.46 0.44 0.17 0.48 -0.58

Occupazione 0.36 0.23 -0.90 0.07 0.02

La prima componente spiega da sola circa il 73% della varianza totale e le prime due insieme quasi il99%. La matrice di correlazione delle variabili osservate con le componenti principali mostra che la primacomponente ha correlazione pari a 1 con PIL mentre la seconda ha correlazione pari a −1 con Debito.Questo indica che le prime due componenti riproducono pari pari due variabili osservate, PIL e Debito

rispettivamente, senza operare una vera sintesi multidimensionale. La ragione risiede nel valore dellevarianze di PIL e Debito, molto piu alto delle altre variabili. Questo implica, tra l’altro, che il diagrammadi dispersione delle prime due componenti e equivalente a quello di PIL e Debito. Il problema puo esseresuperato mediante una standardizzazione preliminare dei dati (le variabili standardizzate hanno tuttevarianza unitaria).

> pc1 <- princomp(eu[, 4:8], cor = TRUE)

> summary(pc1)

Importance of components:

Comp.1 Comp.2 Comp.3 Comp.4 Comp.5

Standard deviation 1.4599323 1.2568815 0.7605521 0.64256886 0.54544695

Proportion of Variance 0.4262804 0.3159502 0.1156879 0.08257895 0.05950247

Cumulative Proportion 0.4262804 0.7422307 0.8579186 0.94049753 1.00000000

> round(cor(eu[, 4:8], pc1$scores[, 1:5]), 2)

Comp.1 Comp.2 Comp.3 Comp.4 Comp.5

PIL -0.73 -0.33 0.50 -0.31 -0.06

Deficit -0.83 0.29 -0.02 0.36 -0.30

Debito 0.28 -0.86 -0.25 -0.09 -0.33

Inflazione 0.45 0.79 0.04 -0.30 -0.29

Occupazione -0.79 0.15 -0.51 -0.30 0.09

L’ACP dei dati standardizzati produce risultati molto diversi. La % della varianza spiegata dallaprima componente e 43%, dalle prime due 74% e dalle prime tre 86% (valori approssimati). Inoltre,l’esame delle correlazioni con le variabili osservate mostra che

1. La prima componente dipende soprattutto da Deficit, Occupazione e PIL (coefficienti negativi,variabili tra −0.73 e −0.83). Pertanto, Paesi con valori elevati di queste variabili si posizionano sulpolo negativo estremo della prima componente e, all’opposto, Paesi con valori bassi si posizionanosul polo positivo estremo.

2. La seconda componente e essenzialmente un contrasto tra Inflazione e Debito (coefficienti rispet-tivamente uguali a 0.79 e −0.86). Il polo positivo caratterizza Paesi con alta inflazione e bassodebito pubblico, quello negativo Paesi con bassa inflazione e alto debito.

3. La terza componente e un contrasto tra PIL e Occupazione (coefficienti rispettivamente uguali a0.51 e −0.51).

Page 10: COMPONENTI PRINCIPALI

6 APPLICAZIONI 10

Alla luce di queste osservazioni, analizziamo il diagramma di dispersione delle prime due componenti.

> n <- dim(eu)[1]

> col <- rep("black", n)

> col[eu$Euro == 1] <- "red"

> plot(pc1$scores[, 1:2], pch = 20, col = col, xlab = "PC1 (43%)",

+ ylab = "PC2 (32%)", main = "Indicatori Economici EU")

> abline(h = 0, v = 0, col = "red", lty = "dashed")

> text(pc1$scores[, 1:2], labels = as.character(eu$Sigla), pos = 4,

+ cex = 0.6)

−3 −2 −1 0 1 2 3

−2

−1

01

23

Indicatori Economici EU

PC1 (43%)

PC

2 (3

2%)

AU

BE

CY

FI

FR

GE

GR

IR

IT

LU

MA

NE

PO

RS

SL

SP

BU

DE

ES

LE

LA

PL

UK

CZ

RO

SW

HU

Ai poli opposti di PC1 troviamo Ungheria (deficit negativo, basso tasso d’occupazione, basso PILpro capite) e Lussemburgo con Danimarca (alti tassi d’occupazione, specie per Danimarca, e PIL procapite superiore alla media UE, specie per Lussemburgo). Sul polo negativo di PC2 troviamo Italia,Grecia e Belgio (debito pubblico superiore alla media UE), su quello positivo Lettonia (inflazione moltoalta, debito pubblico basso). In generale, i Paesi da piu tempo nell’Unione (e quasi tutti quelli aderentiall’euro) occupano la regione triangolare in basso a sinistra, mentre i Paesi di recente adesione occupanola regione in alto a destra.

Ulteriore informazione viene fornita dal diagramma di dispersione della prima e della terza compo-nente.

Page 11: COMPONENTI PRINCIPALI

6 APPLICAZIONI 11

−3 −2 −1 0 1 2 3

−1

01

23

Indicatori Economici EU

PC1 (43%)

PC

3 (1

2%)

AU

BE

CY

FI

FR

GE

GR

IR

IT

LU

MA

NEPO

RS

SL

SP

BU

DE

ES LE

LA

PL

UK

CZ

RO

SW

HU

La terza componente e dominata da Lussemburgo, in posizione chiaramente periferica, a causa delvalore elevatissimo del PIL pro capite (266.2, il valore immediatamente successivo e quello di Irlanda,150.2; la media UE e 100). Per valutare l’impatto di questo dato anomalo sull’ACP, ripetiamo l’analisiescludendo sia Lussemburgo che Lettonia che ha un dato estremo sul tasso d’inflazione (10.1%).

> eu1 <- eu[eu$PIL < 200 & eu$Inflazione < 10, ]

> col1 <- col[eu$PIL < 200 & eu$Inflazione < 10]

> pc2 <- princomp(eu1[, 4:8], cor = TRUE)

> summary(pc2)

Importance of components:

Comp.1 Comp.2 Comp.3 Comp.4 Comp.5

Standard deviation 1.5538176 1.2743333 0.67933722 0.57687409 0.40919765

Proportion of Variance 0.4828698 0.3247851 0.09229981 0.06655674 0.03348854

Cumulative Proportion 0.4828698 0.8076549 0.89995471 0.96651146 1.00000000

> round(cor(eu1[, 4:8], pc2$scores[, 1:5]), 2)

Page 12: COMPONENTI PRINCIPALI

6 APPLICAZIONI 12

Comp.1 Comp.2 Comp.3 Comp.4 Comp.5

PIL -0.88 -0.28 -0.25 0.00 0.29

Deficit -0.68 0.54 0.36 -0.34 0.02

Debito -0.05 -0.92 -0.07 -0.35 -0.12

Inflazione 0.68 0.53 -0.39 -0.30 0.08

Occupazione -0.84 0.35 -0.34 0.05 -0.25

I risultati mostrano che le prime due componenti arrivano a spiegare circa l’80% della varianza totale.Anche l’interpretazione, basata sulle correlazioni con le variabili osservate, e un po’ diversa. La primacomponente e un contrasto tra Inflazione da un lato (coefficiente 0.68) e PIL, Deficit, Occupazionedall’altro (coefficienti −0.88, −0.68, −0.84). La seconda componente e un contrasto tra Deficit eInflazione da un lato e Debito, dall’altro.

Riportiamo di seguito il diagramma di dispersione, con Lussemburgo e Lettonia come punti supple-mentari. La loro posizione e determinata usando la soluzione ACP trovata per gli altri 25 Paesi, senza cheessi abbiano contribuito a determinare autovalori ed autovettori (la logica e quella del campione di provanell’analisi di regressione). Va sottolineato che i loro dati devono essere preventivamente standardizzati,usando medie e deviazioni standard degli altri 25 Paesi.

> ps <- eu[eu$Sigla == "LU" | eu$Sigla == "LE", ]

> ps1 <- scale(ps[, 4:8], center = pc2$center, scale = pc2$scale)

Page 13: COMPONENTI PRINCIPALI

6 APPLICAZIONI 13

> ps2 <- ps1 %*% pc2$loadings[, 1:2]

> plot(pc2$scores[, 1:2], pch = 20, col = col1, xlim = c(-3.9,

+ 3.5), ylim = c(-3, 3.2), xlab = "PC1 (48%)", ylab = "PC2 (32%)",

+ main = "Indicatori Economici EU", sub = "Lussemburgo, Lettonia punti supplementari")

> abline(h = 0, v = 0, col = "red", lty = "dashed")

> text(pc2$scores[, 1:2], labels = as.character(eu1$Sigla), pos = 4,

+ cex = 0.6)

> points(ps2, pch = 20, col = c("red", "black"))

> text(ps2, labels = c("LU", "LE"), pos = 4, col = "cyan")

−4 −2 0 2

−3

−2

−1

01

23

Indicatori Economici EU

Lussemburgo, Lettonia punti supplementariPC1 (48%)

PC

2 (3

2%)

AU

BE

CY

FI

FR

GE

GR

IR

IT

MA

NE

PO

RS

SL

SP

BU

DE

ES

LA

PLUK

CZ

RO

SW

HU

LU

LE

6.2 Correlazione lineare e componenti principali

L’ACP e un metodo lineare e quindi dipende dalle varianze e dalle correlazioni lineari tra le variabiliX1, ...,Xp. Se X1, ...,Xp sono incorrelate (le matrici di covarianza e di correlazione sono diagonali),le componenti principali coincidono con le variabili osservate, a meno di un riordinamento secondo lavarianza, e l’informazione non e comprimibile per mezzo di combinazioni lineari. Viceversa, se la situazionee di collinearita, le variabili osservate sono ridondanti ed e possibile ridurre la dimensionalita. Il casolimite e quello in cui RX = Jp = 1p1

Tp , la matrice pxp con tutti gli elementi uguali a 1. Tale matrice ha

rango 1 e quindi una sola combinazione lineare puo assorbire tutta l’informazione. Nel seguente esempione calcoliamo autovalori e autovettori.

Page 14: COMPONENTI PRINCIPALI

6 APPLICAZIONI 14

Esempio 10 (Autovalori e autovettori della matrice Jp) Poiche Jp ha rango 1, l’unico autovalorepositivo e uguale a p, gli altri sono tutti uguali a 0. L’autovettore u1 associato al massimo autovaloreλ1 = p si ricava usando la definizione. Esso deve verificare l’equazione matriciale

1p1Tp u1 = (1Tp u1)1p = pu1

e quindi dev’essere proporzionale al vettore 1p. Imponendo il vincolo di normalizzazione otteniamo u1 =1p/p

1/2. In termini di componenti principali

1. La prima componente principale spiega il 100% della varianza totale il che significa che l’infor-mazione e essenzialmente uni-dimensionale.

2. La combinazione lineare ottimale (massima varianza) e proporzionale al vettore 1p, quindi at-tribuisce pesi uguali alle variabili osservate ed ha il significato di una somma o di una media.

3. Le componenti principali successive alla prima hanno varianza identicamente nulla e sono irrilevantidal punto di vista statistico. I loro autovettori si possono ricavare usando il vincolo d’incorrelazione.

Le situazioni piu comuni sono intermedie tra l’indipendenza lineare e la completa collinearita, comenell’esempio seguente.

Esempio 11 (Strutture di correlazione) Supponiamo che la matrice di correlazione di X1, ...,X4 sia

RX =

1 1 0 01 1 0 00 0 1 −0.50 0 −0.5 1

.

Essa indica che le variabili sono divise in due gruppi, {X1,X2} e {X3,X4}. Le variabili del primo grupposono perfettamente correlate, quelle del secondo gruppo sono correlate, ma la correlazione e lontanadal massimo. Inoltre, variabili appartenenti a gruppi diversi sono incorrelate. Ricaviamo autovalori eautovettori con la funzione eigen di R.

> r <- matrix(c(1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, -0.5, 0, 0, -0.5,

+ 1), nrow = 4, ncol = 4, byrow = FALSE)

> auto <- eigen(r)

> auto$values

[1] 2.000000e+00 1.500000e+00 5.000000e-01 9.860761e-32

> auto$vectors

[,1] [,2] [,3] [,4]

[1,] 0.7071068 0.0000000 0.0000000 0.7071068

[2,] 0.7071068 0.0000000 0.0000000 -0.7071068

[3,] 0.0000000 0.7071068 0.7071068 0.0000000

[4,] 0.0000000 -0.7071068 0.7071068 0.0000000

La matrice ha rango 3 (il quarto autovalore e numericamente uguale a 0). La prima componenteprincipale spiega da sola il 50% della varianza totale ed e essenzialmente la somma delle variabili delprimo gruppo. La seconda componente spiega il 37.5% della varianza totale ed e essenzialmente ladifferenza delle variabili del secondo gruppo. La terza componente spiega il restante 12.5% della varianzatotale ed e la somma delle variabili del secondo gruppo.

Page 15: COMPONENTI PRINCIPALI

A RICHIAMI DI ALGEBRA DELLE MATRICI 15

A Richiami di algebra delle matrici

Una matrice A = (aij) e una tabella mxn di numeri ordinati in m righe e n colonne. Quando m = n, lamatrice e quadrata.

Se le matrici A = (aij) e B = (bij) hanno lo stesso numero di righe e lo stesso numero di colonne, laloro somma A+B e la matrice

C = (cij), cij = aij + bij .

Il prodotto della matrice A = (aij) per la costante numerica λ e la matrice

λA = (λaij).

Se A e mxn e B e nxp, il prodotto (righe per colonne) di A e B e

AB = C = (cij), cij =

n∑

l=1

ailblj

Dalla definizione segue che il prodotto righe per colonne di A e B richiede che le matrici siano opportu-namente conformate: il numero di colonne di A e uguale al numero di righe di B. L’esistenza di AB nonimplica in generale l’esistenza di BA e, anche quando esistono entrambi i prodotti, non e detto che risultiAB = BA. Questo prodotto matriciale non gode della proprieta commutativa.

L’operatore R del prodotto righe per colonne e %*%. L’esempio ne illustra l’applicazione.

> ma <- matrix(c(1, 2, 0, 1, -1, 0), nrow = 2, ncol = 3, byrow = FALSE)

> ma

[,1] [,2] [,3]

[1,] 1 0 -1

[2,] 2 1 0

> mb <- matrix(c(1, -1, 0, 0, 1, 1, 0, 2, 0, 1, 1, 3), nrow = 3,

+ ncol = 4, byrow = FALSE)

> mb

[,1] [,2] [,3] [,4]

[1,] 1 0 0 1

[2,] -1 1 2 1

[3,] 0 1 0 3

> ma %*% mb

[,1] [,2] [,3] [,4]

[1,] 1 -1 0 -2

[2,] 1 1 2 3

> md <- matrix(c(5, 0, -1, -3, 1, 1), nrow = 3, ncol = 2, byrow = FALSE)

> md

[,1] [,2]

[1,] 5 -3

[2,] 0 1

[3,] -1 1

> ma %*% md

Page 16: COMPONENTI PRINCIPALI

A RICHIAMI DI ALGEBRA DELLE MATRICI 16

[,1] [,2]

[1,] 6 -4

[2,] 10 -5

> md %*% ma

[,1] [,2] [,3]

[1,] -1 -3 -5

[2,] 2 1 0

[3,] 1 1 1

La trasposta della matrice A mxn, indicata con AT , e la matrice nxm che si ottiene scrivendo le righedi A come colonne

AT = (aji).

Valgono le proprieta(AT )T = A, (A+B)T = AT +BT , (AB)T = BTAT

Le matrici con una sola colonna vengono chiamate vettori colonna e le loro trasposte vettori riga. Ivettori sono indicati con lettere minuscole. Il vettore (nullo) nx1 con tutti gli elementi uguali a 0 vieneindicato con 0n. Il vettore nx1 con tutti gli elementi uguali a 1 viene indicato con 1n. Se x e un vettorenx1,

xTx =

n∑

i=1

x2i

e la norma di x e ‖ x ‖= (xTx)1/2. La norma e la generalizzazione multidimensionale della familiarenozione di lunghezza di un vettore. Se x e y sono vettori nx1,

xT y =

n∑

i=1

xiyi

e il prodotto interno di x e y. Il prodotto interno diviso per il prodotto della norma di x e della normadi y,

xT y/(‖ x ‖ ‖ y ‖),

e il coseno dell’angolo formato da x e y. Se xT y = 0, i due vettori sono ortogonali.Se A e quadrata d’ordine m, diag A = B = (bij) con bii = aii, i = 1, ...,m e bij = 0, i 6= j. Una

matrice A quadrata viene detta diagonale se diag A = A. La matrice identita d’ordine m, indicata conIm, e una matrice diagonale con elementi diagonali tutti uguali a 1. Se A e I sono conformate per ilprodotto AI = IA = A. Una matrice A quadrata viene detta ortogonale se ATA = AAT = I . Questaproprieta indica che i vettori riga (colonna) di A sono vettori di norma unitaria a due a due ortogonali. Latraccia di una matrice A quadrata d’ordine m, indicata con tr A, e la somma dei suoi elementi diagonali

tr A =

m∑

i=1

aii.

Valgono le seguenti proprieta

tr(A +B) = tr A+ tr B, tr(λA) = λtr A, tr(AB) = tr(BA).

La terza proprieta richiede che AB sia una matrice quadrata.Il rango di riga (colonna) di una matrice e il massimo numero di vettori riga (colonna) linearmente

indipendenti. Il rango di una matrice e il minimo valore del rango di riga e del rango di colonna. Per unamatrice A mxn il rango r(A) soddisfa la diseguaglianza

r(A) ≤ min{m,n}.

Page 17: COMPONENTI PRINCIPALI

A RICHIAMI DI ALGEBRA DELLE MATRICI 17

Una matrice A quadrata d’ordine m viene detta non singolare se r(A) = m, in caso contrario viene dettasingolare. Se A mxm e non singolare, esiste ed e unica la matrice B non singolare tale che

AB = BA = Im.

La matrice B, indicata con A−1, viene detta l’inversa di A. Se tutte le inverse esistono, valgono leproprieta

(A−1)T = (AT )−1, (AB)−1 = B−1A−1.

Gli operatori R di trasposizione e inversione di matrici sono t e solve, rispettivamente. Inoltrel’operatore diag, applicato ad una matrice quadrata, ne estrae il vettore degli elementi diagonali; applicatoad un vettore costruisce la matrice diagonale con elementi diagonali uguali agli elementi del vettore.

> t(ma)

[,1] [,2]

[1,] 1 2

[2,] 0 1

[3,] -1 0

> mc <- matrix(c(1, -1, 0, 0, 1, 1, 0, 2, 0), nrow = 3, ncol = 3,

+ byrow = FALSE)

> diag(diag(mc), nrow = length(diag(mc)))

[,1] [,2] [,3]

[1,] 1 0 0

[2,] 0 1 0

[3,] 0 0 0

> diag(c(1, 1, 2), nrow = 3)

[,1] [,2] [,3]

[1,] 1 0 0

[2,] 0 1 0

[3,] 0 0 2

> diag(1, nrow = 2)

[,1] [,2]

[1,] 1 0

[2,] 0 1

> sum(diag(mc))

[1] 2

> solve(mc)

[,1] [,2] [,3]

[1,] 1.0 0.0 0.0

[2,] 0.0 0.0 1.0

[3,] 0.5 0.5 -0.5

> mc %*% solve(mc)

Page 18: COMPONENTI PRINCIPALI

B AUTOVALORI E AUTOVETTORI 18

[,1] [,2] [,3]

[1,] 1 0 0

[2,] 0 1 0

[3,] 0 0 1

> solve(mc) %*% mc

[,1] [,2] [,3]

[1,] 1 0 0

[2,] 0 1 0

[3,] 0 0 1

Una matrice A quadrata viene detta simmetrica se AT = A. Se x e un vettore nx1 e A e quadratasimmetrica d’ordine n, l’espressione

xTAx =n∑

i,j=1

aijxixj

viene detta forma quadratica in x rispetto alla matrice A. Per n = 2 essa e un polinomio omogeneo disecondo grado a11x

21 + 2a12x1x2 + a22x

22 nelle variabili x1, x2, con coefficienti dipendenti dalla matrice

A. Le forme quadratiche sono classificate in base al loro segno:

xTAx > 0 per ogni x 6= 0n : definita positiva

xTAx ≥ 0 per ogni x : semi definita positiva

xTAx < 0 per ogni x 6= 0n : definita negativa

xTAx ≤ 0 per ogni x : semi definita negativa

xTAx Q 0 indefinita

B Autovalori e autovettori

Introduciamo questa importante nozione illustrando la motivazione geometrica.Sia x = (x1, ..., xn)

T un vettore nx1. Identifichiamo lo spazio di riferimento di x con Rn, l’insieme

delle n-uple di numeri reali. Ogni vettore puo essere rappresentato in Rn mediante un segmento orientato

uscente dall’origine 0n con l’estremita in corrispondenza del punto Px di coordinate x1, ..., xn. Esso ecaratterizzato dalla sua direzione (la retta orientata uscente dall’origine a cui il vettore appartiene) edalla sua lunghezza (la norma ‖ x ‖) (vedi Figura 1).

Sia A una fissata matrice quadrata d’ordine n. Si chiama trasformazione lineare l’applicazione ` :R

n → Rn che ad x associa il vettore nx1 y = Ax, con yi =

∑nl=1 ailxl = aTi x, i = 1, ..., n, essendo ai

l’i-esimo vettore riga di A.

Esempio 12 (Trasformazioni lineari) Consideriamo la trasformazione lineare associata alla matrice

A =

(

2 10 −1

)

.

Il vettore x = (1, 2)T viene trasformato nel vettore (4,−2)T mentre x = (−3, 3)T viene trasformato nelvettore (−3,−3)T . Il vettore x = (1, 0)T viene trasformato nel vettore (2, 0)T = 2x e, a differenza deicasi precedenti, la trasformazione cambia la lunghezza di x, ma non la direzione (vedi Figura 2).

Page 19: COMPONENTI PRINCIPALI

B AUTOVALORI E AUTOVETTORI 19

−3 −2 −1 0 1 2 3

−3

−2

−1

01

23

u

−u/2v

v/2

−3v

Figura 1: Vettori di R2: u = (2, 2)T sulla retta y = x,v = (2,−1)T sulla retta y = −x/2.

Un problema di grande interesse teorico e pratico e l’identificazione delle rette per l’origine invariantirispetto ad una trasformazione lineare. Il problema ammette una semplice impostazione algebrica. Infatti,per ogni vettore x, il vettore λx che si ottiene moltiplicando x per lo scalare λ rappresenta un vettoreuscente dall’origine con la stessa direzione di x, verso uguale o opposto a seconda che sia λ > 0 oppureλ < 0 e lunghezza pari a | λ | volte la lunghezza di x. Pertanto la ricerca delle direzioni invarianti ericondotta alla ricerca dei vettori x e degli scalari λ che verificano la seguente equazione matriciale

Ax = λx. (1)

Ogni soluzione λ∗ viene chiamata autovalore di A ed il vettore x∗ viene chiamato autovettore di Aassociato a λ∗.

Esempio 13 (Autovalori e autovettori) Usando la definizione (1), si verifica facilmente che gli au-tovalori della matrice A dell’Esempio 12 sono λ1 = 2 associato all’autovettore a1 = (1, 0)T , λ2 = −1associato all’autovettore a2 = (−1/10−1/2, 3/10−1/2)T (vedi Figura 2).

Notiamo a questo punto che gli autovalori possono essere numeri complessi, anche quando gli elementidi A sono numeri reali, e questo perche vogliamo trovare ogni possibile vettore x (anche complesso), diversodal vettore nullo, soddisfacente la (1). Inoltre, gli autovalori possono essere uguali a 0 purche esista unvettore x∗, diverso dal vettore nullo, tale che Ax∗ = 0n. Il calcolo degli autovalori e autovettori di unamatrice puo essere complicato e viene risolto grazie a speciali programmi di calcolo numerico, disponibilianche in R.

Page 20: COMPONENTI PRINCIPALI

B AUTOVALORI E AUTOVETTORI 20

−4 −2 0 2 4

−4

−2

02

4

u

Au

v

Av

z Az

w

Aw

Figura 2: La trasformazione x→ Ax (tratteggio: vettori trasformati; verde: autovettori di A).

Per calcolare gli autovalori ed autovettori di una matrice si puo usare la funzione R eigen. Essaproduce una lista con componenti

1. $values: vettore degli autovalori,

2. $vectors: matrice avente nelle colonne gli autovettori.

Verifichiamo, usando la funzione eigen, che la matrice mc ha un autovalore reale e due autovaloricomplessi coniugati mentre gli autovettori hanno elementi complessi.

> mc <- matrix(c(2, 0, -1, 0, 1, -2, 1, 1, 0), nrow = 3, ncol = 3,

+ byrow = FALSE)

> auto <- eigen(mc)

> auto$values

[1] 1.770917+0.000000i 0.614542+1.563885i 0.614542-1.563885i

> auto$vectors

[,1] [,2] [,3]

[1,] -0.9362651+0i 0.2497824+0.2819505i 0.2497824-0.2819505i

[2,] 0.2782173+0i 0.1169313+0.4744142i 0.1169313-0.4744142i

[3,] 0.2144824+0i -0.7870012+0.0000000i -0.7870012+0.0000000i

Page 21: COMPONENTI PRINCIPALI

B AUTOVALORI E AUTOVETTORI 21

Riepiloghiamo di seguito alcuni utili risultati riguardanti autovalori e autovettori, supponendo Aquadrata d’ordine n.

1. Autovalori e autovettori sono definiti soltanto per matrici quadrate.

2. Gli autovettori sono per definizione diversi dal vettore nullo mentre gli autovalori possono essereuguali a 0.

3. Gli autovettori non sono determinati univocamente; infatti, se x∗ e un autovettore associato all’au-tovalore λ∗, lo e anche kx∗, per ogni scalare k 6= 0. Di qui la consuetudine di ridurli a norma unitaria(quando sono reali). Anche in questo caso, sono comunque definiti a meno di una moltiplicazioneper −1.

4. A e AT hanno gli stessi autovalori; gli autovettori possono essere diversi.

5. tr A =∑n

i=1 λi.

6. det A =∏n

i=1 λi.

7. A e non singolare se e solo se tutti gli autovalori sono diversi da 0.

8. Una matrice singolare ha almeno un autovalore nullo.

Le matrici reali simmetriche godono di ulteriori notevoli proprieta.

P1. Gli autovalori sono reali.

P2. Autovettori associati ad autovalori distinti sono ortogonali.

P3. Sia A una matrice simmetrica d’ordine n. Indichiamo con Λ = diag(λ1, ..., λn) la matrice diago-nale degli autovalori ordinati λ1 ≥ ... ≥ λn e con U la matrice pxp (ortogonale) le cui colonnesono ordinatamente gli autovettori ortonormali corrispondenti agli autovalori. Vale la seguenterappresentazione (teorema degli assi principali)

A = UΛUT . (2)

P4 Una matrice simmetrica e definita positiva (semi definita positiva) se e solo se tutti gli autovalorisono positivi (non negativi).

Le proprieta P1-P4 sono applicate nell’analisi delle componenti principali, che usa autovalori e au-tovettori delle matrici di covarianza o di correlazione. Ne riportiamo di seguito un’illustrazione.

> b <- matrix(c(9, 4, 2, 4, 4, 2, 2, 2, 1), nrow = 3, ncol = 3,

+ byrow = FALSE)

> print(c("Traccia = ", sum(diag(b))), quote = FALSE)

[1] Traccia = 14

> print(c("Determinante = ", det(b)), quote = FALSE)

[1] Determinante = 0

> auto <- eigen(b)

> auto$values

[1] 1.189898e+01 2.101021e+00 -1.561251e-17

Page 22: COMPONENTI PRINCIPALI

RIFERIMENTI BIBLIOGRAFICI 22

> print(c("Somma autovalori = Traccia = ", sum(auto$values)), quote = FALSE)

[1] Somma autovalori = Traccia = 14

> print(c("Prodotto autovalori = Determinante = ", prod(auto$values)),

+ quote = FALSE)

[1] Prodotto autovalori = Determinante = -3.90312782094782e-16

> auto$vectors

[,1] [,2] [,3]

[1,] 0.8391211 0.5439447 0.0000000

[2,] 0.4865189 -0.7505327 -0.4472136

[3,] 0.2432595 -0.3752663 0.8944272

> print("Verifica ortogonalita matrice autovettori", quote = FALSE)

[1] Verifica ortogonalita matrice autovettori

> auto$vectors %*% t(auto$vectors)

[,1] [,2] [,3]

[1,] 1.000000e+00 6.697659e-17 3.104884e-17

[2,] 6.697659e-17 1.000000e+00 -1.260385e-17

[3,] 3.104884e-17 -1.260385e-17 1.000000e+00

> t(auto$vectors) %*% auto$vectors

[,1] [,2] [,3]

[1,] 1.000000e+00 6.543838e-17 1.885157e-17

[2,] 6.543838e-17 1.000000e+00 -7.678862e-17

[3,] 1.885157e-17 -7.678862e-17 1.000000e+00

> print("Verifica teorema assi principali", quote = FALSE)

[1] Verifica teorema assi principali

> auto$vectors %*% diag(auto$values) %*% t(auto$vectors)

[,1] [,2] [,3]

[1,] 9 4 2

[2,] 4 4 2

[3,] 2 2 1

Riferimenti bibliografici

Magnus JR, Neudecker H (2001) Matrix Differential Calculus with Applications in Statistics andEconomics, 2nd edn. Wiley, New York

Mardia KV, Kent JT, Bibby JM (1979) Multivariate Analysis, 1st edn. Academic Press, London

R Development Core Team (2006) R: A language and environment for statistical computing. URLhttp://www.R-project.org, ISBN 3-900051-07-0