Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
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.
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 ,
]
Linsieme di tutti i vettori colonna a componenti reali (rispettivamente complessi) costituisce lo spazio
euclideo
(rispettivamente lo spazio
).
Un vettore
]
dove
, (
)
Se
, 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
] [
] [
] ,-
Matrice trasposta e H-trasposta
Data una matrice
, si definisce trasposta
Gli elementi
della matrice
di per e
. Se la matrice ad elementi complessi, si definisce la matrice trasposta coniugata
i cui
elementi
, dove
.
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
( )
()
()
( )
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
.
Diremo che una matrice anti-simmetrica 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
Matrice riducibile e irriducibile
Una matrice
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
e
Inoltre:
()
()
()
()
()
}
()
()
()
Se abbiamo un punto in un sistema di assi cartesiani di coordinate ( ), il suo riflesso rispetto allasse
orizzontale 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
per ogni
e .
Somma tra matrici
La somma di due matrici
la matrice
di elementi
, per e
. Lelemento neutro rispetto alla somma in
];
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
, 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
definita nel
modo seguente:
,
Osserviamo che ogni colonna 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:
Se
in
e ogni
coppia di scalari e , si ha:
( )
la trasformazione lineare. Viceversa, si pu mostrare che ogni trasformazione lineare da
in
per
un vettore
Il vettore
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
detta inversa di
se:
In tal caso si scrive
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
()
()
()
()
,
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
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
consiste di tutti zeri, allora anche le righe sotto devono avere componenti tutte uguali a zero
Se la prima componente non nulla in
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
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
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
()
dove il termine ()
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
) (
)
(
) (
)
(
) ()
(
) ()
(
) (
)
Un esempio legato alle matrici
chiamato sistema associato delle equazioni normali che possiede delle propriet estremamente
importanti:
Il sistema delle equazioni normali sempre consistente perch
) (
)
Se consistente allora e
e risulta:
(
Consistenza di un sistema lineare
Dati una matrice qualsiasi
e due vettori
Per si ha la cosiddetta norma euclidea. In particolare, per vettori colonna
la norma
euclidea definita come:
La norma
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
In altre parole, in
. In
Metodi numerici per linformatica
2013/2014
19
particolare, date due matrici quadrate
2.
3.
,
4.
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
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
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
)
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
Se prendiamo due vettori
dove [
] e [
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 associativa)
o
(propriet commutativa)
Metodi numerici per linformatica
2013/2014
21
o
() () (propriet associativa)
o ,
+, 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
sono formati sia dalle rette che dai piani passanti per lorigine. Prendendo tre
vettori qualsiasi
posso creare:
o *
sono linearmente
indipendenti. In altre parole
-.
Possiamo aggiungere ancora:
() *,
-+ *+ (,
-) (,
-)
o {
}
come
()
()
()
1
()
()
()
1 [
()
()
()
()
()
()
]
Metodi numerici per linformatica
2013/2014
22
Essa rappresenta un piano passante per lorigine e
]
o *
. Le coordinate della
retta sono del tipo , con . Langolo formato dagli elementi che appartengono allo
spazio generato dal vettore
.
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
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
. In altre
parole () un sottospazio di
()
} ( )
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 *
Una base , quindi, un insieme di vettori linearmente indipendenti che genera tutto lo spazio .
Sia
sottospazio e *
, -
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
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
) (
)
Dalle precedenti uguaglianze deduciamo che:
()
()
(
)
(
)
Indipendenza lineare
I vettori *
segue che
sono le colonne
di una matrice
) *+
(
(righe di )
Quando trattiamo una matrice quadrata
).
Matrice di Vandermonde
La matrice di Vandermonde una matrice
della forma:
(
,
dove
()
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
.
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
Dimostrazione di ortogonalit in
.
Supponiamo che e siano due vettori ortogonali (perpendicolari) in
( )
( )
)( )
Quindi i due vettori sono ortogonali in
se e solo se
] e [
]
e poniamo un vettore [
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
tali che
,
possiamo scrivere che:
con
con
In altre parole
se e solo se
. 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:
che:
o quando
)
o quando
)
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 *
{
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
Ovvero la sua trasposta coincide con la sua inversa.
Metodo di ortonormalizzazione di Gram-Schmidt
Siano *
{
Costruiamo ora una matrice le cui colonne
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 ,
,
In generale per una matrice qualsiasi
,
Se
Un elemento qualsiasi di fattorizzata con questo metodo, nel caso che , possibile
scriverlo nel seguente modo:
Autovalori e autovettori
Data un matrice quadrata
()
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 *(
) (
) (
+
linearmente indipendente.
Conoscendo gli autovalori di una matrice quadrata
()
e il suo trace come:
()
()
Nota. Non posso calcolare gli autovalori di una matrice rettangolare
, ma al massimo posso
considerare la matrice
)
unautocoppia della potenza -esima di ,
) (
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
() (( ))
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
()
()
Similarit
Date due matrici quadrate
invertibile (non
singolare con () )
. Il prodotto
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
invertibile
,
Le colonne della matrice costituiscono un insieme completo di autovettori linearmente indipendenti
associati ai
) 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
. Possiamo scrivere
allora:
Consideriamo ora un vettore iniziale
scelto arbitrariamente in
Lunico vincolo che imporremo su
, 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
.
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 |
, applicando
il metodo delle potenze alla matrice ( )
.
Se
() allora ( )
Il metodo delle potenze inverse :
( )
dove
con
.
Se
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
In altre parole la proiezione del vettore
, tende a
.
Autovalori della matrice inversa
Si pu dimostrare che, data una matrice quadrata
*
Se gli autovalori sono in relazione dordine del tipo
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
Applicazione del metodo delle potenze per approssimare un autovalore e un
autovettore generico
Data una matrice
con autovalori
:
( ) ( )
Posso anche scrivere:
( ) ( )
La nuova quantit ( ) rappresenta lautovalore della matrice .
La matrice inversa ( )
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
. Cio
invertibile
dove
.
Metodo QR per il calcolo degli autovalori e autovettori dominanti
Data una matrice
e costruisco la fattorizzazione di
, cio decompongo
dove
ortonormale e
triangolare superiore.
tale che
.
Costruisco ora la matrice successiva nella successione,
, cio:
A questo punto verifico se
effettivamente simile ad
) (
):
Combinando la relazione
Ho appena dimostrato che la matrice
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
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
+
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
1
dove
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 ,
In particolare, considerando il prodotto
-
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
Lo spazio generato dalle colonne di
dove ,
-, ,
- e .
/.
Valgono le seguenti propriet:
1. () *
+ *
+
Dimostrazione.
Prendo un ()
/ ,
-
Osserviamo che ,
dove
- e
/ ,
- .
/ *
+
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 () *
.
Osserviamo che ,
dove
- e
- .
/ *
+
3. (
) *
+ dove
4. (
) *
+
5. ()
6. I
con autovettori *
Premettendo che
sar
della forma:
* .
/ (
* .
/ (
Per il teorema di Schur, possiamo affermare quindi che la matrice
sono ,
-
7. I
con autovettori *
Allo stesso modo di prima, applicando Schur possiamo dire che la matrice
simile alla
matrice
8.
9. La norma-2 della matrice rettangolare, decomposta in SVD, uguale a:
dove (
. In generale:
()
()
Data una matrice quadrata
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
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
Chiamo
con (
) . Le
) {
.
) ((
) (
)
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
) (
) (
)
poich moltiplico le
.
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
. 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
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
Osservando che il vettore
]
[
allora la norma
sar uguale a:
Ho ottenuto lequazione di un ellissoide in
.
I valori singolari
. La natura
dellimmagine (
Possiamo affermare che
. Poich
una
matrice ortogonale (quindi conserva la lunghezza), influisce solo sullorientazione di (
). Segue che
(
.
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
. 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
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
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
()
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
()
]
dove ogni
()
()
()
()]
Inoltre per ogni
e di conseguenza il gradiente delle
La matrice Jacobiana della funzione di partenza
()
0
()
()
()
1
(
()
()
()
()
()
()
()
()
()
Polinomio di Taylor
Per una funzione scalare
Sia una funzione scalare sufficientemente regolare
4
. Preso un
()
(
)
(
()
(
dove il punto interno allintervallo definito dai punti e
.
Per una funzione vettoriale
Considero ora una funzione
, per ogni in un
intorno di
()
(
()
(
) (
)
dove il punto in un intorno di
.
Per una funzione vettoriale
Infine, se avessi una funzione vettoriale definita come
()
(
)
(
) (
)
dove (
()
(
)
(
) ((
)
dove
(
)
(
)
) 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
,
posso scrivere il polinomio di Taylor per lapprossimazione della funzione
()
in un certo punto, in
questo modo:
()
(
)
(
) (
)
dove
(
)
(
)
) e tangente alla superficie
generata dal grafico di
()
e (
()
(
)
(
)
(
)
(
)
.
(
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
)
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
)
con
)
.
Tornando alla funzione
()
, possiamo scrivere che:
)
con
)
.
Per una funzione vettoriale
Sia
()
Se
sar vincolato.
Le condizioni che ci assicurano lesistenza del punto di minimo sono:
)
()
)
()
Teorema.
Il punto
se risulta che:
1.
(
)
2.
)
definito positivo (
)
. Essendo la matrice Hessiana simmetrica
significa che lo spettro .
)
/
), 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
()
(
)
(
) (
)
Per lo scopo dellottimizzazione, considero il polinomio di Taylor scritto sopra, arrestato al secondo
ordine:
()
(
)
(
)
e supponiamo che
()
abbia un punto di minimo in
)
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 (
con soluzione del sistema lineare:
)
(
)
(
)
(
)
.
)
/
)
da cui ottengo che la soluzione di questo sistema :
)
Sia
()
Inoltre sia
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
()
()
()
()
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
Si sceglie un vettore direzione
) e
si determina il punto
e di direzione
,
cio
Metodi numerici per linformatica
2013/2014
46
Il passo di discesa
)
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
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
)
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
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
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
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
)
()
()
Prendendo valori di
minimo di su .
Detta *
)
}
, 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
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
) (
) (
)+
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
)
|
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
,
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
), perci
esister linversa di
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
)(
)-,
)-
Notiamo che la quantit
) 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 (
con . Per rimandare tutto ad una correlazione lineare passo al logaritmo di ambo i
membri ottenendo: (
. Sostituendo con
e
con
. Le coordinate della
funzione saranno 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
, 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
Scriviamo il generico elemento della matrice
vista prima:
(
per .
Dimostriamo che
non singolare.
Se per assurdo (
) allora il sistema
) *+
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.
*+
. 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
, si
chiama pseudoinversa la matrice
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
2.
Si verifica facilmente che la matrice
la matrice diagonale
ad elementi
, con
con
In altre parole
]
Matrice simmetrica
Sia
sono reali.
Matrice definita positiva
Sia
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 (
)
(
)(
) (
) (
) (
)
che rappresenta la varianza totale del dataset.
Inoltre la matrice
simmetrica perch (
) (
)
(
) (
)
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
, 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
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
:
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
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
, la
sua matrice di covarianza
.
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 ,
Vogliamo che
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 ,
dove ogni colonna
Scriviamo il primo vettore colonna
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
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
) (
)
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
)
.
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
. 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
la cui varianza :
(
) (
)
con
.
Con questo procedimento sto diagonalizzando la matrice di covarianza
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
e sono ortogonali
tra di loro (
), la (
autovalore di
)
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
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 (
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
Vettorizzo ogni
. 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
massimo.
I vettori
e gli scalari
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
) 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
.
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
()
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
]
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
e valuto il vettore differenza
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
sar fatto nel seguente modo:
dove
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
,
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
-
dove
colonne,
di .
Possiamo riscrivere la fattorizzazione in questo modo:
,
- 0
da notare che
, mentre
nella quale il fattore di sinistra base dello spazio colonna, il fattore di destra
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
con .
Dalla formula precedente possiamo osservare che i elementi del vettore
sono le coordinate
della -esima colonna di
sono le coordinate nelle basi della proiezione
.
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
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
()
()
()
()
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
()
()
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
con
e la matrice i cui elementi sono cos definiti:
dove
.
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
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
( )
dove (
dove
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.