SVD

Geometria e algebra di applicazioni lineari, vettori e matrici

La decomposizione ai valori singolari fa qualcosa che nessun'altra fattorizzazione riesce: ogni matrice, quadrata o rettangolare, a rango pieno o no, si scompone in tre pezzi geometrici puliti.

Leggendo da destra a sinistra, ogni applicazione lineare è lo stesso movimento in tre passi: Vᵀ ruota l'input per allinearlo agli assi giusti, Σ (diagonale, con i valori singolari non negativi σ₁ ≥ σ₂ ≥ …) scala ciascun asse, e U ruota il risultato nello spazio di output. Un cerchio di input mappa sempre a un'ellisse, e i valori singolari sono le lunghezze degli assi di quell'ellisse.

Nella figura, guarda il cerchio unitario diventare un'ellisse i cui semi-assi sono esattamente i valori singolari.

Dove si trova nel MLLa SVD è la matematica dietro la compressione dei modelli. LoRA approssima un aggiornamento dei pesi con un prodotto a rango basso, sfruttando il fatto che l'aggiornamento utile vive in poche direzioni a σ alto. La PCA è SVD dei dati centrati. La SVD troncata comprime tabelle di embedding e immagini tenendo solo le direzioni singolari dominanti, la stessa mossa "tieni i σ grandi" ogni volta.
▶ SVD
← Matrici SimmetrichePCA via SVD →