Decomposizione ai valori singolari
Fattorizza qualsiasi matrice m×n in A = U Σ Vᵀ col metodo di Jacobi unilatero. I valori singolari sono in genere irrazionali, quindi questo strumento è numerico.
Calcolato
Inserisci una matrice e decomponila.
Matrice di input A3×2
Valori singolari (diagonale di Σ)
0.00000.0000
Rango: 0
U
0
0
0
0
0
0
Σ (come matrice diagonale)
0
0
0
0
Vᵀ
1
0
0
1
A = U · Σ · Vᵀ
Come funziona
- 1
Decomposizione ai valori singolari (A = U Σ Vᵀ)
L'input è 3×2. Uso rotazioni di Jacobi unilatero per ortogonalizzare le coppie di colonne di A.
- Obiettivo: fattorizzare A = U Σ Vᵀ dove U (m×r) e V (n×r) hanno colonne ortonormali e Σ è diagonale con valori singolari non negativi.
- Metodo: Jacobi unilatero — ruota ripetutamente coppie di colonne (i, j) di A finché ogni coppia di colonne non è ortogonale.
- Dopo la convergenza: σₖ = ‖(A ruotata)ₖ‖, Uₖ = (A ruotata)ₖ / σₖ, e V accumula le rotazioni.
- 2
Convergenza
Jacobi è confluito dopo 1 cicli e 0 rotazioni; tutte le coppie di colonne sono ora ortogonali entro la tolleranza.
- Per-pair skip rule: |γ| ≤ 1e-12 · √(αβ), where α = ‖Bᵢ‖², β = ‖Bⱼ‖², γ = 2·Bᵢ·Bⱼ.
- Jacobi angle: ζ = (β − α) / γ, t = sign(ζ) / (|ζ| + √(1 + ζ²)), c = 1/√(1+t²), s = t·c.
- Each rotation [[c, s], [−s, c]] is applied to columns i, j of both B and V.
- 3
Valori singolari e rango
Trovati 2 valori singolari; rango = 0.
- σ = [0, 0]
- Ogni σₖ è la norma di colonna della A ruotata, in ordine decrescente.
- 2 valori singolari sono sotto la tolleranza di rango 1e-9 (zero numerico).
- 4
Verifica di ricostruzione
‖A − U Σ Vᵀ‖_F ≈ 0.000e+0 (dovrebbe essere ~0 entro la precisione numerica).
- U (3×2):
- [ 0, 0 ] [ 0, 0 ] [ 0, 0 ]
- Σ (diagonal): [0, 0]
- V (2×2):
- [ 1, 0 ] [ 0, 1 ]