Decomposizione SVD

Indice dei contenuti

    La Singular Value Decomposition (SVD) è la fattorizzazione più generale e informativa dell’algebra lineare numerica: si applica a qualsiasi matrice rettangolare e rivela la struttura geometrica fondamentale della trasformazione lineare associata.

    Vedi anche: Decomposizione Polare, Teorema Spettrale, Numero di Condizionamento, Fattorizzazione QR.

    Enunciato

    Teorema (SVD): per ogni A \in M_{m \times n}(\mathbb{R}) esistono:

    • U \in M_{m \times m}(\mathbb{R}) ortogonale (UU^T = I_m)
    • \Sigma \in M_{m \times n}(\mathbb{R}) con \Sigma_{ii} = \sigma_i \geq 0 e tutti gli altri elementi nulli
    • V \in M_{n \times n}(\mathbb{R}) ortogonale (VV^T = I_n)

    tali che:

    A = U \Sigma V^T

    I valori \sigma_1 \geq \sigma_2 \geq \cdots \geq \sigma_{\min(m,n)} \geq 0 si chiamano valori singolari di A. Le colonne di U sono i vettori singolari sinistri, le colonne di V i vettori singolari destri.

    Interpretazione Geometrica

    La SVD decompone ogni trasformazione lineare A in tre operazioni:

    1. Rotazione/riflessione V^T nello spazio sorgente
    2. Scalatura \Sigma lungo assi coordinati (con fattori \sigma_i)
    3. Rotazione/riflessione U nello spazio immagine

    L’immagine della sfera unitaria è un ellissoide con semiassi di lunghezza \sigma_1, \sigma_2, \ldots

    Relazione con Autovalori

    I valori singolari di A sono le radici quadrate degli autovalori di A^T A (o equivalentemente di AA^T):

    A^T A = V \Sigma^T \Sigma V^T, \quad AA^T = U \Sigma \Sigma^T U^T

    Per una matrice simmetrica definita positiva A: i valori singolari coincidono con gli autovalori.

    Pseudoinversa di Moore-Penrose

    La pseudoinversa A^+ di A si definisce come:

    A^+ = V \Sigma^+ U^T

    dove \Sigma^+ è ottenuta invertendo i valori singolari non nulli: (\Sigma^+)_{ii} = 1/\sigma_i se \sigma_i > 0, altrimenti 0.

    La pseudoinversa soddisfa le quattro condizioni di Moore-Penrose:

    1. AA^+A = A
    2. A^+AA^+ = A^+
    3. (AA^+)^T = AA^+
    4. (A^+A)^T = A^+A

    Per sistemi lineari A\vec{x} = \vec{b}: la soluzione ai minimi quadrati di norma minima è \vec{x}^+ = A^+\vec{b}.

    Rango, Nucleo e Immagine

    • Il rango di A è il numero di valori singolari non nulli.
    • Le colonne di U corrispondenti a \sigma_i > 0 formano una base dell’immagine di A.
    • Le colonne di V corrispondenti a \sigma_i = 0 formano una base del nucleo di A.

    Approssimazione a Basso Rango

    Teorema di Eckart-Young-Mirsky: la migliore approssimazione di rango k a A in norma spettrale (o di Frobenius) è:

    A_k = \sum_{i=1}^k \sigma_i \vec{u}_i \vec{v}_i^T

    con errore \|A - A_k\|_2 = \sigma_{k+1}.

    Questa proprietà è alla base della compressione dati: conservando solo i primi k valori singolari si ottiene un’approssimazione di A con k(m+n) numeri invece di mn.

    Applicazioni ingegneristiche

    • Compressione di immagini: la SVD applicata a una matrice immagine A permette di approssimarla con una matrice a basso rango; conservando k valori singolari si riduce la dimensione dei dati mantenendo le caratteristiche visive principali.
    • Analisi delle componenti principali (PCA): la PCA è equivalente alla SVD della matrice dei dati centrata; i valori singolari danno la varianza spiegata da ciascuna componente principale.
    • Sistemi di raccomandazione: Netflix, Spotify e simili usano la fattorizzazione a basso rango (variante SVD) per stimare le preferenze degli utenti su item non ancora valutati.
    • Controllo robusto: la norma H_\infty di un sistema di controllo è il massimo valore singolare della matrice di trasferimento; la sintesi H_\infty minimizza questa norma.
    • Visione artificiale: la stima della matrice fondamentale (geometria epipolare) impone il vincolo di rango 2, ottenuto azzerando il terzo valore singolare della matrice 3 \times 3 stimata.

    Ultimo aggiornamento: