Singulärwertzerlegung Vorlesung Computergestützte Mathematik zur Linearen Algebra Lehrstuhl für Angewandte Mathematik Sommersemester 2009 18. Juni 2009 Symmetrische Matrizen Erinnerung: Für symmetrische Matrix A ∈ Rn,n gilt: ◮ alle Eigenwerte von A sind reell ◮ es gibt eine Orthonormalbasis {q1 , . . . , qn } von Eigenvektoren von A: Q T AQ = D = diag(λ1 , . . . , λn ) ◮ wobei Q = [q1 | . . . | qn ] orthogonal (Q T Q = QQ T = I ) Es gilt: Rang(A) = p genau dann, wenn genau p Eigenwerte λj von Null verschieden sind. Eigenschaften von AT A Lemma. Es sei A ∈ Rm,n , m ≥ n. 1. AT A ist symmetrisch und positiv semidefinit. 2. AT A ist genau dann positiv definit, wenn Kern(A) = {0}. 3. In jedem Fall gilt Kern(AT A) = Kern(A) Bild(AT A) = Bild(AT ) = Kern(A)⊥ Beweis ◮ AT A ist offensichtlich symmetrisch. Ferner ist x T AT Ax = (Ax)T (Ax) = kAxk2 ≥ 0 für alle x, ◮ d.h. AT A positiv semidefinit und Kern(AT A) ⊂ Kern(A). Wegen Kern(A) ⊂ Kern(AT A) folgt Kern(AT A) = Kern(A). Bild(AT A) ⊂ Bild(AT ) ist klar, Gleichheit folgt aus dim Bild(AT A) = n − dim Kern(AT A) = n − dim Kern(A) = Rang(A) = dim Bild(A) = dim Bild(AT ). ◮ Seien z ∈ Bild(AT ) und x ∈ Kern(A) beliebig, dann gibt es y ∈ Rm mit z = AT y und x T z = x T AT y = (Ax)T y = 0. Singulärwertzerlegung Es sei A ∈ Rm,n , m ≥ n mit Rang(A) = p. λ1 , . . . , λn seien die absteigend sortierten Eigenwerte von AT A λ1 ≥ λ2 ≥ . . . ≥ λp > λp+1 = . . . = λn = 0 und v1 , . . . , vn ∈ Rn sei eine Orthonormalbasis von Eigenvektoren (von AT A). Definiere 1 ui = √ Avi , λi i = 1, . . . , p, dann gilt 1 1 λj 1 uiT uj = √ p (Avi )T Avj = p viT (AT A)vj = p viT vj = δij λi λj λi λj λi λj Singulärwertzerlegung II Damit ist {u1 , . . . , up } eine Orthonormalbasis von Bild(A), denn dim Bild(A) = dim Bild(AT A) = Rang(AT A) = p Ergänze diese durch weitere m − p Vektoren up+1 , . . . , um zu einer Orthonormalbasis von Rm . Diese Vektoren spannen Bild(A)⊥ = Kern(AT ) auf: p 1 AT ui = √ AT Avi = λi vi , λi T A ui = 0 i = 1, . . . , p i = p + 1, . . . , m Singulärwertzerlegung III Definition und Satz. Jede Matrix A ∈ Rm,n mit Rang(A) = p besitzt eine Singulärwertzerlegung, d.h. ein System {σi , uj , vk | i = 1, . . . , p, j = 1, . . . , m, k = 1, . . . , n} mit σ1 ≥ σ2 ≥ . . . , ≥ σp > 0 und Orthonormalbasen {uj }m j=1 und {vk }nk=1 des Rm bzw. Rn , wobei Avi = σi ui , AT ui = σi vi , i = 1, . . . , p, Avk = 0, AT uj = 0, j, k > p σi heißen Singulärwerte von A, vi rechte und ui linke Singulärvektoren. Singulärwertzerlegung IV In Matrizenschreibweise: U = [u1 , . . . , um ] ∈ Rm,m , σ1 0 0 .. .. . . Σ= 0 σp 0 0 ··· 0 0 V = [v1 , . . . , vn ] ∈ Rn,n Dann gilt U T U = I , V T V = I und A = UΣV T , p X σi ui viT , A= i =1 AT = V ΣT U T , p X T σi vi uiT A = i =1 Σ = U T AV , Geometrische Interpretation Sei S = {α1 v1 + · · · + αp vp | α12 + · · · + αp2 = 1} die Einheitssphere im Unterraum span{v1, . . . , vp } des Rn . Dann ist E = {Ax | x ∈ S} ein Ellipsoid im Unterraum span{u1 , . . . , up } in Rm mit den Halbachsen {σi ui | i = 1, . . . , p}. Geometrische Interpretation II Beweis: Für x ∈ S gilt: Ax = α1 σ1 u1 + · · · + αp σp up = β1 u1 + . . . + βp up , wobei die β1 , . . . , βp die Ellipsoidgleichung 1 1 2 β + · · · + 2 βp2 = α12 + . . . + αp2 = 1 2 1 σ1 σp erfüllen. Beispiel in der Ebene 1 2 A= , 0 2 Matlab: [U,S,V] = svd(A) 1.0 3 2 0.5 v2 v1 1 0.0 0 −1 −0.5 −1 σ2 u2 σ1 u1 −2 −1 −0.5 0.0 0.5 1.0 −3 −3 −2 −1 0 1 2 3 Eigenwert- / Singulärwertzerlegung Für A ∈ Rn,n diagonalisierbar gibt es X ∈ Cn,n nicht singulär mit A = X ΛX −1 , Λ = diag(λ1 , . . . , λn ) ∈ Cn,n Für A ∈ Rm,n beliebig gibt es orthogonale Matrizen U ∈ Rm,m , V ∈ Rn,n mit A = UΣV T , mit σi ≥ 0. Σ = diag(σ1 , . . . , σn ) ∈ Rm,n Ausgleichsrechnung und SVD T Sei A ∈ Rm,n , m ≥ n mit Rang(A) = n gegeben, A = UΣV e Σ die Singulärwertzerlegung, Σ = mit 0 e = diag(σ1 , . . . , σn ) ∈ Rn,n nicht singulär: Σ kAx − bk = kUΣV T x − bk = kΣy − U T bk, y = VTx e Σ =k y − U T bk, y = VTx 0 = min genau dann, wenn y = Σ+ U T b, e −1 0] heißt Pseudoinverse von Σ. Σ+ = [Σ Anwendung P P Satz. Sei A = UΣV T = ni=1 σi ui viT und Ak = ki=1 σi ui viT . Dann gilt kA − Ak k2 ≤ kA − Bk2 für alle Matrizen B mit RangB = k und kA − Ak k = σk+1 . Bemerkung. ◮ Es gilt Ak = UΣk V T mit Σk = diag(σ1 , . . . , σk , 0, . . . , 0). ◮ (Euklidische) Matrixnorm: kAk22 = max kAxk22 = max |λ| | λ Eigenwert von AT A . kxk2 =1 Anwendung: Datenkompression