You are on page 1of 79

UNIVERSIT DEGLI STUDI DI BARI A.

MORO
Metodi numerici per
linformatica
Appunti

Cappelluti Vincenzo
2013/2014




Appunti del corso di Informatica Magistrale: Metodi numerici per linformatica
Metodi numerici per linformatica
2013/2014

1

Metodi numerici per linformatica
2013/2014

2
Sommario
Sommario .............................................................................................................................................................2
ALGEBRA LINEARE .............................................................................................................. 6
Alfabeto greco .....................................................................................................................................................6
Matrici: definizioni fondamentali ...................................................................................................................6
Matrici particolari ...............................................................................................................................................7
Matrice diagonale ................................................................................................................................................... 7
Matrice di permutazione ........................................................................................................................................ 7
Matrice triangolare ................................................................................................................................................. 7
Matrice nulla ............................................................................................................................................................ 8
Matrice opposta ....................................................................................................................................................... 8
Matrice trasposta e H-trasposta ............................................................................................................................ 8
Matrice simmetrica ed hermitiana ........................................................................................................................ 9
Matrice riducibile e irriducibile ............................................................................................................................ 9
Matrice stocastica .................................................................................................................................................... 9
Funzione lineare .................................................................................................................................................9
Funzione composta ............................................................................................................................................... 10
Operazioni su matrici ......................................................................................................................................10
Somma tra matrici ................................................................................................................................................. 10
Prodotto per scalare .............................................................................................................................................. 10
Prodotto tra vettore riga e vettore colonna ....................................................................................................... 11
Prodotto tra matrici righe per colonne ............................................................................................................... 11
Osservazione .............................................................................................................................................................. 12
Matrice identit (o identica) ................................................................................................................................ 12
Matrice inversa ...................................................................................................................................................... 12
Sistemi lineari ...................................................................................................................................................13
Eliminazione di Gauss per sistemi di equazioni lineari .................................................................................. 14
Forma di Echelon per righe ................................................................................................................................. 15
Determinante ......................................................................................................................................................... 16
Significato geometrico del determinante ................................................................................................................ 16
Singolarit e non singolarit di una matrice ..................................................................................................... 17
Rank di una matrice .............................................................................................................................................. 17
Consistenza di un sistema lineare ...................................................................................................................... 17
Sottomatrice ........................................................................................................................................................... 18
Norme .................................................................................................................................................................18
Norma di vettore ................................................................................................................................................... 18
Norma di matrice .................................................................................................................................................. 18
Prodotto scalare in uno spazio vettoriale .......................................................................................................... 20
Disuguaglianza di CauchySchwarz ...................................................................................................................... 20
Spazio vettoriale ...............................................................................................................................................20
Sottospazio vettoriale ........................................................................................................................................... 21
Metodi numerici per linformatica
2013/2014

3
Spazio span ............................................................................................................................................................ 21
Spazio Range ......................................................................................................................................................... 22
Spazio nullo ........................................................................................................................................................... 22
Base ......................................................................................................................................................................... 22
Dimensione di un sottospazio ............................................................................................................................. 23
Relazioni tra sottospazi-dimensioni-basi........................................................................................................... 23
Indipendenza lineare ............................................................................................................................................ 23
Matrice di Vandermonde .......................................................................................................................................... 24
Ortogonalit .......................................................................................................................................................24
Legge del coseno ................................................................................................................................................... 24
Correlazione lineare e standardizzazione ......................................................................................................... 25
Ortonormalit di vettori ....................................................................................................................................... 26
Ortonormalit di matrici ...................................................................................................................................... 27
Metodo di ortonormalizzazione di Gram-Schmidt ....................................................................................27
Fattorizzazione QR ...........................................................................................................................................27
Autovalori e autovettori ..................................................................................................................................28
Autocoppie per potenze di matrici ..................................................................................................................... 29
Molteplicit algebrica e geometrica di un autovalore ..................................................................................... 29
Similarit ............................................................................................................................................................30
Matrice diagonalizzabile .................................................................................................................................30
Metodo delle potenze ......................................................................................................................................31
Successione dei coefficienti di Rayleigh ............................................................................................................ 32
Autovalori della matrice inversa ........................................................................................................................ 32
Applicazione del metodo delle potenze per approssimare un autovalore e un autovettore generico ..... 33
Teorema di Schur .................................................................................................................................................. 33
Metodo QR per il calcolo degli autovalori e autovettori dominanti .............................................................. 33
Teorema di convergenza del metodo QR .......................................................................................................... 34
Decomposizioni a blocchi .................................................................................................................................... 34
SVD (Decomposizione a valori singolari) ...................................................................................................34
Propriet sulla decomposizione SVD ................................................................................................................. 35
Teorema di Eckart-Young (SVD troncata) ......................................................................................................... 36
SVD per il filtraggio dei dati ............................................................................................................................... 37
SNR (rapporto segnale/rumore) .............................................................................................................................. 38
Interpretazione geometrica della SVD ............................................................................................................... 38
Richiami su alcuni concetti di analisi matematica .....................................................................................39
Funzione univariata .............................................................................................................................................. 39
Funzione multivariata .......................................................................................................................................... 40
Funzione vettoriale ............................................................................................................................................... 41
Polinomio di Taylor .............................................................................................................................................. 41
Per una funzione scalare ........................................................................................................................................... 41
Per una funzione vettoriale ......................................................................................................................... 42
Per una funzione vettoriale ..................................................................................................................... 42
Metodo delle bisezioni ......................................................................................................................................... 42
Metodo delle tangenti di Newton-Raphson ................................................................................................42
Metodi numerici per linformatica
2013/2014

4
Per le funzioni scalari ........................................................................................................................................... 42
Per le funzioni vettoriali ...................................................................................................................................... 43
Definizione di derivata prima ............................................................................................................................. 43
Metodi di ottimizzazione non vincolata ......................................................................................................43
Per una funzione scalare ...................................................................................................................................... 43
Per una funzione vettoriale ................................................................................................................................. 44
Curve di livello .................................................................................................................................................44
Metodo di Newton per lottimizzazione vincolata ....................................................................................44
Metodi di discesa .................................................................................................................................................. 45
Steepest descent (massima discesa)......................................................................................................................... 46
Metodo di Newton usato come metodo di discesa ............................................................................................... 46
Ottimizzazione vincolata ................................................................................................................................46
Condizioni KKT per le lagrangiane .................................................................................................................... 47
Metodi per la penalizzazione .........................................................................................................................47
Problema dei minimi quadrati .......................................................................................................................48
Applicazioni del problema dei minimi quadrati .............................................................................................. 48
Data fitting .................................................................................................................................................................. 48
Curve fitting (approssimazione ai minimi quadrati nel discreto) ...................................................................... 54
ARTICOLI E DISPENSE ..................................................................................................... 58
Pseudo-inversa ...................................................................................................................................................... 58
Matrice simmetrica ............................................................................................................................................... 58
Matrice definita positiva ...................................................................................................................................... 58
PCA (Analisi delle componenti principali) .................................................................................................58
BSS (Blind Signal Separation) .............................................................................................................................. 60
Derivazione della PCA in modo analitico ......................................................................................................... 61
Ottimizzazione vincolata ..................................................................................................................................... 62
Scree plot ................................................................................................................................................................ 63
Criterio di Kaiser ................................................................................................................................................... 64
Criteri pi complessi ............................................................................................................................................ 64
Scelta dellunit di misura ................................................................................................................................... 64
Interpretazione delle componenti principali..................................................................................................... 64
PCA per analisi di microarray del DNA............................................................................................................ 65
Eigenfaces for recognition
[1]
...........................................................................................................................66
Vector Space Model per lInformation Retrieval
[2]
....................................................................................68
Metodo QR nel query matching ......................................................................................................................... 68
Precisione e recupero ............................................................................................................................................ 69
Metodo SVD nel query matching ....................................................................................................................... 69
Confronto termine-termine ................................................................................................................................. 70
Relevance feedback ............................................................................................................................................... 70
A survey of eigenvector Methods for Web Information Retrieval
[3]
......................................................72
HITS-IR (Hypertext Induced Topic Search for Information Retrieval) ......................................................... 72
Implementazione dellalgoritmo HITS ................................................................................................................... 72
Metodi numerici per linformatica
2013/2014

5
Vantaggi e svantaggi di HITS .................................................................................................................................. 73
PageRank................................................................................................................................................................ 73
Implementazione dellalgoritmo di PageRank ...................................................................................................... 74
Vantaggi e svantaggi di PageRank .......................................................................................................................... 74
KDD (Knowledge Discovery in Databases) ................................................................................................75
DM (Data mining) ................................................................................................................................................. 75
I dati ........................................................................................................................................................................ 75
Feature (caratteristiche) ............................................................................................................................................ 75
Trasformazioni di dati .......................................................................................................................................... 76
Normalizzazione ........................................................................................................................................................ 76
Data smoothing .......................................................................................................................................................... 76
Missing data ............................................................................................................................................................... 76
Outliers ........................................................................................................................................................................ 77
Visualizzazione grafica di variabili .................................................................................................................... 77
Bibliografia ........................................................................................................................................................78

Metodi numerici per linformatica
2013/2014

6
ALGEBRA LINEARE
Alfabeto greco

Maiuscola Minuscola Nome italiano
alfa
beta
gamma
delta
, epsilon
zeta
eta
, theta
iota
kappa
lambda
mi, mu
ni, nu
xi
omicron
, pi
rho
, sigma
tau
upsilon
, phi
chi
psi
omega
Matrici: definizioni fondamentali
Una matrice una tabella di elementi reali o complessi disposti su righe e colonne. I numeri
che compaiono nella tabella si dicono elementi della matrice e vengono individuati attraverso la loro
posizione di riga e colonna.

un generico elemento della matrice che si trova sulla riga e sulla


colonna .
In generale una matrice di righe ed colonne si denota cos:


(



In generale le matrici sono denotate con lettere maiuscole dellalfabeto, mentre i loro elementi con la
corrispondente lettera minuscola abbinata al doppio indice, il primo per le righe e il secondo per le
Metodi numerici per linformatica
2013/2014

7
colonne.
Se allora si dice che una matrice quadrata di ordine (o equivalentemente). In queste matrici
si pu parlare di diagonale principale della matrice, costituita dai coefficienti di posto ( ) che sono detti
appunto coefficienti diagonali.
Un vettore colonna ,

-, con una matrice che consiste di una sola colonna. Si ha quindi:



[

]

Linsieme di tutti i vettori colonna a componenti reali (rispettivamente complessi) costituisce lo spazio
euclideo

(rispettivamente lo spazio

).
Un vettore

pu essere identificato con un punto dello spazio a dimensioni, assumendo le


componenti

come coordinate del punto.


Dora in avanti, con la parola vettore si considereranno i vettori colonna, se non diversamente
specificato.

Data una matrice

talvolta utile scrivere le colonne della matrice come vettori colonna:


[

]
dove

rappresenta la -esima colonna.


Matrici particolari
Matrice diagonale
Una matrice diagonale una matrice quadrata che ha tutti i coefficienti al di fuori della diagonale
principale uguali a 0, quindi del tipo:

(

, (

)

Se

, la matrice detta scalare. In particolare, la matrice unit, o matrice identit,

, o
semplicemente definita da ( ). Possiamo definire la propriet di commutazione per le
matrici identiche: .
Matrice di permutazione
Una matrice di permutazione una matrice che si ottiene dalla matrice identit con scambi di righe (o
di colonne); pertanto, in ogni riga e in ogni colonna, ha un solo elemento diverso da zero e uguale a 1.
Matrice triangolare
Una matrice triangolare inferiore una matrice quadrata i cui coefficienti al di sopra della diagonale
principale sono nulli. Una tale matrice pertanto definita dalle relazioni:

per
Una matrice di questo tipo si presenta nella forma seguente:

Metodi numerici per linformatica
2013/2014

8
(

,

Una matrice triangolare superiore una matrice quadrata in cui i coefficienti al di sotto della diagonale
principale sono nulli. Una tale matrice pertanto definita dalle relazioni:

per
Una matrice di questo tipo si presenta nella seguente forma:
(

,
Matrice nulla
Una matrice nulla una matrice in cui tutti i coefficienti sono uguali a 0 ed denotata col simbolo

.
Matrice opposta
In generale, data una matrice

, si pone:
[

]
si chiama matrice opposta di (detta anche inversa additiva).
Per ogni matrice

esiste sempre la matrice opposta .


Inoltre la somma tra la matrice e la matrice opposta , una matrice i cui elementi sono tutti uguali a
0. Si ha quindi che:
() [

] [

] [

] ,-
Matrice trasposta e H-trasposta
Data una matrice

, si definisce trasposta

di una matrice la matrice che si ottiene dalla


matrice per scambio delle righe con le colonne.


Gli elementi

della matrice

sono, pertanto, dati dagli elementi

di per e
. Se la matrice ad elementi complessi, si definisce la matrice trasposta coniugata

i cui
elementi

, dove

il coniugato del numero complesso


1

.
Effettuando prima loperazione di trasposizione e poi quella di coniugazione sulla matrice si ottiene la
medesima matrice invertendo lordine delle operazioni; tale matrice si denota con

e si chiama matrice
-trasposta di . Si ha pertanto:




Elenchiamo di seguito le principali propriet di cui godono le matrici trasposte e -trasposte.
Siano

e uno scalare, allora:


()


( )


()


()


( )



1
Il coniugato di un numero complesso il numero ottenuto cambiando il segno della parte immaginaria. Pensando il
numero complesso come punto del piano complesso, il suo complesso coniugato il punto riflesso rispetto allasse reale. Se
un numero complesso, il suo coniugato si indica con .
Metodi numerici per linformatica
2013/2014

9
()


Matrice simmetrica ed hermitiana
Tra tutte le matrici quadrate, quelle che coincidono con la loro trasposta rivestono un particolare interesse;
esse vengono chiamate matrici simmetriche. Una matrice

simmetrica se

, mentre una
matrice

viene detta hermitiana quando coincide con la sua -trasposta, cio

.
Diremo che una matrice anti-simmetrica se

, diremo invece che anti-hermitiana se

. Segue immediatamente dalla definizione che gli elementi diagonali di una matrice anti-simmetrica
sono nulli, mentre gli elementi diagonali di una matrice anti-hermitiana sono tutti immaginari, cio del
tipo , con .
Le matrici

sono matrici simmetriche. Dimostrazione:


Matrice riducibile e irriducibile
Una matrice

riducibile se e solo se esiste una matrice di permutazione

tale che:


in forma triangolare superiore.
Il grado di adiacenza ad essa associato non fortemente connesso, nel senso che se, presi a caso due nodi
e , non posso raggiungere a partire da .


Figura 1 - Grafo non fortemente connesso in quanto non posso arrivare al nodo 1, partendo dal nodo 2

Al contrario, una matrice

si dice irriducibile se e solo se il suo grafo di adiacenza ad essa


associato, fortemente connesso.
Matrice stocastica
Una matrice stocastica

una matrice ad elementi non negativi nella quale la somma degli


elementi su ogni riga (o su ogni colonna) uguale ad 1.
Funzione lineare
2

Una funzione lineare una funzione tale che
()
con

e
Inoltre:


()

()

()

()

()
}


()

()

()

Se abbiamo un punto in un sistema di assi cartesiani di coordinate ( ), il suo riflesso rispetto allasse
orizzontale avr coordinate

( ) mentre quello rispetto allasse verticale avr coordinate

( ).
Infine se vogliamo determinare il punto riflesso rispetto allorigine, avremo un punto

di coordinate

2
Ad ogni funzione lineare si pu associare una sua rappresentazione matriciale.
Metodi numerici per linformatica
2013/2014

10
( ).
Funzione composta
Vediamo come la funzione composta di due funzioni lineari qualsiasi compatibili, dia come risultato il
prodotto delle matrici ad esse associate.
Date due funzioni lineari

dove:

()
.

/ (

* e
()
.

/ (

*
Componendo le due funzioni precedenti abbiamo:

()

()

()
(
()
) (

* (
(

) (

)
(

) (

)
*
(

* (
( )

( )

( )

( )

*

Se rappresentiamo le due funzioni e in versione matriciale con due matrici e tali che:
.


/ e .


/
e chiamiamo il loro prodotto abbiamo che:
.


/ .


/ .


/
Notiamo che la matrice corrisponde esattamente alla matrice dei coefficienti di
()
.
Operazioni su matrici
Due matrici

si dicono uguali se hanno la stessa dimensione e se

per ogni
e .
Somma tra matrici
La somma di due matrici

la matrice

di elementi

, per e
. Lelemento neutro rispetto alla somma in

dato dalla matrice i cui elementi sono tutti


uguali a zero (matrice nulla).
Loperazione di somma gode di numerose propriet che elenchiamo di seguito.
Se

e e sono due scalari, allora:


( ) ( ) (associativit della somma)
(commutativit della somma)

(esistenza dellelemento neutro)


()

(esistenza dellelemento inverso)


importante notare che non si pu eseguire la somma tra matrici di dimensioni diverse.
Prodotto per scalare
Il prodotto per scalare di una matrice

per uno scalare (oppure a ) la matrice di


elementi [

]. Si pu definire analogamente il prodotto di per lo scalare come la matrice [

];
tale matrice evidentemente coincide con , attesa la commutativit del prodotto tra scalari, pertanto
.
Loperazione di prodotto per scalare gode delle seguenti propriet, la cui
verifica del tutto evidente:
(esistenza dellelemento neutro)
(esistenza dellelemento zero)
Metodi numerici per linformatica
2013/2014

11
() ()
( ) (distributivit)

( ) (distributivit)
Si osservi che la matrice prodotto di una data matrice per uno scalare, produce una matrice delle stesse
dimensioni della matrice data.
Prodotto tra vettore riga e vettore colonna
Dati un vettore riga

e un vettore colonna

, si chiama prodotto scalare interno standard


tra i due vettori e si indica con

, lo scalare (o la matrice ):


Le seguenti propriet del prodotto di un vettore riga per un vettore colonna sono del tutto evidenti:


Per indicare il prodotto interno scalare si usa anche la notazione ( ).

Se

, si chiama prodotto esterno tra i due vettori, la matrice

definita nel
modo seguente:

,

Osserviamo che ogni colonna di

un multiplo di e ogni riga un multiplo di

. In maniera
analoga si definisce per

il prodotto esterno

.
Prodotto tra matrici righe per colonne
Il prodotto righe per colonne di due matrici

la matrice

con elementi:


Il prodotto righe per colonne definito solo se il numero delle colonne di (fattore di sinistra) uguale al
numero delle righe di (fattore di destra). Due matrici che soddisfano questa condizione riguardo le
dimensioni si dicono conformi per il prodotto.
Diamo qui di seguito le pi importanti propriet cui soddisfa il prodotto tra matrici, anche in relazione
alle due operazioni di somma e di prodotto per scalari.
Se

allora vale la associativit:


() ()
Se

allora:


Se

allora vale la distributivit a sinistra:


( )
Se

allora vale la distributivit a destra:


( )
Il prodotto fra matrici distributivo rispetto alla somma
Se

e uno scalare, allora:


() () ()
In generale si ha che dalla quale si pu affermare che la moltiplicazione tra matrici non una
Metodi numerici per linformatica
2013/2014

12
operazione commutativa.

Date due matrici

non vale la legge di annullamento del prodotto.



La pre-moltiplicazione di per una matrice diagonale ha leffetto di moltiplicare ogni riga di per il
corrispondente elemento diagonale di , mentre la post-moltiplicazione di per una matrice diagonale
ha leffetto di moltiplicare ogni colonna di per il corrispondente elemento diagonale di .
Osservazione
Se

(vettore colonna), il prodotto:



definisce una trasformazione da

in

. Dal momento che per ogni coppia di vettori

e ogni
coppia di scalari e , si ha:
( )
la trasformazione lineare. Viceversa, si pu mostrare che ogni trasformazione lineare da

in

pu essere rappresentata da una matrice

. Il prodotto tra due matrici corrisponde alla


matrice associata alla trasformazione che risulta dalla composizione di due trasformazioni lineari.
Osserviamo ancora che ha interesse la seguente interpretazione del prodotto di una matrice

per
un vettore


Il vettore

risulta dalla combinazione lineare delle colonne

della matrice .
Matrice identit (o identica)
Una matrice

si dice identit se le componenti con indice hanno valore uno, mentre quelle
con indice hanno valore zero. Per ogni matrice

vale che:

Ogni vettore colonna o vettore riga di una matrice identica rappresenta un particolare vettore

detto
base canonica, caratterizzato dallavere un 1 in -esima posizione.
Per estrarre la -esima colonna della matrice mi basta moltiplicare questa per la -esima colonna della
matrice identica:
()


mentre per estrarre la -esima riga calcolo:
()


essendo

l-esima riga della matrice identica.


Matrice inversa
Una matrice

detta inversa di

se:

In tal caso si scrive

e la matrice si dice invertibile. Il determinante fornisce un test per


linvertibilit della matrice; si ha, infatti, il seguente importante risultato: una matrice quadrata
invertibile se e solo se essa non singolare.
Propriet della matrice inversa:
(


Se ortonormale allora


Se e sono due matrici non singolari, il prodotto non singolare e ()


Dimostriamo (per assurdo) lunicit della inversa di una matrice

.
Metodi numerici per linformatica
2013/2014

13
Siano

inverse di



()

()



La seguente formula consente di calcolare linversa di una matrice

non singolare (() ).


.


/

()

()

()

()
,
Sistemi lineari
Si pensi ad un sistema di equazioni (righe) in incognite (colonne):

{



Il sistema si pu rappresentare semplicemente tramite luguaglianza del vettore dei termini noti:

[

]

con il vettore che ha come coordinate i primi membri delle equazioni:

[

]

Questultimo vettore non altro che il risultato del prodotto righe per colonne della matrice dei
coefficienti:

(

,

per il vettore delle incognite:

[

]
Pertanto il sistema di equazioni si pu scrivere in forma compatta, detta forma matriciale del sistema:

Se ,- il sistema detto omogeneo e ammette sempre almeno la soluzione nulla. Se () ,
il sistema omogeneo ammetter ( ) soluzioni linearmente indipendenti.
Indicando con

la -esima colonna della matrice , il sistema pu essere riscritto nella seguente forma:


che esprime il vettore termine noto come combinazione lineare dei vettori colonna di .
Metodi numerici per linformatica
2013/2014

14
Dalla rappresentazione sopra si nota che la condizione di risolubilit (o, equivalentemente, di consistenza)
del sistema la seguente:
()
dove () lo spazio generato dalle colonne di .
In altra forma, si dice che il sistema risolubile quando il (,-) (), dove con ,- si indica
la cosiddetta matrice aumentata (o completa), ottenuta aggiungendo alle colonne di il vettore colonna
dei termini noti .
Eliminazione di Gauss per sistemi di equazioni lineari
Lidea alla base dellalgoritmo molto semplice: eliminare progressivamente (da qui il nome di
eliminazione) sempre pi incognite nelle equazioni successive del sistema, ottenendo un sistema
equivalente a quello di partenza (cio con le medesime soluzioni), ma che si pu risolvere molto
facilmente con un metodo di sostituzione allindietro.
Un modo di presentare la tecnica di eliminazione di Gauss consiste nelloperare direttamente sulla
matrice dei coefficienti del sistema, cui si aggiunge come ultima colonna, la colonna dei termini noti, cio
quella che si chiama matrice aumentata (o ampliata) del sistema. La matrice del sistema semplificato, cui
si perviene al termine della eliminazione di Gauss, si chiama forma ridotta (di Gauss) della matrice
aumentata del sistema.
Un sistema in equazioni ed incognite, nella sua forma generale, il seguente:

{



che in forma matriciale si scrive:

La matrice aumentata del sistema la matrice a blocchi:
,-
Si ottiene un sistema equivalente

a quello dato (cio con esattamente le stesse soluzioni) se si opera


sulle sue equazioni in uno dei tre seguenti modi:
I operazione elementare: una equazione viene moltiplicata per uno scalare non nullo:


[

con

II operazione elementare: una equazione viene sostituita con la somma di se stessa con unaltra
equazione del sistema, eventualmente moltiplicata per uno scalare non nullo:


[

con

III operazione elementare: si scambiano tra di loro due equazioni (si effettua un semplice scambio
di righe):
Metodi numerici per linformatica
2013/2014

15


[



Applicando ripetutamente queste tre operazioni elementari, si possono eliminare progressivamente le
incognite nelle equazioni successive. Osserviamo inoltre che per ciascuna operazione elementare ne esiste
unaltra che riporta la matrice ottenuta nella sua configurazione originale; pertanto le operazioni
elementari sono reversibili.
Forma di Echelon per righe
Se una matrice ha un configurazione tale per cui ogni riga a partire dalla seconda ha un numero di zeri
iniziali superiore alla riga precedente allora viene detta forma di Echelon per righe (o anche scala per
righe).
Formalizziamo il concetto di forma di Echelon per righe.
Data una matrice

, avente colonne

e righe

, detta essere in forma di Echelon per righe se


valgono le seguenti condizioni:
Se

consiste di tutti zeri, allora anche le righe sotto devono avere componenti tutte uguali a zero
Se la prima componente non nulla in

giace sulla -esima colonna, allora tutte le entrate sotto la


-esima riga nelle colonne

sono nulle
Queste due condizioni affermano che le componenti non nulle in forma di Echelon devono trovarsi al di
sopra di una linea a gradini che parte dellangolo in alto a sinistra e scende in basso a destra. I pivot sono i
primi elementi non nulli in ogni riga.
da osservare che a causa della flessibilit con cui si scelgono le operazioni sulle righe nellalgoritmo di
eliminazione di Gauss per ridurre la matrice di partenza in una in forma di Echelon , non si ha in
generale lunivocit nella determinazione della forma suddetta.

Per un sistema che ha la matrice aumentata in forma di Echelon per righe, chiaro che le soluzioni si
trovano facilmente con la sostituzione allindietro, dando possibilmente valori arbitrari a certe variabili
libere.
In una matrice in forma di Echelon per righe, una colonna si dice dominante se contiene il primo
coefficiente non nullo (pivot) di qualche riga. Le variabili corrispondenti alle colonne dominanti sono
chiamate variabili dominanti.
Possiamo allora dire che per la forma ridotta ,- della matrice aumentata ,- di un generico sistema
lineare , accade uno e uno solo dei tre seguenti casi:
,- Tutte le colonne sono dominanti tranne lultima (corrispondente alla colonna dei termini noti);
in tal caso il sistema ammette una e una sola soluzione, rappresentata dallo 0
,- Lultima colonna non dominante ed esiste almeno una colonna non dominante; in tal caso il
sistema ammette infinite soluzioni, che dipendono da tanti parametri quante sono le colonne non
dominanti. Le variabili del sistema corrispondenti alle colonne non dominanti della forma ridotta
si chiamano variabili libere
,- Lultima colonna dominante; in tal caso il sistema non ammette soluzioni. Abbiamo cio una
variabile uguale a 0 con valore diverso da 0
Se

, il caso ,- pu accadere solo se (ho almeno tante equazioni quante sono le incognite),
il caso ,- solo se , mentre il caso ,- pu accadere qualunque siano ed .
Metodi numerici per linformatica
2013/2014

16
Determinante
Sia

. Il determinante di definito da:


() ()
()


dove () il numero di inversioni nella permutazione (

) e varia su tutte le
permutazioni degli interi . La formula sopra lestensione al caso di generico delle formule note
per matrici di ordine e :
()


()


Osserviamo che il calcolo del determinante mediante la definizione richiede la formazione di prodotti,
ognuno dei quali richiede moltiplicazioni.
Il segno della permutazione dipende dal numero di permutazioni. In particolare:

()
{




Propriet del determinante:
Il valore del determinante rimane immutato se si aggiunge a una riga (o colonna) unaltra riga (o
colonna), eventualmente moltiplicata per uno scalare (II operazione elementare)
Il determinante di una matrice triangolare

uguale al prodotto degli elementi sulla


diagonale principale:
()


Se si scambiano due righe (o colonne), il determinante cambia di segno
Moltiplicando una riga per , il determinante viene moltiplicato per quell
() (

)
(

) ()


()
Date due matrici

() () ()

Si osservi che se

invertibile se ha () .

Il determinante di una matrice pu essere espresso in maniera ricorsiva mediante la regola di Laplace.
Infatti, indicata con

la sottomatrice quadrata di ordine ottenuta dalla matrice eliminando la -


esima riga e la -esima colonna, per un qualunque indice di riga si ha:

{


()




dove il termine ()

) detto cofattore dellelemento

. Si chiamano, inoltre, minori i


determinanti delle sottomatrici quadrate che si ottengono fissando in maniera qualunque uno stesso
numero di righe e di colonne.

Il determinante di una matrice rettangolare non definito.
Significato geometrico del determinante
Il significato geometrico del determinante di una matrice sta nel coincidere con il volume del
Metodi numerici per linformatica
2013/2014

17
parallelepipedo -dimensionale, i cui spigoli corrispondono alle colonne della matrice .
Il segno di () indica lorientamento dellinsieme delle coordinate.
Singolarit e non singolarit di una matrice
Una matrice

detta non singolare quando per essa si ha () .


Daltra parte una matrice

si dice singolare, con () , se non ammette inversa. In questo


caso il sistema non ammetter ununica soluzione. Viceversa, la matrice invertibile se e solo se non
singolare.
Rank di una matrice
Il rank di una matrice

pu essere definito come lordine massimo dei minori non nulli della
matrice. Esso viene denotato usualmente con la notazione ().
Il rank pu essere anche definito come il numero massimo delle colonne, e quindi anche delle righe, della
matrice che sono linearmente indipendenti.
Data una matrice

ridotta dalle operazioni di riga nella forma di Echelon , il () possiamo


definirlo alternativamente come:
il numero di elementi pivotali in
il numero di righe non nulle in
il numero di colonne di base di (cio il numero delle colonne linearmente indipendenti che
contengono un elemento pivotale). Si presti particolare attenzione al fatto che le colonne di base
sono estratte da e non dalla forma di Echelon per righe

Sia

e consideriamo le matrici simmetriche

. Queste matrici assumono una particolare


importanza perch compaiono in diverse applicazioni. Per esse valgono le seguenti propriet:
() (

) (

)
(

) (

)
(

) ()
(

) ()
(

) (

)
Un esempio legato alle matrici

la loro applicazione alla risoluzione del sistema lineare .


Infatti, moltiplicando a sinistra per

si produce il seguente sistema:


chiamato sistema associato delle equazioni normali che possiede delle propriet estremamente
importanti:
Il sistema delle equazioni normali sempre consistente perch

) (

)
Se consistente allora e

hanno lo stesso insieme di soluzioni


Se consistente ed ha una unica soluzione, lo stesso accade per

e risulta:
(


Consistenza di un sistema lineare
Dati una matrice qualsiasi

e due vettori

, il sistema lineare si dice consistente se


ammette soluzione. Le seguenti affermazioni sono equivalenti nellaffermare che un sistema consistente:
(,-) ()
()
Se nella forma di Echelon
,-
non appare mai una riga del tipo:
, - *+
Se non colonna di base della matrice completa ,-
Se combinazione lineare delle colonne di base di
Se combinazione lineare delle colonne di
,-

Metodi numerici per linformatica
2013/2014

18
Se il numero delle colonne di base di

uguale al numero delle colonne di base di


,-

Sottomatrice
Data una matrice

, se ne possono considerare delle sue porzioni. Per esempio, se scegliamo ad


arbitrio alcune righe e alcune colonne di i coefficienti che stanno nella intersezione di queste righe e
colonne formano quella che si chiama una sottomatrice di . La matrice naturalmente una
sottomatrice di se stessa; le sottomatrici diverse da sono dette sottomatrici proprie.
Tra le sottomatrici di una matrice quadrata risultano particolarmente utili e usate le sottomatrici
principali, che si ottengono scegliendo righe e colonne (la cui intersezione produce la sottomatrice) con
gli stessi indici. facile convincersi che in questo caso i coefficienti diagonali di una sottomatrice
principale sono coefficienti diagonali anche nella matrice originaria.
In certi casi si considerano solo le sottomatrici principali ottenute intersecando le prime righe e colonne,
dove varia da 1 allordine della matrice; esse vengono chiamate sottomatrici principali -esime.
Naturalmente la matrice sottomatrice principale -esima di se stessa.
Norme
Norma di vettore
Dato uno spazio vettoriale ( ), una applicazione chiamata norma, indicata usualmente con
, quando verifica le seguenti propriet:
1.
2.
3. ,
4.

(questa propriet detta disuguaglianza triangolare)


Il numero definisce una distanza tra i punti e .
Un esempio di norma in

fornito dalla cosiddetta norma , supponendo , nel modo seguente:


Per si ha la cosiddetta norma euclidea. In particolare, per vettori colonna

la norma
euclidea definita come:


La norma

reale anche nel caso di


Nel caso si ha la norma del massimo definita da:


Se la disuguaglianza triangolare diventa:
(


Osserviamo che una norma di vettore una funzione continua in

e che per ogni coppia di norme di


vettori, e

, esistono due costanti positive ed tali che:



In altre parole, in

, per fissato, le norme sono tra loro equivalenti.


Norma di matrice
Una matrice quadrata

pu essere considerata un vettore in uno spazio di dimensioni

. In
Metodi numerici per linformatica
2013/2014

19
particolare, date due matrici quadrate

, possiamo chiamare norma di una matrice,


unapplicazione , che verifica condizioni analoghe alle quattro condizioni date nella definizione
di norma di vettore, con laggiunta dellultima condizione 5.:
1.


2.


3.

,
4.

(anche in questo caso, questa propriet detta disuguaglianza


triangolare)
5.



Sia una forma fissata di vettore. Definiamo norma naturale (o norma indotta dalla norma di vettore)
dalla matrice la quantit:


Poich per ogni si pu definire

, sicch , la definizione precedente equivalente alla


seguente:


Per definizione se la matrice identit e una norma naturale, allora .
Osserviamo che, per una norma definita come

, si ha il seguente risultato:

In generale, quando una norma di matrice verifica la condizione precedente, si dice che essa consistente
(o compatibile) con la corrispondente norma di vettore. La norma naturale , in sostanza, la pi piccola
norma consistente per una assegnata norma di vettore.
Vediamo ora quali sono le norme naturali di matrice che corrispondono alle norme di vettore per
. Indichiamo con

, gli elementi della matrice :


Per
La norma di matrice indotta dalla norma del massimo ( ) la seguente:


cio la massima tra le somme dei moduli delle componenti sulle righe.
Per
Si dimostra che:


cio


Per
La norma 2, corrispondente alla norma euclidea di vettore, pu essere calcolata nel modo
seguente:

)
Una norma di matrice che non subordinata ad una norma di vettore la norma di Frobenius, definita
per una matrice

nel modo seguente:

)
La norma di Frobenius essenzialmente la norma euclidea della matrice considerata come un vettore di
componenti. interessante osservare che la norma di Frobenius compatibile con la norma euclidea
Metodi numerici per linformatica
2013/2014

20
di vettore. Si ha, infatti:


Prodotto scalare in uno spazio vettoriale
Dato uno spazio vettoriale ( ), definiamo prodotto scalare la funzione:

dotata delle seguenti propriet:


Diremo che

e viene detta norma indotta.



Dati due vettori

diversi da 0, possiamo calcolare langolo tra di essi:



Se prendiamo due vettori

dove [

] e [

], il loro prodotto vettoriale sar dato da:



mentre per il prodotto scalare abbiamo:


Disuguaglianza di CauchySchwarz
Dati due vettori

possiamo scrivere:

Luguaglianza vale se e solo se:


Limportanza della disuguaglianza di CauchySchwarz quella di aiutare a definire una geometria negli
spazi multidimensionali che sia consistente con gli spazi visuali di

ed

.
Spazio vettoriale
La tripla ( ) si dice spazio vettoriale su se la somma vettoriale e il prodotto vettoriale soddisfano le
seguenti propriet:
Per la somma :
o

(propriet di chiusura per la somma vettoriale)


o

( ) ( ) (propriet associativa)
o

(propriet commutativa)
Metodi numerici per linformatica
2013/2014

21
o

(esistenza dellelemento neutro)


o

() (esistenza dellelemento inverso)


Per il prodotto :
o (propriet di chiusura per il prodotto vettoriale)
o

() () (propriet associativa)
o ,

( ) (propriet distributiva a sinistra)


o

(esistenza dellelemento neutro)


o

( ) (propriet distributiva a destra)


La cardinalit di uno spazio vettoriale il numero di vettori che servono per generare tutto lo spazio
stesso. Viene detta anche dimensione dello spazio vettoriale.
Sottospazio vettoriale
Uno spazio si dice sottospazio vettoriale di uno spazio vettoriale , con , se soddisfa anche le sole
propriet di chiusura rispetto alla somma e al prodotto:

(propriet di chiusura per la somma vettoriale)


(propriet di chiusura per il prodotto vettoriale)
Potremo dire allora che , con ( ) ancora spazio vettoriale.
Tali propriet implicano che ogni sottospazio deve contenere almeno il vettore zero.
Spazio span
Per un insieme di vettori *

+, il sottospazio:
() {

}
generato da tutte le possibili combinazioni lineari dei vettori di viene chiamato spazio span di .
Esempi.
Il sottospazio di

linsieme di tutte e sole le rette passanti per lorigine. Oltre questo non ci
sono sottospazi in

. In altre parole ogni retta passante per lorigine del tipo *+ al variare
di

e in generale si scrive .
Le rette che non passano per lorigine non sono sottospazi perch un sottospazio deve contenere il
vettore nullo (ovvero lorigine del riferimento cartesiano). Nemmeno una curva passante per
lorigine pu essere considerata un sottospazio di

perch la propriet di chiusura per la somma


non pu essere soddisfatta, in quanto esistono punti sulla curva per cui la loro somma non pi
elemento della curva
I sottospazi di

sono formati sia dalle rette che dai piani passanti per lorigine. Prendendo tre
vettori qualsiasi

posso creare:
o *

+. Lo spazio generato dai tre vettori tutto

se e solo se abbiamo che


,

- , quindi massimo, si deduce che

sono linearmente
indipendenti. In altre parole

il sistema lineare consistente con


,

-.
Possiamo aggiungere ancora:
() *,

-+ *+ (,

-) (,

-)
o {

} con e . Prendiamo una generica componente {

}
come

. Scriviamo allora la combinazione lineare di :


[

()

()

()
1

()

()

()
1 [

()

()

()

()

()

()
]
Metodi numerici per linformatica
2013/2014

22
Essa rappresenta un piano passante per lorigine e

, se i due vettori sono


linearmente indipendenti. Questo significa che [

]
o *

+ con . Lo spazio generato da un unico vettore in

una retta passante


per lorigine e per il punto individuato dalle coordinate del vettore

. Le coordinate della
retta sono del tipo , con . Langolo formato dagli elementi che appartengono allo
spazio generato dal vettore

0 poich sono tutti vettori paralleli, a meno del coefficiente



Linee e superfici in

che hanno una curvatura non sono sottospazi di

.

Anche per lo spazio (), essendo un sottospazio di , vale la propriet di chiusura della somma
vettoriale:

()

()


Linsieme (

) dove

, genera lo spazio

- [

] [

] .
Linsieme (

) genera quando () .
Se ci troviamo nello spazio tridimensionale

il rank di una matrice

uguale a 3, perci lo spazio


generato ha dimensione 3.
Spazio Range
Linsieme di tutti i vettori che sono combinazioni lineari delle colonne di una matrice


chiamato spazio colonna, o spazio immagine di . Lo spazio immagine pu essere espresso nella
seguente forma:
() *


In altre parole, possiamo definire spazio Range di il sottospazio generato dalle colonne di o
analogamente il sottospazio generato dalle righe di

, quindi:
() *


oppure:
(

) {


Spazio nullo
Data una matrice

, si chiama insieme nullo linsieme () *

. In altre
parole () un sottospazio di

ed generato da tutte le soluzioni del sistema omogeneo .


Verifichiamo la chiusura di () rispetto alla somma e al prodotto:
Somma:

()


} ( )
Ammetter almeno la soluzione nulla
Prodotto:
()
Quando le colonne di una matrice sono linearmente indipendenti e il suo rank massimo, allora lo spazio
nullo ridotto al solo vettore nullo.
Base
Dato un sottospazio di

, vettori *

+, costituiscono una base di se ogni altro vettore


pu essere espresso solo come combinazione lineare dei vettori della base:
Metodi numerici per linformatica
2013/2014

23


Una base , quindi, un insieme di vettori linearmente indipendenti che genera tutto lo spazio .
Sia

sottospazio e *

+ . Le seguenti propriet sono equivalenti:


una base di ( *+)
linsieme minimo di vettori linearmente indipendenti che possono generare
il pi grande insieme di vettori linearmente indipendenti di
Una base di

particolarmente importante la base canonica, formata dai vettori:

, -


che sono le colonne della matrice identit di ordine e aventi 1 in -esima posizione.
Dimensione di un sottospazio
Tutte le basi di un sottospazio hanno lo stesso numero di elementi; tale numero, indicato con (),
detto dimensione del sottospazio ed esprime il numero di gradi di libert del sottospazio. Ad esempio, lo
spazio

ha dimensione e ogni insieme di vettori linearmente indipendenti di

costituisce una
base di questo sottospazio.
In un sottospazio di dimensione nessun insieme di pi di vettori pu essere linearmente indipendente
e nessun insieme di meno di vettori pu generare lo spazio.
Siano e due sottospazi di

. La somma:
* +
e lintersezione ancora uno sottospazio. Per la sua dimensione vale la seguente relazione:
( ) () () ()
Relazioni tra sottospazi-dimensioni-basi
Per una qualsiasi matrice

vale il seguente teorema:


() ()
Considerando la trasposta di vale che:
(

) (

)
Dalle precedenti uguaglianze deduciamo che:
()
()
(

)
(

)
Indipendenza lineare
I vettori *

, con si dicono linearmente indipendenti se dalla condizione:


segue che

, per . In caso contrario, i vettori assegnati si dicono linearmente dipendenti.


Quando i vettori

sono le colonne

di una matrice

, si deduce che la dipendenza lineare


delle colonne di equivalente alla condizione:
per un vettore
e che la indipendenza lineare delle colonne di equivalente alla condizione:

In altre parole, vettori linearmente indipendenti sono quelli che non contengono relazioni di dipendenza,
e vettori linearmente dipendenti sono quelli in cui almeno un vettore una combinazione lineare degli
altri. Accettiamo il fatto che linsieme vuoto sempre linearmente indipendente.

Data una matrice qualsiasi

, ognuna delle seguenti propriet equivalente allaltra


Metodi numerici per linformatica
2013/2014

24
nellaffermare la lineare indipendenza delle colonne della matrice :
Le colonne di (

) costituiscono un insieme di vettori linearmente indipendenti


() *+
() cio il numero delle colonne linearmente indipendenti di
Se invece ragioniamo in termini di righe della trasposta di potremo dire che le righe sono linearmente
indipendenti se:
Le righe di

) costituiscono un insieme di vettori linearmente indipendenti


(

) *+
(

) cio il numero delle colonne linearmente indipendenti di

(righe di )
Quando trattiamo una matrice quadrata

, abbiamo una ulteriore propriet che afferma che


formata da colonne tutte linearmente indipendenti se invertibile, quindi se ha () . In questo caso
il () (

).
Matrice di Vandermonde
La matrice di Vandermonde una matrice

della forma:

(

,

dove

con . Se , le colonne di sono vettori linearmente indipendenti


Alla matrice precedente possiamo associare un polinomio del tipo:

()


che ha grado minore o al pi uguale di e radici distinte.
Il sistema associato quindi possiamo scriverlo come:

con [

].
Si dimostra che ()

con .
Ortogonalit
Due vettori

si diranno perpendicolari e si scrive se


Se due vettori sono ortogonali significa che formano un angolo di 90, cio

.
Legge del coseno
La legge del coseno una generalizzazione del teorema di Pitagora, perch applicabile a tutti i triangoli,
non solo a quelli rettangoli.
Metodi numerici per linformatica
2013/2014

25

Figura 2 - Legge del coseno considerando le norme dei lati di un triangolo rettangolo

Dati due vettori e , la legge del coseno afferma che:

( )

( )



Il teorema di Pitagora pu essere riscritto nel seguente modo:


ma poich nel caso di triangolo rettangolo

, allora avremo soltanto:



Dimostrazione di ortogonalit in

.
Supponiamo che e siano due vettori ortogonali (perpendicolari) in

( )

( )

)( )



Quindi i due vettori sono ortogonali in

se e solo se

, quindi se e solo se il prodotto scalare tra i


due vettori 0, cio .
Correlazione lineare e standardizzazione
Supponiamo di condurre un esperimento e di registrare le osservazioni risultanti in due vettori di dati.
[

] e [

]
e poniamo un vettore [

]. Determiniamo in quale misura le componenti di sono correlate con quelle


di , cio se

. Per far questo calcoliamo la media

e la deviazione standard

dei
dati in . Abbiamo che:


La media una misura di tendenza centrale e la deviazione standard un indice di dispersione delle
misure sperimentali, vale a dire una stima della variabilit di una popolazione di dati o di una variabile
Metodi numerici per linformatica
2013/2014

26
casuale. Spesso, i dati grezzi provenienti da fonti diverse sono difficili da confrontare perch le unit di
misura sono diverse, ad esempio, un ricercatore pu utilizzare il sistema metrico decimale, mentre un
altro usa unit americane. Per compensare, i dati sono quasi sempre prima "standardizzati" in quantit
adimensionali.

Il teorema centrale del limite afferma che la media e la deviazione standard di un grande numero di
variabili aleatorie indipendenti e dotate della stessa distribuzione approssimativamente normale (
e ), indipendentemente dalla distribuzione soggiacente. Questo significa che la distribuzione di
alcune statistiche, ad esempio la media, diventa nota, anche se non sappiamo niente a proposito della
forma di distribuzione della popolazione da cui i campioni sono stati tratti.
La standardizzazione di un vettore per il quale

definita come:


Le componenti di

sono dette -score, aventi per definizione e .


Presi due vettori qualsiasi e standardizzati rispettivamente in

tali che

,
possiamo scrivere che:

con

con


In altre parole

per alcune costanti

se e solo se

, in tal caso diremo che i due


vettori di partenza e sono perfettamente correlati linearmente.
Dato che

varia in relazione ad , lesistenza di una relazione quasi lineare tra e equivalente a


quella che in un certo senso potrebbe esserci tra

. Il fatto che

significa che

differiscono solo per lorientamento, cos una misura di quanto sono vicini i due vettori
standardizzati il dove langolo tra

.
Chiameremo coefficiente di correlazione lineare il :


Valgono le seguenti propriet:

se e solo se e sono ortogonali (perpendicolari), in tal caso i due vettori sono


completamente non correlati
|

| se e solo se perfettamente correlato ad , cio se e solo se esiste una relazione lineare


che:
o quando

allora potremo dire che correlato positivamente con (

)
o quando

diremo che correlato negativamente con (

)


Figura 3 - Coefficienti lineari al variare della disposizione dei dati
Ortonormalit di vettori
Metodi numerici per linformatica
2013/2014

27
Due vettori

si dicono ortogonali se

.
Linsieme *

+ composto da vettori ortonormali se e solo se presi a 2 a 2 sono


ortogonali e hanno norma unitaria:

{



Propriet:
vettori ortonormali sono linearmente indipendenti
Ogni insieme ortonormale di vettori di uno spazio -dimensionale costituisce una base per
Ortonormalit di matrici
Data una matrice invertibile

, si dice ortonormale se:


Ovvero la sua trasposta coincide con la sua inversa.
Metodo di ortonormalizzazione di Gram-Schmidt
Siano *

vettori ortonormali che per definizione equivale a scrivere:

{



Costruiamo ora una matrice le cui colonne

sono i vettori ortonormali presi in


considerazione e sappiamo che:


costituisce il vettore proiezione di

su

.
Il metodo di Gram-Schmidt costruisce vettori

ortonormali.
Passo 1
o Poniamo


Passo 2
o

infatti


Passo 3
o


<
-esimo passo
o


Si prova che


In sintesi, partendo da una matrice di partenza ,

-, calcoliamo una matrice


ortonormalizzata di nome ,

-, tralasciando una quantit che chiamiamo .


Allora .
Fattorizzazione QR
Metodi numerici per linformatica
2013/2014

28
Data una matrice quadrata

possiamo sempre trovare una fattorizzazione tale che , dove


ed hanno le stesse dimensioni di , ammette inversa (

) ed triangolare superiore del tipo:


(

,
In generale per una matrice qualsiasi

potremo sempre trovare una decomposizione ma in


questo caso

avr le stesse dimensioni di .


Se


,
Se


Un elemento qualsiasi di fattorizzata con questo metodo, nel caso che , possibile
scriverlo nel seguente modo:


Autovalori e autovettori
Data un matrice quadrata

, viene detto autovalore di uno scalare per il quale, il seguente


sistema omogeneo:

ammette soluzioni . Tali soluzioni sono dette autovettori di , corrispondenti allautovalore . In
sostanza, un vettore non nullo un autovettore quando nella trasformazione lineare esso viene
trasformato in un multiplo di . Ogni coppia del tipo ( ) chiamata autocoppia di .
Linsieme degli autovalori distinti, denotato con (), chiamato spettro di . Tipicamente la cardinalit
dello spettro minore o uguale al grado del polinomio.
possibile definire anche un raggio spettrale definito dalla quantit:
()

()


Il calcolo degli autovalori un problema di tipo non lineare, in quanto esso equivale al ricercare le radici
della seguente equazione algebrica in , detta equazione caratteristica:
( )
Le soluzioni (o radici) del polinomio caratteristico che effettivamente andremo a calcolare, rappresentano
gli autovalori .
() singolare ( )
Linsieme * ( )+ contiene tutti gli autovettori associati a . Chiameremo (
) autospazio di
Dal punto di vista geometrico, lequazione afferma che sotto trasformazione di , gli autovettori
apportano solo un cambiamento in lunghezza o segno (lorientamento di in

lo stesso di ).
Lautovalore semplicemente la quantit di allungamento o accorciamento alla quale lautovettore
soggetto quando trasformato da .

Metodi numerici per linformatica
2013/2014

29

Figura 4 - Autovettore sotto trasformazione di una matrice

Sotto elenchiamo alcune propriet generali valide per il polinomio caratteristico:
Il polinomio caratteristico di

() ( ). Il grado di () e il coefficiente di
grado massimo nel polinomio ()


Lequazione caratteristica di ()
Gli autovalori di sono le soluzioni dellequazione caratteristica o, equivalentemente, le radici del
polinomio caratteristico ()
In generale ha autovalori, ma a volte possono essere numeri complessi (anche se le
componenti di sono numeri reali), e alcuni autovalori possono essere ripetuti
Se contiene solo numeri reali, allora i suoi autovalori complessi devono apparire in coppie
coniugate, cio se () allora

()

Un importante risultato si raggiunge considerando linsieme di autovalori distinti *

+ di una
matrice . Se *(

) (

) (

)+ linsieme delle autocoppie per , allora linsieme *

+
linearmente indipendente.

Conoscendo gli autovalori di una matrice quadrata

possiamo calcolare il suo determinante


come:
()

()

e il suo trace come:
()

()

Nota. Non posso calcolare gli autovalori di una matrice rettangolare

, ma al massimo posso
considerare la matrice

che sar sicuramente quadrata.


Autocoppie per potenze di matrici
Se consideriamo unautocoppia ( ) di una matrice quadrata

, allora possiamo dire che (

)
unautocoppia della potenza -esima di ,

. Anche per una matrice potenza possiamo considerare il suo


sistema associato. Se prendiamo un autovettore possiamo scrivere allora:

) (


Molteplicit algebrica e geometrica di un autovalore
Per molteplicit algebrica di un autovalore, si intende il numero di volte in cui quellautovalore
Metodi numerici per linformatica
2013/2014

30
compare come radice del polinomio caratteristico () . Si indica con

().
Quando

() , detto autovalore semplice.



La molteplicit geometrica di un autovalore la dimensione dellautospazio associato a . In altre
parole la molteplicit geometrica il numero massimo di autovettori linearmente indipendenti associati a
.
Si indica con

() e sar quindi uguale a:

() (( ))
Quando gli autovalori hanno stesse molteplicit algebriche e geometriche, cio

()

(),
sono chiamati autovalori semisemplici di . Possiamo dire che un autovalore semplice sempre
semisemplice, ma non viceversa.
In generale per una matrice

e per ogni (), vale la seguente disuguaglianza:

()

()
Similarit
Date due matrici quadrate

, si dicono simili, per definizione, se

invertibile (non
singolare con () )

. Il prodotto

detto trasformazione di similarit su .


Propriet di due matrici simili:
Due matrici simili hanno gli stessi autovalori con le stesse molteplicit algebriche e le stesse
molteplicit geometriche. Formalmente:

sono simili () ()
Se due matrici sono simili, hanno lo stesso trace e lo stesso determinante. Dimostriamo
luguaglianza del determinante. Sia () ( ) :
( ) (

) ,( )

( )

( )
Per cui le due matrici hanno lo stesso polinomio caratteristico e quindi hanno gli stessi autovalori
con le stesse molteplicit algebriche. Se autovettore di corrispondente allautovalore ,
risulta:


Perci il vettore

autovettore di corrispondente a .

Le riduzioni di riga non conservano gli autovalori. Tuttavia, matrici simili hanno lo stesso polinomio
caratteristico, quindi hanno gli stessi autovalori con le stesse molteplicit. Attenzione! Matrici simili non
hanno gli stessi autovettori.
Matrice diagonalizzabile
Data una matrice quadrata

con autovalori tutti distinti

, possiamo dire che


diagonalizzabile se e solo se simile ad una matrice diagonale. In questo caso gli autovalori della
matrice sono tutti linearmente indipendenti. Viceversa se tutti gli autovalori di sono distinti la matrice
diagonalizzabile.
Formalmente possiamo scrivere:
si dice diagonalizzabile

invertibile

,
Le colonne della matrice costituiscono un insieme completo di autovettori linearmente indipendenti
associati ai

di , cio ogni coppia (

) autocoppia di .
Metodi numerici per linformatica
2013/2014

31
Se una matrice non ha tutti gli autovalori distinti, pu non essere diagonalizzabile e questo accade se per
almeno un autovalore di la molteplicit geometrica minore della corrispondente molteplicit
algebrica.

Si noti che una matrice simmetrica diagonalizzabile.
Metodo delle potenze
Il metodo delle potenze permette di ottenere una stima dellautovalore dominante di una matrice e
dellautovettore ad esso associato.
Si consideri una matrice quadrata

con autovalori

. Lautovalore

si dice autovalore
dominante se e solo se il suo modulo pi grande del modulo dei restanti autovalori:


Si supponga, per semplicit, che ammetta autovettori linearmente indipendenti che quindi
formeranno una base di

.
Denotiamo con

gli autovettori di associati agli autovalori

. Possiamo scrivere
allora:


Consideriamo ora un vettore iniziale

scelto arbitrariamente in

e rappresentiamolo lungo la base


degli autovettori


Lunico vincolo che imporremo su

che non sia ortogonale ad

, cio

.
A partire dal vettore iniziale

, generiamo la successione:


Si ottiene facilmente che:

]


Considerando la componente di indice , componente di massimo modulo di

, segue che:

( )

( )

+

Per molto grande:


cio

si allinea allautovettore dominante

.
La successione degli scalari

()

()
generata dal metodo delle potenze converge allautovalore dominante

, cio:
Metodi numerici per linformatica
2013/2014

32

( )

( )



La velocit di convergenza dipende dal rapporto |

|: tanto pi piccolo, tanto pi rapidamente converge.


Quando

la convergenza pu risultare eccessivamente lenta. In questa situazione il metodo


viene usato per ottenere solo una stima iniziale da migliorare successivamente con un metodo pi veloce,
ad esempio il metodo delle potenze inverse.
Assegnata una approssimazione () di un autovalore (), lalgoritmo del metodo delle potenze
inverse permette di calcolare una autocoppia ( ) di una matrice diagonalizzabile

, applicando
il metodo delle potenze alla matrice ( )

.
Se

() allora ( )

lautovalore dominante di , infatti:



Il metodo delle potenze inverse :
( )


dove


con

scalare tale che

.

Se

reale e ha molteplicit la convergenza molto lenta.


Andando a costruire una successione normalizzata in norma infinito, per , questa si va ad allineare
allautovettore normalizzato nella stessa norma, cio:
{


Successione dei coefficienti di Rayleigh
La successione di Rayleigh una successione numerica computazionalmente pi stabile rispetto alla
successione dei rapporti tra due componenti fissate di due vettori successivi

. Serve ad approssimare
lautovalore dominante.
Il quoziente di Rayleigh di un autovettore lautovalore associato.
Data una matrice

e un autovettore , il quoziente di Rayleigh associato equivale a:


In altre parole la proiezione del vettore

sulla retta di azione del vettore

, normalizzata rispetto alla


norma del vettore

, tende a

.
Autovalori della matrice inversa
Si pu dimostrare che, data una matrice quadrata

invertibile con autocoppie ( ) e i cui


autovalori sono tutti diversi da zero, le autocoppie della matrice inversa

sono del tipo:


(

*
Se gli autovalori sono in relazione dordine del tipo

, posso determinare gli


autovalori della matrice inversa

come:
|

| |

| |

|
Anche in questo caso posso applicare il metodo delle potenze per approssimare lautovalore dominante
che risulta per essere lautovalore pi piccolo (perch reciproco) della matrice di partenza .

Per la matrice inversa

possiamo scrivere la seguente equazione per il sistema omogeneo associato:


Metodi numerici per linformatica
2013/2014

33


Applicazione del metodo delle potenze per approssimare un autovalore e un
autovettore generico
Data una matrice

con autovalori

(), ipotizziamo di avere a disposizione un numero


(), con che una approssimazione di un autovalore di ( ).
Considero una matrice , allora possiamo scrivere per definizione che

:
( ) ( )
Posso anche scrivere:
( ) ( )
La nuova quantit ( ) rappresenta lautovalore della matrice .
La matrice inversa ( )

avr autovalore approssimato:



Se non ho informazioni a priori sullesistenza dellautovalore dominante, posso effettuare il cosiddetto
shift, cio posso sottrarre ad ogni autovalore dello spetto della matrice un certo numero fissato , per
avere la possibilit di riordinare gli autovalori e determinarne in questo modo il dominante (o il pi
piccolo).

Per verificare che il metodo delle potenze converge, calcolo lo scarto tra due iterate successive. Se questa
differenza pi piccola di una certa tolleranza prefissata , allora sto convergendo:

( )

( )
Teorema di Schur
Data una matrice

con autovalori

(), la matrice simile ad una matrice triangolare


superiore a blocchi in cui gli elementi diagonali convergono verso gli autovalori di , cio

. Cio
invertibile

dove

, cio ogni elemento diagonale in approssima gli autovalori


della matrice .
Il teorema di Schur mi dice anche che ortonormale

.
Metodo QR per il calcolo degli autovalori e autovettori dominanti
Data una matrice

, si costruisce una successione di matrici *

+ simili a quelle di partenza, di cui


voglio approssimare gli autovalori, che convergeranno ad una triangolare superiore, sotto opportune
ipotesi, mediante trasformazioni ortonormali.
1 passo: pongo

e costruisco la fattorizzazione di

, cio decompongo

dove

ortonormale e

triangolare superiore.

tale che

.
Costruisco ora la matrice successiva nella successione,

come scambio dei fattori di

, cio:


A questo punto verifico se

effettivamente simile ad

, cio se hanno lo stesso spettro


(

) (

):


Combinando la relazione

con il risultato appena ottenuto posso scrivere:


Ho appena dimostrato che la matrice

simile alla matrice

, che a sua volta, proprio uguale


ad per ipotesi
2 passo: calcolo la fattorizzazione

. Costruisco come prima la matrice successiva nella


Metodi numerici per linformatica
2013/2014

34
successione, cio

come scambio dei fattori di


Similmente a quanto fatto per il passo precedente avremo quindi che:


e combinando i due risultati appena ottenuti avr:


<
-esimo passo: avr costruito la matrice

simile ad , fatta nel seguente modo:


dove



Un corollario del teorema di Schur afferma che quanto detto nel campo complesso, vale anche per il reale.
Teorema di convergenza del metodo QR
Data una matrice

, sotto opportune ipotesi si dimostra che la successione delle matrici *

+
converge verso una matrice triangolare superiore a blocchi, nella quale gli elementi diagonali


convergono verso gli autovalori

, con

().
Di conseguenza il prodotto

mentre

. Per un si
dimostra che sar formata da colonne che sono esattamente gli autovettori di .
Per fermare il processo di fattorizzazione devo verificare che la differenza tra un elemento diagonale e
quello sotto tende a 0 o comunque rimane sotto una certa soglia , cio:
|

|
Decomposizioni a blocchi
Unaltra maniera di considerare porzioni di matrici quella di decomporre a blocchi una matrice;
questa operazione si esegue tracciando delle righe orizzontali e verticali che tagliano la matrice in
sottomatrici, ciascuna delle quali formata dalla intersezione di righe e colonne consecutive ed chiamata
blocco. Si ottengono cos delle righe e delle colonne di blocchi, e si parla di dimensioni a blocchi della
matrice.
SVD (Decomposizione a valori singolari)
Sia data una matrice rettangolare

, con () ( ). La decomposizione (spettrale)


a valori singolari impone la costruzione di tre matrici , e , tali che:

ortonormale, cio vale la seguente uguaglianza:

ortonormale, quindi vale che

matrice triangolare a blocchi fatta nel seguente modo:


0


1
dove

diagonale del tipo:




con


in modo tale che la matrice di partenza si possa riscrivere come:


Metodi numerici per linformatica
2013/2014

35
Si chiameranno vettori singolari sinistri le colonne

della matrice ,

-, vettori singolari
destri le colonne

della matrice ,

- e valori singolari di i numeri

(saranno sempre reali


anche se parto da una matrice complessa. Questo perch non posso stabilire una relazione dordine tra
numeri complessi).
Posso scrivere che:


In particolare, considerando il prodotto

, sto moltiplicando le righe di

con i valori diagonali di ,


ottenendo la matrice seguente:

-
Questa decomposizione mi restituisce matrici, ognuna con , tante quanti sono i valori singolari
diversi da 0.

Per definizione di prodotto righe-colonne, le colonne di sono combinazioni lineari delle prime colonne
di attraverso le generiche colonne della matrice di destra. costituisce una base dello spazio colonne
perch ha colonne tutte ortonormali (per definizione).

Anche per la matrice trasposta

possiamo determinarne la sua decomposizione a valori singolari:


Lo spazio generato dalle colonne di

lo spazio generato dalle colonne di , o anche lo spazio generato


dalle righe di . costituisce quindi una base dello spazio righe di .
Propriet sulla decomposizione SVD
Sia data una matrice rettangolare

, con () ( ), la sua decomposizione in valori


singolari

dove ,

-, ,

- e .


/.
Valgono le seguenti propriet:
1. () *

+ *

+
Dimostrazione.
Prendo un ()


/ ,

-
Osserviamo che ,

- posso riscriverla come matrice a blocchi


dove

- e

-, quindi continuo a scrivere:


.


/ ,

- .


/ *

+
Questa propriet ci dice che ortogonale alle prime colonne di . Poich unitaria allora
deve essere generato come combinazione lineare delle restanti colonne di
2. () *

+ *

+.
Dimostrazione.
Ricordando che () *

+, prendo un (), che posso


scrivere come

.
Osserviamo che ,

- posso riscriverla come matrice a blocchi

dove

- e

-, quindi continuo a scrivere:


Metodi numerici per linformatica
2013/2014

36

- .


/ *

+
3. (

) *

+ dove


4. (

) *

+
5. ()
6. I

sono gli autovalori di (

con autovettori *


Premettendo che

perch diagonali quindi simmetriche, osserviamo che il prodotto

sar
della forma:

* .


/ (


* .


/ (



Per il teorema di Schur, possiamo affermare quindi che la matrice

simile alla matrice

, attraverso la trasformazione unitaria .


Da quello appena affermato, diciamo che gli autovalori non nulli di

sono i quadrati dei valori


singolari di , mentre gli autovettori di

sono ,

-
7. I

sono gli autovalori di (

con autovettori *


Allo stesso modo di prima, applicando Schur possiamo dire che la matrice

simile alla
matrice

, attraverso una trasformazione unitaria .


Le colonne di sono gli autovettori di


8.


9. La norma-2 della matrice rettangolare, decomposta in SVD, uguale a:


dove (

) il raggio spettrale della matrice quadrata

. In generale:
()

()


Data una matrice quadrata

, posso calcolarne la norma-2, che non sar la norma euclidea


perch non stiamo nello spazio vettoriale

. Mi ci troverei se vettorizzassi la matrice, creando


ununica colonna con tutte le colonne della matrice stessa. Sarebbe in questo caso la norma di
Frobenius (vedi punto 8.)
Teorema di Eckart-Young (SVD troncata)
Sia data una matrice

con () , posso decomporre la matrice in SVD:



Ipotizziamo di non volere lintero potere informativo tirato fuori dalla decomposizione, ma di essere
soddisfatti da una sua buona approssimazione.
Prendiamo per questo un numero e mi chiedo quale potrebbe essere la migliore approssimazione
con () . Scegliamo allora una matrice

, quindi delle stesse dimensioni di partenza, con


Metodi numerici per linformatica
2013/2014

37
() tale che le differenze

siano le pi piccole possibili.


Il teorema mi dice che anche con posso decomporre la matrice di partenza in SVD:


Si dimostra che, equivalentemente per la norma-2 o la norma di Frobenius:

()

La migliore approssimazione di una matrice con rank fissato la SVD troncata (posso utilizzare il
metodo delle potenze).
Chiaramente con questo metodo stiamo buttando via una parte del potere informativo di , costituita
dallinformazione associata agli autovalori troncati. Per quantificare questo scarto calcoliamo:



In norma di Frobenius abbiamo:


SVD per il filtraggio dei dati
La SVD pu essere utilizzata nelle applicazioni per effettuare un ordinamento di dati rumorosi ed estrarre
informazioni rilevanti.
Sia data una matrice

con () di dati reali. In quanto tale stata costruita registrando


dati probabilmente perturbati da una certa quantit di rumore bianco (cio sparso uniformemente e
casualmente in tutti i dati).
Costruisco la SVD con rank massimo della matrice :


Chiamo

di dimensioni . Posso allora scrivere che stata decomposta come:



con (

) . Le

sono le approssimazioni migliori a rank 1 di .


Le matrici *

+ costituiscono un insieme di matrici ortonormali rispetto al seguente prodotto


scalare

) {


.

) ((

) (

)
Si prova che:

) (

)
I valori singolari li posso reinterpretare come la proiezione della matrice dei dati su una delle basi

,
quindi mi dicono quanto grande la proiezione sugli assi cartesiani. Ciascuna matrice

rappresenta un
asse nel mio riferimento di assi cartesiani su cui proietto i

, quindi i valori singolari mi dicono quanto


grande la proiezione delle informazioni direzionali della matrice sugli assi.
Metodi numerici per linformatica
2013/2014

38
SNR (rapporto segnale/rumore)
Vale la seguente disuguaglianza:
(

) (

) (

)
poich moltiplico le

per i valori singolari

che hanno peso decrescente perch ordinati dal pi grande


al pi piccolo. In altre parole la quantit di segnale presente nella prima componente sar maggiore di
quella contenuta nella seconda, che a sua volta sar maggiore di quella contenuta nella terza componente,
e cos via.
Per diminuire il rumore allinterno della matrice dei dati, il teorema di Eckart-Young mi permette di
tagliare alle prime componenti utili, approssimando con

.
Eliminando alcuni termini, sebbene perdiamo una piccola parte del segnale complessivo, rimuoviamo
unampia parte delle componenti del rumore totale in .
Per determinare il migliore valore di , di solito si applicano delle procedure empiriche che variano da
applicazione ad applicazione. Un meccanismo iniziale per scegliere potrebbe essere basato
sullosservazione del gap tra il pi grande e il pi piccolo valore singolare.
Non riuscir ad eliminare del tutto il rumore che affligge i miei dati, poich adimensionale e non
conosco a priori la sua natura. Inoltre, come detto, uniformemente distribuito nella matrice delle
informazioni .
In molti casi la T-SVD permette di filtrare il rumore in senza una perdita significativa di informazione.
Interpretazione geometrica della SVD
Sia data una matrice

e prendiamo un vettore

sulla sfera euclidea che avr per definizione

. Cerchiamo di capire che tipo di deformazione apporta una decomposizione SVD sulla sfera
unitaria.
Supponiamo che sia invertibile con () , quindi massimo, e calcoliamo la SVD di :


dove

e (

.
Per quanto riguarda linversa della matrice

(esiste poich non singolare dal momento che


invertibile con () e ricordando che linversa di una matrice ortonormale la matrice stessa),
abbiamo che la sua SVD sar uguale a:


dove:



Prendo un vettore sulla sfera euclidea:



Lultimo passaggio si spiega col fatto che le trasformazioni ortogonali mantengono invariata la norma
Metodi numerici per linformatica
2013/2014

39
euclidea
3
.
Posto

, posso continuare a scrivere:


Osservando che il vettore

sar del tipo:


]
[


allora la norma

sar uguale a:


Ho ottenuto lequazione di un ellissoide in

.
I valori singolari

di una matrice forniscono informazioni sulla quantit di distorsione che si ha


utilizzando la trasformazione lineare definita da . Possiamo vedere ci analizzando come distorce una
sfera.
Sia

una matrice non singolare e sia

+ la sfera di raggio unitario in

. La natura
dellimmagine (

) si pu ottenere considerando la SVD di :



Possiamo affermare che

) lellissoide il cui -esimo semiasse ha lunghezza

. Poich

una
matrice ortogonale (quindi conserva la lunghezza), influisce solo sullorientazione di (

). Segue che
(

) un ellissoide il cui -esimo semiasse

.
Il grado di distorsione di una sfera unitaria sotto la trasformazione lineare misurato da:


che rappresenta il rapporto tra il pi grande valore singolare e quello pi piccolo.

La geometria della SVD quindi mi dice che, prendendo una matrice di dati, possiamo riguardare questi
dati andando a posizionarci in un sistema di riferimento cartesiano tale da poterli guardare nella
direzione massima entro cui questi dati si dispongono. Questa particolare direzione verr chiamata
direzione di massima varianza dei dati.

Richiami su alcuni concetti di analisi matematica
Funzione univariata
Sia una funzione univariata, posso dire che:
continua se il suo grafico non ha salti (per ogni punto esiste il suo limite sinistro e limite
destro)
derivabile se per ogni punto esiste il limite del rapporto incrementale destro e sinistro (non
deve avere cuspidi o comportamenti asintotici). Inoltre, devo poter calcolare la retta tangente in
ogni punto alla funzione
Gli zeri di sono quelle in cui il grafico di interseca lascissa, cio quando
()

Un minimo di definito come:

)

()
, mentre un massimo di definito

3
Sia

un vettore e

ortogonale tale che

. Allora:


Metodi numerici per linformatica
2013/2014

40
come:

)

()
,
I punti di minimo e di massimo si determinano calcolando la derivata prima di e ponendola
uguale a 0, cio:

()

La concavit del grafico si determina studiando il segno della derivata seconda di , cio:

()

che sar maggiore di zero se la funzione presenta una concavit verso lalto, minore di zero
altrimenti
Funzione multivariata
Sia

una funzione multivariata, che prende un vettore

e restituisce un numero
()
.
Il grafico di questa funzione multivariata contenuto in un iperspazio di dimensioni e sar una
superficie -dimensionale.
Preso un punto su questa superficie -dimensionale, posso definire il suo spostamento nelle varie
direzioni calcolando le derivate prime rispetto ad ogni variabile della funzione.
Partendo da definita come:

,

determino il movimento lungo un asse

, calcolando, come detto, la derivata parziale prima lungo


quellasse, tenendo fisse le altre derivate parziali prime lungo gli altri assi. Sto costruisco il cosiddetto
vettore gradiente formato dalle derivate parziali prime di ogni componente

della funzione :

()


perci
Lequazione che mi permette di determinare i punti di minimo e massimo :

()

Una volta risolta, ottengo delle soluzioni in che, per, non mi dicono quali sono minimi e quali sono
massimi. A questo ci pensa la derivata parziale prima di ogni elemento del gradiente.
Quindi possiamo immaginare di definire una funzione di derivata parziale prima come:


per poi applicare questa funzione agli elementi di
()
, ottenendo quindi:


che la derivata parziale seconda della funzione rispetto a

.
Si tenga presente che, in generale, vale la seguente propriet:


cio lordine di derivazione parziale ininfluente.
Poich otterr derivate parziali prime da ogni derivata parziale prima contenuta nel gradiente
()

(facendo di nuovo variare tutte le

), alla fine avr una matrice di derivate parziali seconde, che


chiamo matrice Hessiana, cos fatta:
Metodi numerici per linformatica
2013/2014

41

()


Per la propriet vista prima possiamo dire che lHessiano simmetrico rispetto alla diagonale principale
ed definito positivo.
Per determinare la concavit impongo che:

()

Funzione vettoriale
Sia

una funzione vettoriale in cui dato un generico vettore

possiamo calcolare la sua

()

. La funzione sar formata nel seguente modo:


[

]
dove ogni

, perci il valore che la funzione assume in un vettore sar del tipo:

()

()

()

()]


Inoltre per ogni

possiamo definire le derivate parziali cio:


e di conseguenza il gradiente delle


La matrice Jacobiana della funzione di partenza

la matrice cos fatta:

()
0

()

()

()

1
(

()

()

()

()

()

()

()

()

()


Polinomio di Taylor
Per una funzione scalare
Sia una funzione scalare sufficientemente regolare
4
. Preso un

, per ogni in un intorno di

posso scrivere il polinomio di Taylor di secondo grado come:



4
cio continua con derivate continue di un ordine sufficientemente alto.
Metodi numerici per linformatica
2013/2014

42

()

(

)
(

()
(


dove il punto interno allintervallo definito dai punti e

.
Per una funzione vettoriale


Considero ora una funzione

sufficientemente regolare; preso un

, per ogni in un
intorno di

posso scrivere il polinomio di Taylor come:

()

(

()
(

) (

)
dove il punto in un intorno di

.
Per una funzione vettoriale


Infine, se avessi una funzione vettoriale definita come

sufficientemente regolare, preso


sempre un elemento

, per ogni nellintorno di

potrei scrivere il polinomio di Taylor come:

()

(

)
(

) (

)
dove (

) sono gli ordini superiori del polinomio.


Metodo delle bisezioni
Ci poniamo il problema di calcolare gli zeri di una certa funzione scalare , cio trovare quegli
tali che
()
, con punti di intersezione del grafico della funzione con lasse ( ).
Teorema degli zeri.
Data una funzione continua , - e
()

()
allora - ,
()

Metodo delle tangenti di Newton-Raphson
Per le funzioni scalari
Sia una funzione scalare. Preso un

in un intorno di costruisco il polinomio di Taylor:

()

(

)
(

) ((

)
dove
(

)
(

) la retta tangente al grafico di


()
nel punto (

)
) e (

)
rappresenta gli ordini superiori del polinomio.

Figura 5 - Metodo delle tangenti di Newton

Approssimiamo il polinomio di Taylor al primo ordine e poniamolo uguale a 0:

()

(

)
(

)
In generale, la formula della retta tangente del tipo:

)
Metodi numerici per linformatica
2013/2014

43
ipotizzando che passi per il punto di coordinate (

)
). Il coefficiente angolare

)
, poich
trattasi di retta tangente, di conseguenza lequazione generale scritta prima diventa:

(

)
(

) ,

(

)
(

)


(

)
(

)

(

)

tenendo strettamente presente

)
.
Iterando il procedimento, il generico ( )-esimo punto di approssimazione lo ottengo dal precedente
-esimo, fino a giungere ad una buona approssimazione di :

)

Per le funzioni vettoriali
Sia

una funzione vettoriale sufficientemente regolare. Preso un generico vettore

,
posso scrivere il polinomio di Taylor per lapprossimazione della funzione
()
in un certo punto, in
questo modo:

()

(

)
(

) (

)
dove
(

)
(

) un iperpiano passante per il punto (

)
) e tangente alla superficie
generata dal grafico di
()
e (

) sono gli ordini superiori.


Procedendo come abbiamo fatto per le funzioni scalari, considero il polinomio di Taylor approssimato al
primo ordine, e lo pongo uguale a 0:

()

(

)
(

)
(

)
(

)

.
(


La nuova approssimazione del metodo di Newton-Raphson sar del tipo:


con soluzione del precedente sistema lineare

)
(

)
(

)
.

Nel caso in cui ho una funzione che lavora nello stesso spazio, cio

e lo Jacobiano ha rank
massimo con colonne linearmente indipendenti, posso scrivere la soluzione del sistema come:

)

A questo punto per calcolare il passo ( )-esimo del metodo di Newton-Raphson posso scrivere:

)

Definizione di derivata prima

()

()

()


oppure si pu anche scrivere come:

()

()


Metodi di ottimizzazione non vincolata
Per una funzione scalare
Sia una funzione obiettivo sufficientemente regolare. Vogliamo conoscere il

()
.
Teorema.
Affinch un elemento

sia un punto di minimo di


()
, devono essere soddisfatte contemporaneamente
Metodi numerici per linformatica
2013/2014

44
le seguenti condizioni:
,

)


La ricerca del punto di minimo quindi non coinvolge pi la funzione di partenza
()
ma le sue derivate

()
e

()
. Chiamo con la funzione derivata prima di
()
e applico il metodo di Newton-Raphson
costruendo, a partire da un punto

sufficientemente vicino alla radice di (


()
), la successione di
approssimazioni:

)

con

)
.
Tornando alla funzione
()
, possiamo scrivere che:

)

con

)
.
Per una funzione vettoriale
Sia

una funzione. Il problema del minimo di traduce nel trovare:

()

Se

il problema della ricerca del minimo sar non vincolato, invece se

sar vincolato.
Le condizioni che ci assicurano lesistenza del punto di minimo sono:

si dice di minimo assoluto o globale di se


(

)

()

si dice di minimo relativo o locale di se

)

()


Teorema.
Il punto

, interno a , punto di minimo relativo per una funzione

se risulta che:
1.
(

)

2.

)
definito positivo (

)
. Essendo la matrice Hessiana simmetrica
significa che lo spettro .

)
/

, cio tutti gli autovalori devono essere strettamente


positivi)
Curve di livello
Se ho una funzione
()
e prendo un qualsiasi punto di coordinate (

), calcolando il valore di


in quel punto, ho definito un piano che taglia il paraboloide in tanti cerchi concentrici, parallelo al piano
di coordinate .
Metodo di Newton per lottimizzazione vincolata
Sia

una funzione vettoriale. Partiamo dal polinomio di Taylor della funzione, ipotizzando
di considerare un punto

iniziale e decidendo di muoverci nel suo intorno:

()

(

)
(

) (

)
Per lo scopo dellottimizzazione, considero il polinomio di Taylor scritto sopra, arrestato al secondo
ordine:

()

(

)
(

)
e supponiamo che
()
abbia un punto di minimo in

. Allora il gradiente del polinomio arrestato al


secondo odine deve essere posto uguale a zero, cio:
Metodi numerici per linformatica
2013/2014

45

)

Possiamo scrivere allora che:

) .
()

()
/
(

)
()

Per risolvere questa equazione ragioniamo in generale. Consideriamo:

. Poniamo e
riscriviamo:


in cui la -esima componente la calcoliamo nel seguente modo:

()



Ritornando al polinomio di Taylor scritto qualche rigo fa e impostandolo uguale a 0, ottengo:

()

(

)
(

)
(

)
(

)

Supponendo che (

) , quindi massimo, la nuova approssimazione :


con soluzione del sistema lineare:

)

(

)
(

)
(

)
.

)
/

)

da cui ottengo che la soluzione di questo sistema :

)


Sia

una funzione di cui si vuole calcolare il minimo:

()

Inoltre sia

un vettore. Esso si dice direzione di discesa per un elemento

se accade che:

()

In altre parole, il prodotto scalare tra un vettore direzione e il vettore gradiente di una funzione
()
si
definisce in analisi derivata direzionale della funzione
()
e valuta il cambiamento della funzione in una
particolare direzione.
Metodi di discesa
Un metodo numerico di discesa un metodo basato sullidea che, fissato un punto iniziale

e una certa
direzione di discesa

, la funzione possa crescere o decrescere a seconda che la derivata


direzionale:

()

()

()

()


sia negativa o positiva, ossia a seconda che langolo tra
()
e maggiore o minore di

.
Per questo motivo tali metodi sono anche noti con il termine di metodi del gradiente e differiscono tra
loro per le diverse scelte della direzione .
Sia una funzione sufficientemente regolare, ovvero dotata delle derivate che di volta in volta vengono
richieste. Un metodo di discesa procede nel seguente modo:
Sia

il punto di minimo, supponiamo di essere al passo -esimo e di aver costruito


lapprossimazione


Si sceglie un vettore direzione

di decrescita per la funzione (cio tale che


()

) e
si determina il punto

che minimizza la sulla semiretta passante per

e di direzione

,
cio


Metodi numerici per linformatica
2013/2014

46
Il passo di discesa

che mi porta dopo un certo numero di iterate al minimo (locale) della


funzione, devo sceglierlo in modo tale che decrementi la funzione di cui voglio trovare il minimo,
quindi devo considerare:

)

Poich
(

)
una funzione univariata in , la posso scrivere come
()
con . La direzione di
massima discesa la ottengo quando langolo formato dal gradiente e la direzione in cui voglio scendere
sono opposti, cio quando:

)

Il metodo di discesa si ferma quando le quantit
()

oppure

sono minori di una certa


tolleranza prestabilita.
Steepest descent (massima discesa)
un metodo iterativo che, a partire da una stima iniziale

del punto di minimo, genera una successione


di approssimazioni

, ognuno delle quali ottenuta mediante la soluzione di un problema di minimo


unidimensionale.
La convergenza , in generale, di tipo lineare e in alcuni casi estremamente lenta. Il motivo di tale
comportamento da ricercare nel fatto che il metodo non tiene conto delle derivate seconde di (ovvero
la curvatura) che determinano il comportamento della funzione in un intorno del punto di minimo.
Se considero

come approssimazione del minimo al passo -esimo e quale direzione di discesa scelgo

)
, il metodo dello steepest descent mi dice che lapprossimazione successiva del minimo la
ottengo in questo modo:

)

Infatti la direzione del gradiente negativo quella lungo la quale la funzione decresce pi rapidamente
per i primi passi, cio per piccolo.

Ci sono tre tipi di steepest descent:
Passo costante

allora:

)

Passo ottimale:

)

con

)
)
Passo costante

-,, allora come prima:

)

Metodo di Newton usato come metodo di discesa
Il metodo di Newton costituisce un metodo di discesa perch rispetta la condizione della direzione di
discesa:

()

oppure

()


In particolare, ricordando che il metodo di Newton ammette soluzione per

)
, avr:

()
.

)
/

()
(
(

)
*
Siamo sicuri che la quantit in parentesi positiva perch lhessiano della funzione
(

)
definito
positivo.
Il metodo di Newton un metodo di discesa che rispetta lipotesi di convergenza quando si prende un


di partenza sufficientemente vicino a

, minimo della funzione.


Ottimizzazione vincolata
Metodi numerici per linformatica
2013/2014

47
Sia

una funzione vettoriale. Vogliamo cercare il minimo di questa funzione, non in tutto il
suo dominio ma in un suo sottoinsieme , definito come insieme dei vincoli:

()

Se espresso sotto forma di relazioni funzionali (che mi dicono come fatto il vincolo) del tipo:

{

()

()

()

con ogni

, allora la funzione lagrangiana associata


()
definita come

sar:

()

()

()

()

()

()

()]


()

()

()

()

alla quale possiamo aggiungere altre funzioni vincolanti.
A questo punto calcolo il minimo di questa funzione lagrangiana:

()

Nel caso in cui avessi un certo numero di vincoli che devo soddisfare nella minimizzazione, dovr
ricercare tanti coefficienti quanti sono i vincoli. Perci trover in

.
Il gradiente per una funzione lagrangiana :

()

()

()

dove

()
sar uguale a:

()
0

()
|

()
| |

()
1
(

()

()

()

()

()

()

()

()

()


Condizioni KKT per le lagrangiane
Sono condizioni che mi assicurano lesistenza di un minimo per una funzione lagrangiana. Possiamo dire
che

minimo per
()


(

)
definito positivo
Affinch questo punto di minimo della funzione lagrangiana sia anche il punto di minimo della
funzione vincolata dovr avere che
(

)

Metodi per la penalizzazione
I metodi di penalizzazione e di barriera sono metodi per approssimare problemi vincolati, mediante una
successione di problemi non vincolati.
Nel caso di metodi di penalizzazione, lapprossimazione si ottiene aggiungendo alla funzione obiettivo
del problema originario, un termine che richiede un alto costo nel caso di violazione dei vincoli.
Nel caso dei metodi di barriera, lapprossimazione si ottiene aggiungendo alla funzione obiettivo del
problema originario, una funzione di barriera che favorisce i punti interni alla regione di ammissibilit
rispetto ai punti di frontiera.
Il grado con cui il problema non vincolato approssima il problema vincolato originario controllato da un
Metodi numerici per linformatica
2013/2014

48
parametro che per genera approssimazioni molto accurate.
Le problematiche associate ai metodi di barriera o di penalizzazione sono:
Problema di convergenza: ovvero stimare quanto il problema non vincolato approssima quello
vincolato al crescere del parametro
Problema pratico: risoluzione del problema non vincolato he approssima il problema originario.
Infatti, in generale, allaumentare del parametro , si osserva un rallentamento della convergenza
di molti algoritmi. Necessita quindi di procedure di accelerazione

Sia

una funzione sufficientemente regolare, un sottoinsieme proprio di

contenente vincoli
sotto forma di equazioni e disequazioni. Vogliamo risolvere il problema seguente:

[
()

()
]
dove
()

una funzione di penalizzazione che rende sconveniente allontanarsi dal vincolo che
ho prefissato. La funzione
()
la scelgo in maniera tale che soddisfi le seguenti ipotesi:
1.
()
,


2.
()
continua in


3.
()
quando (quando sono sul vincolo non devo essere penalizzato)
Scegliendo una successione di coefficienti (detti anche parametri di penalizzazione) *

con ogni

tali che

, allora risolvo il problema di penalizzazione calcolando :

)

()

()

Prendendo valori di

opportuni, il metodo di penalizzazione converge a

minimo di su .
Detta *

la successione di punti di minimo ottenuta risolvendo i problemi {

)
}

, vale il
seguente risultato:

(

)

(

)


(

)

(

)


(

)

(

)

Nelle comuni applicazioni che utilizzano il metodo di penalizzazione si sceglie un solo , accontentandosi
quindi di un minimo locale, anche se potrebbe essere molto lontano dal minimo globale della funzione
obiettivo. La penalizzazione converge solo al limite.
Problema dei minimi quadrati
Data una matrice di dati reali

ed un vettore

, ricerchiamo un vettore

che
minimizzi la differenza , cio:


Se , non singolare e () , quindi massimo, allora

; se, invece, (ho pi


equazioni che incognite) allora abbiamo

soluzioni.
Applicazioni del problema dei minimi quadrati
Prima di descrivere i metodi di risoluzione del problema ai minimi quadrati lineare, analizziamo alcune
delle applicazioni in cui questo problema si presenta.
Data fitting
Supponiamo che in certi istanti di misurazione

, rileviamo il valore

misurato su un certo fenomeno


fisico, con . Ipotizziamo che ci siano errori esclusivamente sui valori misurati del fenomeno e
non sugli istanti temporali e che questi dati siano racchiusi in un insieme di coppie ordinate:
*(

) (

) (

)+
Vogliamo capire landamento dei dati per poi predirli in un istante temporale successivo. Andiamo perci
a determinare una funzione che fornisca una stima dellandamento delle osservazioni, cio:
Metodi numerici per linformatica
2013/2014

49

)

La funzione pi semplice che possiamo pensare per approssimare i dati la retta, che prender il nome di
retta di approssimazione. In ogni istante il valore della funzione la possiamo scrivere nel seguente modo:




Figura 6 - Retta di approssimazione nel metodo dei minimi quadrati

Calcoliamo i coefficienti e della retta in modo che i valori (

)
) approssimino i punti (

) nel
senso di minimizzare la somma dei quadrati degli scarti (errori) verticali.
Lerrore che commettiamo in un certo istante

nellapprossimazione, corrisponde alla quantit:

)
|


La somma di questi scarti costituisce una particolare funzione, detta funzione errore, cos fatta:

()


Rendendo minima quella funzione abbiamo una buona approssimazione dellandamento della funzione
obiettivo, cio:

()


Risolviamo il problema di minimo calcolando le derivate parziali della funzione errore
()
prima
rispetto ad e poi rispetto a , ponendole infine uguale a zero. In altre parole risolviamo il seguente
sistema lineare:


{



Metodi numerici per linformatica
2013/2014

50

+ (

+ (



La scrittura matriciale del sistema precedente la seguente:

(

1
[



Indichiamo con

la matrice cos fatta:


(

,
in cui la prima colonna rappresenta la potenza zeresima degli istanti temporali, con

il vettore
degli osservabili:
[

]
Infine con chiamo il vettore delle incognite:
0

1
Calcoliamo ora

*(

,
(


mentre

sar:

*[

]
[


Dalle ultime due equazioni, possiamo notare che


il tempo medio di misurazione e:


la misurazione media del fenomeno fisico.
Sto ipotizzando che le osservazioni negli istanti temporali siano distribuite normalmente.

Calcoliamo inoltre la varianza di :
Metodi numerici per linformatica
2013/2014

51



e di allo stesso modo:



Possiamo inoltre determinare il coefficiente statistico di covarianza lineare dei dati, che coincide col
coefficiente di correlazione dei dati standardizzati:

)(



Il sistema

prende il nome di sistema delle equazioni normali ed associato al sistema


.
Se gli istanti

sono tutti distinti, allora () . Questo significa che sar 2 anche (

), perci
esister linversa di

ed il sistema delle equazioni normali ammetter ununica soluzione.


La soluzione del sistema la scriver, quindi, nella forma:
(


Calcoliamo la soluzione , che equivale al trovare le soluzioni al vettore di incognite 0

1. Applichiamo il
metodo di Gauss:

(

|
|

|
|



Metodi numerici per linformatica
2013/2014

52

|
|



Passiamo al sistema associato e otteniamo che:

{

() (

() (

() (

()



Metodi numerici per linformatica
2013/2014

53



Potremmo anche riscrivere i coefficienti e della retta di approssimazione in funzione delle varianze:


(
)

(
)


Quando il coefficiente

approssima lunit, i dati sono relazionati linearmente, commettendo un errore


trascurabile.

Ritornando alla funzione obiettivo di partenza, possiamo dire che:

)(

)-,

)-


Notiamo che la quantit

il risultato della -esima componente di , cio:


(

) 0


Continuando a scrivere lequazione precedente riguardo la funzione obiettivo, ottengo:

( )

( )
Ritornando alla matrice scritta prima e raccogliendo :



Il problema dei minimi quadrati rientra nel contesto pi ampio di regressione lineare, cio stiamo
Metodi numerici per linformatica
2013/2014

54
supponendo di esprimere una o pi variabili come combinazione lineare di osservazioni, attraverso delle
costanti , cio:


dove una funzione che rappresenta il rumore contenuto nelle osservazioni (rumore che assumiamo
avere media 0 e varianza ).

Supponiamo che i dati siano generati dalle seguenti funzioni:
. In questo caso i punti (

) non sono correlati linearmente. Posso per scoprire


una relazione lineare tra ascisse e ordinate considerando i dati trasformati in questo modo:

. Lequazione della retta allora sar:

con . Per rimandare tutto ad una correlazione lineare passo al logaritmo di ambo i
membri ottenendo: (

. Sostituendo con

e
con

ottengo lequazione della retta in questa forma:

. Le coordinate della
funzione saranno del tipo: ( )

con . Mediante un opportuno cambio di variabili posso scoprire lesistenza di una


relazione lineare tra e . Infatti passando al logaritmo naturale di entrambi i membri, ottengo:
(

. Si avranno coppie del tipo ( )


con . Sostituiamo

ottenendo:

.
Le coordinate dei punti della funzione saranno: .

/
La regressione lineare un ottimo metodo di approssimazione, anche in quei casi in cui, ad una prima
vista, non sembra esserci una relazione lineare nella funzione.
Curve fitting (approssimazione ai minimi quadrati nel discreto)
Abbiamo visto nel paragrafo precedente come approssimare dei punti tramite una retta, detta retta di
approssimazione. Se invece volessimo approssimare landamento di questi punti tramite una curva,
dovremmo pensare ad un polinomio di approssimazione.
Infatti avendo a disposizione un insieme di punti:
*(

) (

) (

)+
vogliamo costruire un polinomio
()
di grado con . La relazione mi consente di avere un
polinomio poco oscillante, che per costituisce una buona approssimazione dellandamento dei dati.
Questa approssimazione la possiamo valutare tramite la differenza tra il valore che assume il polinomio
in un certo punto e il valore reale di , cio:

(
(


Con questi scarti possiamo costruire la funzione errore

()
e la rendo minima:

()

()


Il polinomio approssimante
()
, in generale, lo posso scrivere cos:

()


da notare che il polinomio
()
ha necessit di coefficienti per essere univocamente determinato.
Riscrivo la funzione errore alla luce delle ultime equazioni:

()

(
(

(.

)

Avendo appena dimostrato che la funzione errore dipende dai coefficienti del polinomio, minimizzare
questa funzione sul polinomio
()
significa minimizzarla sui coefficienti, cio:
Metodi numerici per linformatica
2013/2014

55

()

)

Calcoliamo il gradiente di e poniamolo uguale a 0:

[


La generica -esima componente del vettore gradiente precedente la seguente:

(.(

.(

.(



In generale, quindi:

.(


Riscriviamo il sistema precedente sotto forma matriciale:
[

]

[


Costruendo la matrice data dai vettori colonna al variare di ottengo:

(

,
()


Lelemento

il generico -esimo elemento di

, cio:

Metodi numerici per linformatica
2013/2014

56
[


In conclusione il sistema che andr a risolvere per ottenere i coefficienti da porre allinterno del
polinomio approssimante, sar del tipo:


Se

invertibile (() , quindi massimo) allora esiste ed unica la soluzione


(

, inoltre esiste ed unico il polinomio


()
di migliore approssimazione.
importante notare che

simmetrica per costruzione e non singolare:




Scriviamo il generico elemento della matrice

vista prima:
(


per .

Dimostriamo che

non singolare.
Se per assurdo (

) allora il sistema

avrebbe una sola soluzione diversa dal vettore


nullo, cio:
(

) *+
Ipotizziamo per assurdo che tale che

) ()

.
Questo significa che tutti gli elementi di quel vettore sono tutti zeri, cio ()

con
.
Considero il polinomio
()
avente quali coefficienti gli elementi

, cio:

()


Poich un polinomio di grado ammette zeri distinti, con , allora
()
deve coincidere con il
polinomio nullo, cosa assurda perch dalle ipotesi avevamo detto che .
Metodi numerici per linformatica
2013/2014

57
Lassurdo derivato dallaver supposto che

fosse singolare.

anche definita positiva perch

*+

. Richiedere che


definita positiva equivale ad affermare che il punto stazionario un punto di minimo. Infatti

la
matrice hessiana associata alla funzione obiettivo nel problema del minimo.



Metodi numerici per linformatica
2013/2014

58
ARTICOLI E DISPENSE
Pseudo-inversa
Data una matrice rettangolare

ed una sua scomposizione in valori singolari

, si
chiama pseudoinversa la matrice

(anche indicata col simbolo

) che soddisfa queste quattro


propriet:
1.


2.
3. ()


4. ()


Si dimostra che simmetrica, come anche .
Il concetto di pseudoinversa generalizza il concetto di matrice inversa.

Avendo decomposto in SVD si prova che la matrice inversa generalizzata di si scrive:


dove

la pseudo-inversa della matrice .


Dimostriamo le prime due propriet di una matrice pseudo-inversa scritta sotto forma di SVD:
1.


2.


Si verifica facilmente che la matrice

la matrice diagonale

ad elementi

, con


con
In altre parole

pu essere scritta come:


]
Matrice simmetrica
Sia

una matrice quadrata. Si dir simmetrica per definizione se:

. Possiamo dire allora


che i suoi autovalori sono tutti reali, quindi:
()
Gli autovalori di una matrice simmetrica si troveranno, di conseguenza, tutti sullasse reale.
Inoltre possiamo dire che le matrici

sono reali.
Matrice definita positiva
Sia

una matrice quadrata. Si dir definita positiva se e solo se

e allora

.
Nel caso in cui autovettore e definita positiva allora posso dire che:


Nel caso in cui la matrice si dice semi definita positiva.
Per ogni ho:


Luguaglianza la ottengo nel caso in cui il vettore appartiene allo spazio nullo della matrice .
PCA (Analisi delle componenti principali)
Metodi numerici per linformatica
2013/2014

59
Per lo studio di un fenomeno fisico, costruisco un dataset in cui le colonne rappresentano lo spazio -
dimensionale delle feature del fenomeno che voglio studiare e le righe rappresentano lo spazio -
dimensionale degli esperimenti (o campioni) effettuati.
Poich ogni feature ha una sua distribuzione di probabilit (PDF), lintero dataset avr una distribuzione
di probabilit multivariata perch fatta da tutte le PDF delle colonne.
Nello studio del dataset mi aspetto di trovare una situazione tale per cui alcuni campioni simili abbiano le
stesse caratteristiche, mostrando cos una certa dipendenza.
Ogni colonna nel nostro dataset costituir una variabile aleatoria ed avr una sua media e una sua
varianza.
Il coefficiente di correlazione dir quanto due vettori (feature) sono vicini.

Sia ,

la matrice dei dati (dataset) in cui ogni colonna una variabile aleatoria. La
matrice di covarianza
5
permette di scrivere le covarianze tra ciascuna delle coppie di variabili

in
forma compatta:

(
(

) (

) (

)
(

) (

) (

)

(

) (

) (

)
,

dove (

)
(

e (

)
(

)(

. Si noti che si divide per per svincolarsi dal


BIAS del numero dei campioni.
La matrice di covarianza avr dimensione e il suo trace sar uguale a:
(

) (

) (

) (

)
che rappresenta la varianza totale del dataset.
Inoltre la matrice

simmetrica perch (

) (

) ed semi definita positiva.



La matrice di correlazione
6
fatta dai coefficienti di correlazione cos definiti:

)
(

) (

)

Un valore vicino ad 1 significher che i due vettori presi in considerazione sono paralleli tra di loro e
quindi forniscono informazioni pressoch ripetitive, mentre un valore vicino a 0 significher che quella
coppia di vettori sono ortogonali e quindi non sono correlati linearmente.
La matrice di correlazione sar quindi del tipo:


,

Anche questa matrice simmetrica perch

ed semi definita positiva. Sulla diagonale ho tutti 1


perch la correlazione di un vettore con se stesso proprio 1.

Partendo dalla matrice dei dati , costruisco una matrice centrata sulla media che chiamo

, in cui ogni

5
Matrice che rappresenta la variazione di ogni variabile rispetto alle altre (inclusa se stessa).
6
Per correlazione si intende una relazione tra due variabili statistiche tale che a ciascun valore della prima variabile,
corrisponda con una "certa regolarit" un valore della seconda.
Metodi numerici per linformatica
2013/2014

60
colonna un vettore di scarti dalla media ed fatta nel seguente modo:

7

Anche per la matrice centrata sulla media

posso calcolare la matrice di covarianza e quella di


correlazione, che saranno rispettivamente:



e:

)


Dato un dataset e le sue matrici di covarianza e di correlazione, la PCA cerca di diagonalizzare queste due
matrici in modo da metterci nella posizione di massima scorrelazione dei dati. Questa operazione avviene
tramite delle trasformazioni lineari.
La diagonalizzazione della matrice di covarianza dei dati rende le feature scorrelate e la PDF multivariata
risultato del prodotto delle PDF univariate. Queste nuove feature non saranno pi degli osservabili fisici
ma combinazioni lineari di queste. Chiameremo queste variabili componenti principali.
BSS (Blind Signal Separation)
La PCA offre anche un meccanismo, detto BSS, per la suddivisione di un segnale originale nella somma
dei segnali sorgenti indipendenti (ortogonali) e scorrelati.
Quindi dato un dataset formato da feature

, ipotizzo che siano combinazioni lineari di


sorgenti indipendenti

:

dove conterr i coefficienti della correlazione lineare.
Le nuove feature sono ordinate in modo decrescente rispetto agli autovalori della matrice di covarianza
dei dati. In particolare

rappresenta la direzione lungo cui si ha la massima dispersione, mentre

la
direzione lungo cui la dispersione pi bassa.
La PCA per la BSS fornisce intrinsecamente un ordinamento (ranking) delle sorgenti estratte.
Una assunzione fondamentale che facciamo quando applichiamo la PCA quella che il potere
informativo di una feature strettamente legato alla sua varianza: pi alta la varianza, pi sar alto il
potere informativo di quei dati.
Per ricostruire la funzione di distribuzione dei dati, conoscendo solo la loro media e la loro varianza,
posso utilizzare la distribuzione normale (gaussiana, ipotizzando di ragionare al limite). Di conseguenza,
se le sorgenti sono gaussiane, allora la PCA fornisce una stima di massima verosimiglianza delle sorgenti.
Se le variabili di un fenomeno multivariato hanno un certo grado di correlazione, allora i vettori
rappresentativi del fenomeno tenderanno a occupare solo una porzione dello spazio degli osservabili. Lo
scopo della PCA quello di rappresentare un insieme di dati con una matrice di covarianza non
diagonale e di dimensione in uno spazio di dimensione minore di , in cui gli stessi dati siano
rappresentati da una matrice di covarianza diagonale.
La diagonalizzazione si ottiene con una rotazione delle coordinate nella base degli autovettori
(componenti principali):
ad ogni autovettore associato un autovalore a cui corrisponde la varianza della componente
principale
la correlazione parziale tra le feature originarie si riflette in autovalori con valori trascurabili
gli autovettori corrispondenti ad autovalori piccoli possono essere trascurati e si limita la
rappresentazione solo agli autovettori con gli autovalori pi grandi
Poich la matrice di covarianza nella nuova base delle componenti principali diagonale, la varianza

7
Prodotto puntuale (o di Kroneker).
Metodi numerici per linformatica
2013/2014

61
totale la somma delle varianze delle singole componenti principali.
Una volta creata la diagonalizzazione, la PCA consente la riduzione della dimensionalit. Ricordando che
i dati con bassa varianza godono di basso potere informativo, posso approssimare alle prime
componenti principali con . In questo modo elimino il rumore che affligge i dati, anche se non
completamente.
Derivazione della PCA in modo analitico
Sia data una matrice

, consideriamo la sua corrispondente matrice centrata sulla media

, la
sua matrice di covarianza

e la sua matrice di correlazione

.
Lanalisi delle componenti principali va ad estrarre una decomposizione spettrale della matrice di
covarianza (o della matrice di correlazione) dei dati, rendendole simili ad una matrice diagonale, nella
quale gli elementi diagonali sono gli autovalori di

(o di

).
Operativamente, andremo a trasformare la matrice dei dati in una nuova matrice ,

, in modo tale che ogni colonna

risulti essere combinazione lineare delle colonne della nuova


matrice di dati trasformati:


Vogliamo che

rappresenti la maggior parte della varianza di in una specifica direzione,

esprima la
varianza di in unaltra direzione, ecc. In pratica vogliamo creare un ordinamento delle colonne della
matrice trasformata, in base alla varianza che esprime ciascuna colonna.
Voglio ottenere:


cio trasformo in un dataset , senza perdere potere informativo, con una combinazione lineare delle
sorgenti. sono le sorgenti e ,

-. Il calcolo di non semplice perch posso avere infinite


soluzioni, dipendentemente dalla che ipotizzo.
Posso anche scrivere il problema dal punto di vista opposto, cio voglio conoscere le sorgenti partendo
dalla matrice dei dati e quindi scrivo:


dove ogni colonna

fatta nel modo seguente:


Scriviamo il primo vettore colonna

della nuova matrice:


e sar tale che la sua varianza sia massima tra tutte le combinazioni lineari.
Calcoliamo la varianza di

:
(


dove la matrice di covarianza.
Il criterio per scegliere gli

quello di far diventare il valore (

) il pi grande possibile in modo che


la prima colonna di abbia il maggior potere informativo (varianza maggiore).
Propriet: se prendo un vettore e uno scalare , allora la () ().
La suddetta propriet ci dice che mi basta trovare un pi grande possibile per poter soddisfare la
condizione che mi sono prefisso per la (

), ma questo ovviamente mi porta a fare unanalisi


totalmente inutile. Per risolvere questo problema fisso la norma di tutti gli

uguale ad 1, cio:


In altre parole, per fare in modo che il vettore non si allunghi arbitrariamente con un positivo,
mantenendo anche direzione e lunghezza fissata, imposto che gli

della combinazione lineare devono


essere tali che la loro lunghezza fissata.
Metodi numerici per linformatica
2013/2014

62
La prima componente principale si determina risolvendo un problema di massimo vincolato:
(

) (

)
ma mantenendo

.

Per trovare il massimo in una funzione (in una variabile) mi basta calcolare la derivata prima della stessa
e porla uguale a 0, trovando cos i punti stazionari:

)
In generale per, per funzioni in pi variabili, devo calcolare la derivata parziale rispetto ad ogni
variabile.
La seconda componente principale, i cui pesi sono contenuti nel vettore

, massimizza la varianza
residua sotto il vincolo di ortonormalit, cio:
*

+
con

.
Anche in questo caso posso trovare i minimi e i massimi della funzione, uguagliando a 0 le derivate
parziali prime.
Ottimizzazione vincolata
Trovare il massimo della varianza di

si traduce in:
.

)/
La funzione

) prende il nome di funzione lagrangiana e si indica con


(

)
.
Sceglier molto piccolo cos da ritornare sul vincolo nel caso mi ci allontani.
Calcoliamo la derivata parziale della funzione lagrangiana rispetto ad

e poniamola uguale a 0:


dove

soluzione del sistema lineare

. Osserviamo che il primo asse principale che mi da la


prima colonna trasformata mediante combinazione lineare delle colonne di , il primo autovettore
corrispondente allautovalore

. Continuo a scrivere:

)
Linformazione spettrale dominante della matrice di covarianza dei dati (autovettore e autovalore
dominanti) rappresenta lasse principale, che una combinazione lineare per ottenere il primo vettore
principale

.
La matrice di covarianza

ha dimensione . Avr, quindi, autovettori e autovalori. Gli


autovalori saranno tutti distinti.
Possiamo anche calcolare il secondo asse principale.


la cui varianza :
(

) (

)
con

.
Con questo procedimento sto diagonalizzando la matrice di covarianza

, attraverso una trasformazione


ortogonale, e riordinando le colonne. Quindi sar del tipo:



dove ogni

). Si ricorda che:



Metodi numerici per linformatica
2013/2014

63
Ho costruito un nuovo dataset da quello di partenza, le cui colonne sono state ordinate in termini di
varianza decrescente.

La varianza totale del dataset rappresenta il trace della matrice di covarianza

.
Data la decomposizione con

, gli

sono fatti in modo tale che

e sono ortogonali
tra di loro (

), la (

autovalore di

), la varianza totale la scriviamo


nel seguente modo:
(

)

Per determinare la varianza parziale racchiusa in una certa direzione principale

calcoliamo il rapporto:

)


La somma dei primi autovalori rappresenta un indice di bont, cio la varianza cumulativa nelle prime
direzioni principali:

)

con . In altre parole, la quantit di informazione che conservo se vado ad approssimare il mio
dataset con il dataset trasformato , troncato alla -esima colonna. Chiaramente il rank di questa nuova
matrice sar ridotto.
Per scegliere opportunamente si usano dei metodi euristici. Di solito si sceglie di tagliare ad un valore di
cut-off tra il 70 e il 90% scegliendo le prime componenti principali dominanti. Tipicamente bastano i
primi due assi principali per effettuare una buona PCA, di conseguenza lindice della bont statistica sui
primi due assi principali definito dal seguente rapporto cumulativo:


La differenza:


misura la profondit dei dati. A profondit maggiore corrisponde un rischio maggiore che punti vicini
nella proiezione sul piano, siano invece lontani nella realt.
Scree plot
Lo scree plot un grafico degli autovalori della matrice di covarianza rispetto al numero dordine della
componente. caratterizzato da una ripida pendenza per le prime componenti e comportamento
asintotico per le restanti. Sullascissa si hanno gli autovalori ordinati e sullordinata le varianze.
Si sceglie di tagliare al valore in corrispondenza del punto in cui il grafico presenta un gomito.
Nellesempio sotto, si taglia dopo la terza componente, trascurando quindi dalla quarta componente in
poi.


Metodi numerici per linformatica
2013/2014

64
Figura 7 - Esempio di scree plot

Una variante allo scree plot il diagramma LEV (Log-EigenValue) che considera i logaritmi degli
autovalori della matrice di covarianza, rispetto al numero dordine della componente. In questo caso la
scelta del valore fatta in corrispondenza del punto in cui il grafico diventa approssimativamente una
linea retta. Si usa questo tipo di grafico quando gli autovalori decrescono con molta lentezza, mi aspetto
quindi che passando ai logaritmi, la pendenza di accentui maggiormente, ma non sempre succede.
Criterio di Kaiser
Un altro criterio per tagliare le componenti principali il criterio di Kaiser. Consiste nel calcolare la
media delle varianze (ovvero lautovalore medio) e conservare gli autovalori che sono maggiori di quel
valore medio.
Criteri pi complessi
Le tecniche pi avanzate per la scelta del numero di componenti principali da conservare sono basate su:
test delle ipotesi: si usa quando si hanno informazioni a priori di tipo probabilistico, ad esempio
quando si sa che le sorgenti dei dati non sono ma sono , con
meccanismi di cross-validation: la cross-validation una tecnica statistica utilizzabile in presenza
di una buona numerosit del campione osservato o training set. In particolare, la -fold cross-
validation consiste nella suddivisione del dataset totale in parti di uguale numerosit e, ad ogni
passo, la parte

-esima del dataset viene ad essere il validation dataset, mentre la restante parte
costituisce il training dataset. Cos, per ognuna delle parti si allena il modello, evitando quindi
problemi di overfitting, ma anche di campionamento asimmetrico (e quindi affetto da BIAS),
tipico della suddivisione del dataset in due sole parti (ovvero training e validation dataset).
In altre parole, si suddivide il campione osservato in gruppi di uguale numerosit, poi si esclude
iterativamente un gruppo alla volta e lo si cerca di predire con i gruppi non esclusi. Ci al fine di
verificare la bont del modello di predizione utilizzato
Scelta dellunit di misura
I risultati della PCA dipendono dallunit di misura adottata per le variabili. Ad esempio, cambiando la
lunghezza da metri a centimetri si alterano le componenti principali. Gli autovalori di una matrice
dipendono da fattori di scala.
Per risolvere alcuni problemi di scaling si pu:
fare un pre-processing dei dati per omogeneizzare le unit di misura
utilizzare la matrice di correlazione invece che la matrice di covarianza. In questo caso lanalisi si
conduce sulle variabili standardizzate con il vantaggio che la matrice di covarianza delle matrici
standardizzate coincide con la matrice di correlazione.
Lavorare con

invece che con

comporta una arbitraria decisione di rendere tutte le variabili


ugualmente importanti, in quanto in

le componenti diagonali hanno tutte varianza pari ad 1.


Chiaramente le autocoppie di

saranno diverse da quelle di


Interpretazione delle componenti principali
Una volta che lapprossimazione delle sorgenti (variabili latenti), non direttamente osservabili, stata
effettuata, c il problema di dare una etichetta semantica a queste variabili. Non c un modo unico per
attribuire un certo nome, ma dipende molto dallesperienza del ricercatore.
Linterpretazione pu anche essere effettuata considerando i coefficienti (in generale presi in valore
assoluto) della matrice . Ricordando che , i coefficienti possono pesare in maniera diversa le
componenti di , perci coefficienti prossimi allo zero corrispondono a variabili di che non
Metodi numerici per linformatica
2013/2014

65
contribuiscono in maniera rilevante alla determinazione delle variabili in .

Rimanendo nellottica dellinterpretazione, posso effettuare il calcolo dei coefficienti di correlazione
lineare (

) tra le componenti principali e le variabili originarie (

). Se questo coefficiente alto, allora


quelle componenti sono fortemente correlate linearmente, se invece basso, non lo sono.
PCA per analisi di microarray del DNA
In bioinformatica, i microarray di DNA vengono utilizzati per esaminare il profilo di espressione di un
gene oppure per identificare la presenza di un gene o di una breve sequenza di geni allinterno del DNA.
Per queste analisi si pu applicare la PCA nella quale le feature (variabili) possono essere i geni (se
vogliamo spiegare i risultati sperimentali ottenuti studiando le caratteristiche dei geni) o gli esperimenti
(se, invece, vogliamo studiare gli effetti di un particolare gene sui risultati degli esperimenti).
La tecnica algebrica pi adottata in questo campo la SVD per la visualizzazione dei dati riguardo
lespressivit genica. La SVD produce una base per lo spazio colonne di (vettori singolari destri) che
chiameremo spazio degli eigengenes e una base per lo spazio colonne di (vettori singolari sinistri) che
sar lo spazio degli eigenassays.
Metodi numerici per linformatica
2013/2014

66
Eigenfaces for recognition
[1]

Avendo a disposizione un dataset di immagini, posso costruire un volto fantasma.
Siano

, immagini di volti in bianco e nero, con ciascuna

in cui gli elementi ( )


rappresentano le intensit di grigio del ( )-esimo pixel.
prima di creare leigenface, mi assicurer, mediante pre-processing, di aver centrato ogni volto rispetto
alla fotocamera che scatta la foto e che lilluminazione sia la stessa in tutte le foto.
Chiamiamo con il volto medio ottenuto dagli

del dataset:


Posso pensare che le immagini di volti siano classificate in classi di individui diversi e per ogni
individuo ipotizzo di avere

immagini.
Una volta costruito il volto medio costruisco delle nuove immagini

centrate su in questo modo:


Vettorizzo ogni

creando cos un lungo vettore colonna di righe. Questi vettori li chiamo (

. Organizzo tutte queste immagini vettorizzate in ununica matrice che sar formata da tante
colonne quante sono le immagini e tante righe quant la risoluzione delle immagini ( pixel):
,(

) (

) (

)-


In generale .
Lanalisi delle componenti principali cerca un insieme di vettori ortonormali

che meglio descrivono


la distribuzione dei dati. Il -esimo vettore

scelto tale che:


massimo.
I vettori

e gli scalari

sono, rispettivamente, gli autovettori e gli autovalori della matrice di


covarianza dei dati:


Se immagino di rappresentare tutti i volti in un certo spazio, potr chiamare questo spazio spazio delle
facce che rappresenter lo spazio delle osservabili nel mio esperimento.
Costruisco la matrice

. Avr autovalori e chiamiamo con (

) una autocoppia di
questa matrice.
Allora posso scrivere che:

)
Quella scritta sopra la relazione che intercorre tra gli autovettori

e gli autovalori

della matrice

,
con gli autovettori

e gli autovalori

della matrice di covarianza dei dati

.
La varianza delle immagini sar raccolta nei primi autovettori. Poich il concetto di variabilit legato
alla varianza dei dati nella PCA, vuol dire che sono interessato ai primi autovalori tralasciando quelli
nulli.
Posto

, lo chiameremo eigenface e rappresenter uno degli assi principali (o autovettore)


della matrice di covarianza dei dati, calcolati attraverso una PCA. Gli autovalori associati ci permettono di
ordinare gli autovettori secondo la loro utilit nel caratterizzare la variazione tra le immagini.
Ogni

sar una base dello spazio delle facce.


Continuiamo a scrivere:

()


Gli eigenface sono ottenuti tramite combinazione lineare delle facce originarie. Proietto ogni faccia
Metodi numerici per linformatica
2013/2014

67
centrata sul volto medio sullo spazio degli eigenface. Le varie proiezioni le calcolo cos:


Ogni nuova immagine la ricostruisco come combinazione lineare degli eigenface, quindi:


Non mi servono tutti gli eigenface per riconoscere un volto ma approssimo lo spazio delle facce con i
primi

autovettori, cio:
*

+
Gli

autovettori sono scelti tra quelli che hanno i pi grandi autovalori associati.

Nel momento in cui mi giunge una nuova immagine

, la vettorizzo in

e la centro
rispetto alla media, la proietto poi nello spazio delle immagini ridotto calcolando la proiezione:

( )


con

. Costruisco poi un vettore di pesi:


[

]
le cui componenti sono le proiezioni ortogonali della nuova immagine centrata sul volto medio sullo
spazio delle facce ridotto.
Per poter confrontare la mia nuova immagine con quelle del dataset devo proiettare le vecchie immagini
sullo spazio

dimensionale. Per ricostruire le immagini mi servono solo i vettori , quindi per ogni
immagine del training:


calcoler rispettivamente:


dove ogni

del tipo:


Geometricamente, calcolare quanto due immagini sono simili, significa calcolare la distanza in norma
euclidea di un certo volto, ad esempio quello nella mia nuova immagine, con quelli gi presenti nel
dataset oppure con quelli del training set usato per addestrare il sistema. Avr cos:


Il valore pi piccolo di

mi dir quale volto del dataset pi vicino allimmagine di input.


Per calcolare questa distanza considero la mia nuova immagine , costruisco una nuova immagine fatta
da centrata sulla media, quindi:

e calcolo il vettore proiezione ortogonale di nello spazio delle facce ridotto, quindi:


e valuto il vettore differenza

per vedere se un volto e calcolo anche


per vedere se appartiene ad una immagine che ho gi nel dataset.

Metodi numerici per linformatica
2013/2014

68
Vector Space Model per lInformation Retrieval
[2]

Supponiamo di avere documenti testuali e un vocabolario di termini (token) avente cardinalit
. Con la parola termine non intendo solo le singole parole, ma anche locuzioni di parole, radici, ecc. Per
descrivere i documenti in funzione dei termini che contengono, costruisco una funzione frequenza

che mi restituisce il numero di occorrenze del termine nel documento . In particolare


sar fatto nel seguente modo:


dove

il numero di occorrenze della parola allinterno del documento ,

il numero di occorrenze
allinterno di tutto il vocabolario e un coefficiente di normalizzazione che permetter di normalizzare
la frequenza rispetto alla lunghezza del documento.
Andando ad iterare il processo per il calcolo delle frequenze con cui un certo termine compare in un certo
documento, posso costruire una matrice

formata in questa maniera:



(

,

Il () (spazio colonne) viene detto spazio semantico o spazio dei documenti dove ogni
documento rappresenta una dimensione di questo spazio, mentre il (

) (spazio righe di )
detto spazio dei termini.
La dimensionalit della matrice termini-documenti indica la grandezza dello spazio semantico, cio i
concetti latenti presenti nei documenti. La dimensionalit dello spazio semantico (legato al concetto di
()) sar inferiore o al massimo uguale al numero di documenti. Da non confondere con il concetto di
dimensione di che il prodotto tra il numero di termini ed il numero di documenti.
Ipotizzo di interrogare lo spazio termini/documenti con un vettore cos fatto:

[

)]


Per misurare quanto due documenti sono simili dal punto di vista semantico, utilizzo la similarit del
coseno:


Il coseno tanto pi grande (fino ad arrivare ad 1), quanto un certo documento soddisfa la query.

Il Latent Semantic Indexing (LSI) una variante del VSM nel quale impiegata una approssimazione a
rank ridotto per la rappresentazione dello spazio vettoriale del database. In pratica, si sostituisce la
matrice originale con unaltra matrice il pi vicina possibile a quella originale, ma il cui spazio colonne
solo un sottospazio di quello della matrice originale. La riduzione del rank della matrice un modo per
rimuovere informazioni estranee (rumore) dal database.
Metodo QR nel query matching
Una volta costruita la matrice termini-documenti , in cui racchiudiamo la frequenza di ogni termine in
ogni documento , utilizziamo la fattorizzazione per identificare e rimuovere informazione ridondante
nella matrice del database.
Per la teoria della fattorizzazione sappiamo che ortonormale (

) e una matrice
triangolare superiore del tipo:
0

1
Metodi numerici per linformatica
2013/2014

69
se , oppure:
,

-
invece se .
Indichiamo con ,

- dove

dove ; con

() cio la dimensione dello


spazio semantico e ipotizziamo che sia massimo (minimo tra e ). Poich non tutte le colonne di
contribuiscono allo spazio colonne della matrice , possiamo partizionarla in questo modo:
,

-
dove

fatta dalle prime

colonne,

dalle restanti. Il contenuto semantico della collezione di


documenti sar dato esclusivamente dalle sole colonne della sottomatrice

di .
Possiamo riscrivere la fattorizzazione in questo modo:
,

- 0


da notare che

il vettore proiezione ortogonale di una query nello spazio semantico


generato da

, mentre

rappresenta il vettore le cui componenti sono le proiezioni ortogonali di


sulle colonne di (spazio semantico di ).
Precisione e recupero
Gli approcci per lindicizzazione sono tipicamente giudicati in termini di precisione e recupero.
La precisione (precision) la porzione di documenti pertinenti fra quelli recuperati, cio:






La precisione pu anche essere valutata rispetto ad un certo valore soglia, piuttosto che relativamente a
tutti i documenti recuperati: in questo modo, si pu valutare quanti fra i primi documenti recuperati
sono rilevanti per la query.
Mentre il recupero (recall) il rapporto fra il numero di documenti rilevanti recuperati e il numero di tutti
i documenti rilevanti disponibili nella collezione considerata:






Sia la precision che la recall sono numeri compresi tra 0 e 1 e sono interdipendenti tra loro. Se aumenta
uno, diminuisce laltro e viceversa.

Bisogna precisare che un documento combinazione lineare della base dei concetti, ma non detto che
ogni combinazione lineare della base costituisce un documento fisico dello spazio dei documenti.
Questo metodo non prende in considerazione la possibilit che i concetti si possano in qualche modo
sovrapporre. Cio il significato semantico di un concetto deve avere una intersezione vuota con ogni altro
concetto.
Metodo SVD nel query matching
Il metodo numerico che mi permette di eliminare il rumore da una matrice di dati strutturati l
troncata. Utilizziamo questo metodo, anche se computazionalmente pi pesante della , perch
vogliamo avere informazioni sia sullo spazio delle colonne (spazio dei documenti), sia sullo spazio righe
(spazio dei termini). Il metodo mi da solo informazioni sullo spazio colonne.
Studiando anche lo spazio dei termini, supporto lutente che formula una query, ad ottenere dei risultati
che tengano conto anche dei sinonimi e dei polisemi dei termini che ha inserito nella stringa di
interrogazione.
Metodi numerici per linformatica
2013/2014

70
Quindi se lutente ha inserito pochi termini, il sistema la completa con altri termini sinonimi che non
cambiano significato semantico allinterrogazione. Questa operazione completamente trasparente
allutente che ottiene cos un set migliore di documenti restituiti.
La decomposizione della matrice termini documenti fatta cos:


nella quale il fattore di sinistra base dello spazio colonna, il fattore di destra

base dello spazio


righe e il fattore centrale la matrice dei pesi ordinati in maniera decrescente.
Quando opero con la considero la matrice

che una riduzione della matrice originale e in cui


ogni documento

una approssimazione del documento e ogni termine

una approssimazione del


termine .
Se definiamo con

la -esima colonna della matrice identica , la -esima colonna della matrice


sar data dal prodotto

.
Come fatto per il metodo , possiamo pensare di utilizzare il metodo della similarit del coseno per fare
query matching tra la query inserita da un utente e lo spazio semantico ridotto dei documenti nella
matrice

. Matematicamente possiamo scrivere:



con .
Dalla formula precedente possiamo osservare che i elementi del vettore

sono le coordinate
della -esima colonna di

nelle basi definite dalle colonne di

, mentre i elementi del vettore


sono le coordinate nelle basi della proiezione

del vettore query nello spazio colonne di

.
Confronto termine-termine
Si costruisce una matrice termini-documenti che chiamiamo ottenuta dai vettori documenti ritornati
dalla query dellutente. Il confronto termine-termine tirato fuori dal calcolo del coseno degli angoli


tra un certo termine e tutti gli altri:

)(


dove

denota la -esima colonna della matrice identica .


Se il termine e il termine formano un angolo vicino ad 1 vuol dire che sono fortemente correlati. In
questo caso, i termini sono utilizzati in modo simile attraverso la raccolta di documenti e quindi hanno
funzioni simili nel descrivere la semantica di tali documenti. Geometricamente, i vettori occupano
posizioni vicine nello spazio riga della matrice termine-documento.

Il processo di raggruppamento dei termini secondo il loro contenuto detto clustering ed utile per
affrontare problemi di polisemia. Si ricordi che le colonne

formano una base nello spazio colonne di

, cos queste colonne possono essere usate al posto di quelle di

per il query matching. Similmente le


righe di

costituiscono una base dello spazio righe di

e possono rimpiazzare le di righe di

sempre
nel query matching.
Daltra parte se il coseno formato da due termini vicino a 0 significa che i vettori sono quasi ortogonali e
i termini non sono per nulla correlati.
Relevance feedback
Un sistema ideale di IR dovrebbe raggiungere alti livelli di precision per alti livelli di recall.
Sfortunatamente a causa di problemi come la polisemia e la sinonimia, la lista dei documenti restituiti per
una data query non quasi mai perfetta.
Per superare questo problema, la precision pu essere migliorata usando il relevance feedback,
Metodi numerici per linformatica
2013/2014

71
specificando quali documenti di un certo insieme restituito, sono rilevanti per le richieste di informazione
e usando quei documenti per migliorare la query originale.
Lidea che sta alla base del concetto di relevance feedback di coinvolgere lutente nel processo di
reperimento dellinformazione in modo tale da migliorare i risultati della ricerca. In questo caso previsto
che lutente fornisca dei giudizi di rilevanza per quanto riguarda i documenti inizialmente reperiti, in
seguito, alcuni algoritmi utilizzano questi giudizi per costruire una query migliore.
I passi principali del processo sono:
lutente inserisce una query iniziale (semplice e corta nella maggior parte dei casi)
il sistema reperisce un insieme di risultati
lutente seleziona alcuni dei risultati come rilevanti
il sistema cerca di rappresentare in maniera pi chiara lesigenza informativa dellutente,
basandosi sul feedback ricevuto
il sistema fornisce un nuovo insieme di risultati
Metodi numerici per linformatica
2013/2014

72
A survey of eigenvector Methods for Web Information Retrieval
[3]

Ogni pagina/documento del Web rappresentato da un nodo in un grafo molto ampio. Gli archi che
congiungono questi nodi rappresentano gli hyperlink tra i documenti.
HITS-IR (Hypertext Induced Topic Search for Information Retrieval)
Il metodo HITS-IR definisce le cosiddette autority e i cosiddetti hub. Unautority un documento con
tanti inlink (link entranti), mentre un hub un documento con tanti outlink (link uscenti).


Figura 8 - Authority (molti inlink) e hub (molti outlink)

Questo metodo si basa sulla seguente tesi fondamentale: buoni hub puntano a buone authority e buone
authority sono puntate da buoni hub. HITS assegna ad ogni pagina sia un punteggio di authority che
uno di hub.
Sia il grafo del Web e

la connessione tra il nodo e il nodo .


In ogni istante possibile conoscere entrambi i punteggi calcolando:

()

()

()

()


rispettivamente per i punteggi di authority e di hub allistante .
Queste equazioni possono essere scritte in forma matriciale con laiuto della matrice di adiacenza , i cui
elementi sono del tipo:

{



Nel modello HITS-IR, una riduzione dei costi computazionali legati al metodo delle potenze per il calcolo
degli autovettori dominanti delle matrici

(matrice di authority) e

(matrice di hub) si ottiene


calcolando uno solo degli autovettori dominanti. Infatti:

()

()

lautovettore dominante di authority e

()

()

lautovettore dominante di hub.

sono matrici simmetriche, semi definite positive e non negative, con gli autovettori ordinati e
diversi da 0.
Implementazione dellalgoritmo HITS
Limplementazione di HITS consiste di due passi principali:
si costruisce un grafo di vicinanza relativo ai termini della query
Metodi numerici per linformatica
2013/2014

73
si calcolano i punteggi di authority e di hub per ogni documento del grafo, costruendo cos due
liste ordinate dei documenti con i punteggi pi alti
Una volta che il grafo costruito, si determina la matrice di adiacenza corrispondente ai nodi in .
Lordine di grandezza di molto pi piccolo del numero totale di documenti del Web, per questo
calcolare i punteggi di authority e di hub usando gli autovettori dominanti di

comporta un
piccolo costo.
Il metodo HITS con la normalizzazione converge sempre.
Vantaggi e svantaggi di HITS
Un vantaggio dellalgoritmo HITS il suo doppio ranking, di modo che un utente libero di decidere se
essere interessato ad un buon documento authority o ad un buon documento hub. Inoltre, la dimensione
delle matrici molto piccola in confronto alla grandezza dellintero Web.
Daltra parte ci sono molti svantaggi. HITS dipendente dalla query. Ogni volta che si formula una query,
si deve costruire un grafo di vicinanza e risolvere almeno un problema di ricerca degli autovettori
dominanti. Questo deve essere fatto per ogni query. Per di pi HITS naturalmente predisposto allo
spam, cio aggiungendo un link da o verso una pagina, un utente pu influenzare i punteggi di authority
e di hub della sua pagina. Infine, c il problema del topic drift. Facendo riferimento a pagine molto
autorevoli ma off topic rispetto allargomento del proprio documento, questo assume di conseguenza un
punteggio molto alto, deviando cos il risultato allutente.
PageRank
Dopo che le pagine Web ritrovate dai robot sono indicizzate e catalogate, viene assegnato a ciascuna di
esse un valore di PageRank secondo limportanza percepita, prima che la query sia eseguita, di modo che
al momento della query venga presentata quasi istantaneamente la lista dei risultati relativi a quella
query.
Lidea base su cui si fonda questo metodo la seguente: i voti (link) da siti importanti dovrebbero avere
un peso maggiore dei voti da siti meno importanti e limportanza di un voto da una certa sorgente
dovrebbe essere attenuato dal numero dei siti che la sorgente vota.
Questa idea incapsulata nella seguente formula:
()
()


dove

contiene tutte le pagine che puntano a (inlink) e il numero degli outlink da . In altre
parole il rank (importanza) di una pagina data dalla somma dei pesi delle pagine che hanno un
outlink verso quella pagina, normalizzata col numero di outlink di .
Luso dellimportanza, piuttosto che della rilevanza la chiave del successo di Google.
Literazione di PageRank relativa alla matrice di Google

converge allautovettore sinistro normalizzato

, normalizzato in norma 1, che soddisfa la relazione:


con

e la matrice i cui elementi sono cos definiti:



dove

rappresenta il numero di outlink dalla pagina

.
Se il limite esiste, il metodo delle potenze permette di definire il vettore di PageRank in questo modo:


La matrice di Google per righe una matrice non negativa avente la somma degli elementi di ogni riga
uguale a 0 o ad 1. Le righe a somma 0 corrispondono ai nodi dangling, cio nodi che non hanno outlink,
ma solo inlink.
Metodi numerici per linformatica
2013/2014

74
Questi nodi creano parecchi problemi perch rendono la matrice riducibile, in quanto il grafo associato
non fortemente connesso. In pratica, dai nodi dangling non sar possibile raggiungere altre pagine
poich un qualsiasi cammino si interromperebbe su di essi.
Sostituendo a tutte le righe nulle il valore

, mi assicuro la irriducibilit della matrice . Allo stesso tempo


mi garantisco che la somma su queste righe faccia sempre 1. Sto quindi ipotizzando che

sia la probabilit
di avere un link uscente da un certo nodo dangling.
La modifica alla matrice di Google per righe porta alla creazione della matrice

che una matrice


stocastica ma quasi certamente riducibile. Si forza la irriducibilit rendendo ogni stato direttamente
raggiungibile da ogni altro. Per fare questo, si ricorre ad una matrice di perturbazione applicata alla
matrice stocastica

in modo tale che si crei la matrice di Google:

( )
dove (

) e uno scalare compreso tra 0 e 1.


Successivamente Google adott una matrice pi realistica ma meno democratica utilizzando una matrice
di perturbazione cos fatta:


dove

un vettore di personalizzazione, modificato a pagamento.


Implementazione dellalgoritmo di PageRank
Un sistema di PageRank richiede due step principali:
una scansione completa dei documenti determina un sottoinsieme di nodi contenenti i termini
della query. Questo sotto insieme chiamato insieme di rilevanza per la query
linsieme di rilevanza ordinato secondo i punteggi di PageRank di ogni documento nellinsieme.
In questo modo, il PageRank non dipende dalla query. Infatti, ogni documento ha un punteggio di
PageRank che indipendente da tutte le query
Vantaggi e svantaggi di PageRank
Un vantaggio la sua impenetrabilit virtuale allo spamming, mentre un suo svantaggio che, dal
momento che indipendente dalla query, non riesce a distinguere tra pagine autorevoli in generali e
pagine autorevoli in base allargomento della query.





Metodi numerici per linformatica
2013/2014

75
KDD (Knowledge Discovery in Databases)
Il KDD (Knowledge Discovery in Databases) un processo automatico di esplorazione dei dati che ha lo
scopo di identificare pattern validi in un insieme di dati di grandi dimensioni ed elevata complessit.
I passi principali di questo processo sono:
1. Comprensione del dominio applicativo: si definiscono gli obiettivi e scelte successive
2. Esplorazione iniziale dei dati: si effettua una pulitura dei dati (per esempio per identificare e
rimuovere dati codificati in modo errato) e una loro successiva trasformazione
o Selezione dei dati: dati disponibili, dati addizionali, dati da integrare
o Pre-processing: gestione di missing values, rumore, outliers
o Trasformazione dei dati: feature selection, discretizzazione, ecc.
3. Selezione dei compiti: classificazione, regressione, clustering
4. Selezione dellalgoritmo di DM
5. Impiego dellalgoritmo di DM
6. Valutazione e interpretazione dei risultati (rispetto agli obiettivi definiti al passo 1)
7. Utilizzo della conoscenza scoperta: incorporare la conoscenza in un altro sistema per ulteriori
operazioni
DM (Data mining)
Il DM consiste nelluso di tecniche statistiche da utilizzare con i databases aziendali per scoprire modelli e
relazioni che possono essere impiegati in un contesto di business. Il DM consiste nellesplorazione e
nellanalisi, attraverso mezzi automatici e semiautomatici, di grosse quantit di dati allo scopo di scoprire
modelli e regole significative.
Ci sono due categorie di metodi per il DM:
m. verification-oriented: valutano le ipotesi generate da un esperto umano
m. discovery-oriented: identificano automaticamente pattern nei dati. Si suddividono in:
o m. descrittivi: orientati allinterpretazione dei dati (clustering, visualizzazione)
o m. predittivi: costruiscono modelli di comportamento per previsioni su nuovi esempi
I dati
I dati alla base di un processo di data mining si classificano in:
dati strutturati: sono rappresentati in forma tabellare in cui le colonne sono le feature
(caratteristiche) degli oggetti, mentre le righe sono i valori delle feature per ogni entit (esempio)
dati semi-strutturati: nonostante non vi siano limiti strutturali allinserimento dei dati, le
informazioni vengono, comunque, organizzate secondo logiche strutturate e interoperabili
dati non strutturati: registrazioni video e multimediali di eventi e processi
Feature (caratteristiche)
Le feature caratterizzano le variabili o gli attributi associati ai dati. Ci sono molti tipi di feature, tra le quali
le pi comuni sono:
f. numeriche: includono valori reali o interi
f. categoriche (o simboliche): non sono misurabili e non soddisfano relazioni dordine o di
distanza
f. discrete: sono dette variabili qualitative e sono misurate con:
o scale nominali: senza relazioni dordine e usano simboli o numeri. I numeri indicano solo
diversi valori dellattributo
o scale ordinali: consistono in un ordinamento (elenco) ordinato. Una feature discreta in
scala ordinale una variabile categorica per cui vale la relazione dordine (anche se non
ordinale), ma non di distanza
Metodi numerici per linformatica
2013/2014

76
f. continue: sono dette variabili quantitative e misurate con:
o scale di intervallo: zero posizionato arbitrariamente (non indica assenza di ci che
misurato)
o scale di rapporto: zero posizionato in modo assoluto
Gli smoother possono essere utilizzati per discretizzare variabili continue, trasformandole in
variabili discrete
Trasformazioni di dati
La trasformazione dei dati pu migliorare i risultati delle tecniche di DM e alleviare alcune problematiche
quali: dati con errori o incompleti, mal distribuiti, afflitti da forte asimmetria, con numerosi picchi.
Normalizzazione
La normalizzazione dei dati utile quando necessario calcolare le distanze tra punti in uno spazio -
dimensionale. Una tecnica largamente utilizzata consiste nel cambiamento dei valori numerici in modo
che essi siano scalati in uno specifico intervallo. Esempi:
scaling decimale: sposta il punto decimale dividendo ogni valore numerico per la stessa potenza
di 10, in modo da scalarli nellintervallo [-1,1]
min-max: tecnica appropriata quando sono noti i valori minimo e massimo di una variabile.
Siano il vettore delle feature,

la -esima componente, la formula da applicare la seguente:


z-score normalization: una trasformazione appropriata per essere utilizzata con algoritmi di DM
basati su misure di distanza. particolarmente utile quando il massimo e il minimo non sono noti
ma ha lo svantaggio di trasformare i dati in modo da renderli non riconoscibili.
Siano il vettore delle feature,

la -esima componente,

la media e la deviazione
standard del vettore. La formula da applicare la seguente:


Data smoothing
Il data smoothing consiste nellapplicazione di una funzione di filtro il cui scopo attenuare il rumore
generato da fenomeni di disturbo legati a fattori di scala molto piccoli o molto lenti, prestando poca
attenzione ad una stretta corrispondenza dei valori dei dati.
Missing data
Esistono diverse cause che producono dataset incompleti, ovvero dataset in cui sono presenti valori
mancanti, come ad esempio la difficolt nel calcolare il valore per uno specifico campione, la mancanza di
conoscenza, oppure ci sono dati considerati irrilevanti o dimenticati.
In generale, i metodi per il trattamento dei dati mancanti si possono suddividere in:
metodi sequenziali: il dataset incompleto convertito in un dataset completo e successivamente si
applica una tecnica di DM
o eliminazione degli esempi con valori mancanti. un metodo utilizzato quando la
dimensione del dataset grande e/o la percentuale dei missing value bassa, ma produce
una perdita di informazione
o sostituzione dei missing value con valori costanti: si sceglie il valore pi comune della
feature oppure il suo valor medio corrispondente
o global closest fit: si sostituisce il valore mancante con il valore dellattributo pi
somigliante. In pratica si confrontano due vettori di feature alla volta (quello contenente il
Metodi numerici per linformatica
2013/2014

77
missing value e il candidato ad essere il closest fit) e si calcola la distanza tra questi: il
vettore con la minima distanza viene usato per determinare il valore mancante
metodi paralleli: in cui i valori mancanti sono considerati allinterno del processo di acquisizione
di conoscenza
Outliers
Gli outliers sono dati inusuali, non consistenti o significativamente diversi dal resto degli esempi.
Formalmente il processo di individuazione ed eliminazione degli outlier pu essere descritto come il
processo di selezione di degli esempi che sono dissimili, eccezionali o inconsistenti con il resto del
dataset.
Visualizzazione grafica di variabili
Per una efficace comprensione delle variabili studiate, si pu far ricorso a numerose rappresentazioni
grafiche a seconda che si tratti di dati univariati o di dati multivariati.
Per rappresentare la prima categoria di dati si ricorre spesso alluso di istogrammi, dei grafici compatti
che suddividono il range di dati in intervalli di uguale larghezza, per aumentare linformazione visiva.
Una significativa variazione dellistogramma il diagramma di Pareto che un istogramma con celle
ordinate in senso decrescente, affiancato dal grafico delle frequenze cumulate (detto curva di Lorenz):
le categorie sono ordinate in modo tale che quella con maggior frequenza si trovi sulla sinistra del
grafico, seguita da quelle di frequenza via via minore
permette di stabilire quali sono i maggiori fattori che hanno influenza su un dato fenomeno
Lo scatter plot o diagramma di dispersione un grafico cartesiano formato dai punti ottenuti dalla
rilevazione di due variabili numeriche: una variabile descrittiva (explanatory variable) sulle ascisse e una
variabile suscettibile (response variable) sulle ordinate.

Infine per rappresentare dati multivariati si ricorre a due principali categorie di grafici: il Co-Plot e i
diagrammi di Trellis.
I Co-Plot sono una successione di scatter-plot di tipo condizionato, dato che ciascun diagramma
corrisponde a un particolare intervallo di valori di una terza variabile o fattore di condizionamento.
Costituiscono un metodo di visualizzazione che permette di evidenziare come una variabile di output
dipende da una variabile di input, date altre variabili descrittive.
I diagrammi (o grafici) di Trellis permettono di visualizzare lesistenza di strutture nei dati mediante
lutilizzo di grafici 1D, 2D o 3D.
Metodi numerici per linformatica
2013/2014

78
Bibliografia

[1] M. Turk e A. Pentland, Eigenfaces for Recognition, Journal of Cognitive Neuroscience, vol. 3, n. 1, pp.
71-86, 1991.
[2] M. W. Berry, Z. Drmac e E. R. Jessup, Matrices, Vector Spaces, and Information Retrieval, vol. 41, n.
2, pp. 335-362, giugno 1999.
[3] A. N. Langville e C. D. Meyer, A Survey of Eigenvector Methods for Web Information Retrieval, pp.
1-27, 12 ottobre 2004.

You might also like