7.4 Singulærverdi dekomposisjonen Singulærverdi dekomposisjon til en matrise A er en av de viktigste faktoriseringene av A (dvs. A skrives som et produkt av matriser). Den inneholder nyttig informasjon om A og de fundamentale underrommene knyttet til A, f.eks. nullrommet. Den brukes i mange praktiske anvendelser, men er også av stor betydning i teoretiske studier og ved numeriske betraktninger. 1/17
Singulærverdiene til en m n matrise La A være en m n matrise. Vet (fra forrige forelesning) at A T A en reell symmetrisk n n matrise, så den kan ortogonal diagonaliseres, ved Spektralteoremet. Vi kan derfor la v 1,..., v n være en ortonormal basis for R n som består av egenvektorer for A T A og la λ 1,..., λ n være de tilhørende egenverdiene til A T A. Merk : For hver 1 i n har vi at λ i = A v i 2. Dette viser at alle egenverdiene til A T A er ikke-negative og derfor er matrisen A T A positiv semidefinit. Ved å bytte om på rekkefølgen om nødvendig, kan vi få til at egenverdiene er ordnet i avtagende rekkefølge, dvs. slik at λ 1 λ 2 λ n 0 2/17
Singulærverdiene til A, σ 1,..., σ n, defineres ved σ i = λ i, i = 1,..., n Disse verdiene er da ordnet i avtagende rekkefølge, dvs. slik at σ 1 σ 2 σ n 0 Fra det vi så ovenfor har vi at σ i = λ i = A v i 2 = A v i, i = 1,..., n 3/17
Teorem 9. La A være en m n matrise ( O). La {v 1,..., v n } være en ortonormal basis for R n av egenvektorer for A T A med tilhørende egenverdiene λ 1,..., λ n ordnet i avtagende rekkefølge. La σ 1 σ 2... σ r > 0 angi alle singulærverdiene til A som ikke er null. Da er {Av 1,..., Av r } en ortogonal basis for Col A og rang A = r. Videre er Av r+1 =... = Av n = O når r < n. 4/17
Bevis. Vi har at (Av i ) T (Av j ) = vi T A T Av j = vi T (λ j v j ) = λ j v i v j = 0 når i j siden v i og v j da er ortogonale. Så Av i og Av j er ortogonale når i j. Videre vet vi at σ i = Av i, og at σ i = 0 hvis og bare hvis i > r, per antagelse. Men da er Av i O hvis og bare hvis 1 i r. Så mengden {Av 1,..., Av r } er en ortogonal delmengde i Col A med ikke-null vektorer. For å vise at denne mengden er en ortogonal basis for Col A, og dermed at rank A= dim Col A = r, gjenstår det å vise at den utspenner Col A. La derfor y Col A, si y = Ax. Skriv x = c 1 v 1 + c n v n. Da er y = Ax = c 1 A v 1 + + c r Av r + c r+1 Av r+1 + c n Av n = c 1 Av 1 + + c r Av r + O + + O = c 1 Av 1 + + c r Av r Dette viser at {Av 1,..., Av r } utspenner Col A, som ønsket. 5/17
Dette teoremet gir en numerisk bedre måte å beregne rangen på enn det å telle antall pivoter. rank A er lik antall positive singulærverdier. (Antall singulære verdier som er null er da lik dim Nul (A T A) = dim Nul A = n r). 6/17
Teorem 10 (Singulærverdi dekomposisjonen) La A være en m n reell matrise, A O. La σ 1 σ 2... σ r > 0 angi de singulærverdiene til A som ikke er null (så r = rank A). Da kan A faktoriseres på formen A = U Σ V T der U og V er ortogonale matriser [ av] henholdsvis dimensjon D O m m og n n, mens Σ = er m n diagonal O O matrisen der D = diag (σ 1, σ 2,..., σ r ). Faktoriseringen ovenfor kalles en singulærverdi dekomposisjon (eller SVD) til A. Merk at matrisene U og V er ikke entydig bestemte av A, så det finnes flere SVD er for A. Kolonnene til U kalles ofte venstre singulære vektorer for A mens kolonnene til V kalles høyre singulære vektorer for A. 7/17
Bevisskisse / beregning av SVD for hånd. 1. [ Ort.diag. ] Beregn A T A og ortogonal diagonaliser denne. La {v 1,..., v n } være en o.n. basis for R n av egenvektorer for A T A tilhørende egenverdiene λ 1,..., λ n ordnet i avtagende rekkefølge. 2. [ Finn V og Σ ] La V = [v 1... v n ] og σ j = λ j for j = 1,..., n. Da er V ortogonal og σ j -ene gir singulærverdiene til A. Sett D = diag(σ 1, σ 2,..., σ r ), der σ 1, σ 2,..., σ r angir alle singulærverdiene som ikke er null (så rank A = r). Dann m n diagonalmatrisen Σ basert på D. 3. [ Finn U ] Beregn u j = 1 σ j Av j for j = 1,..., r. Mengden {u 1,..., u r } er da ortonormal. Dersom r < m : utvid den ortonormale mengden {u 1,..., u r } til en o.n. basis {u 1,..., u m } for R m. Dann den ortogonale matrisen U = [u 1... u m ]. Da er A = UΣV T! 8/17
SVD en til A inneholder mye informasjon. F.eks. har vi at : a. {u 1,..., u r } er en o.n. basis for Col A. b. {u r+1,..., u m } er en o.n. basis for Nul A T når r < m. c. {v 1,..., v r } er en o.n. basis for Row A. d. {v r+1,..., v n } er en o.n. basis for Nul A når r < n. Merk: Punkt b kan utnyttes til å konstruere {u r+1,..., u m }. Begrunnelse : For a: Col A = Span {A v 1,..., A v n } = Span {A v 1,..., A v r } = Span {u 1,..., u r }. For b: Bruk at Nul A T = (Col A) og a. For d: Vet at v r+1,..., v n Nul A og dim Nul A = n r. For c: Bruk at Row A = (Nul A) og d. 9/17
Eksempel. La A = 1 1 1 0 0 1. Finn en SVD til A. Begrunn deretter at enhetssirkelen S i R 2 avbildes på en ellipse i R 3 under multiplikasjon med A. Angi aksene og halvaksene for ellipsen. Svar: {Ax : x = 1} = {UΣV T x : x = 1} = {UΣ(V T x) : V T x = 1} = {UΣy : y = 1}. Men {Σy : y = 1} blir en ellipse i IR 3 som ligger i xy-planet (dette er bildet av en sirkel ved skalering av aksene). Multiplikasjon med U av denne mengden gir en rotasjon av ellipsen, som stadig er en ellipse. A = UΣV T 2/ 6 0 1/ 3 = 1/ 6 1/ 2 1/ 3 1/ 6 1/ 2 1/ 3 3 0 0 1 0 0 [ 1/ 2 1/ 2 1/ 2 1/ 2 Akser (2, 1, 1) (fra u 1 ) og (0, 1, 1) (fra u 2 ) med halvakser h.h.v. σ 1 u 1 = 1 2 (2, 1, 1) og σ 2 u 2 = 1 2 (0, 1, 1). 10/17 ]
[ 1 1 0 Eksempel. La B = 1 0 1 ]. Finn en SVD til B. Hva er bildet av enhetssfæren S i R 3 under multiplikasjon med B? Svar: Ser at B = A T. Og generelt kan vi finne SVD for den transponerte slik: A = UΣV T medfører som er en SVD for B = A T! B = A T = (UΣV T ) T = V Σ T U T Akser (1, 1) (fra v 1 ) og (1, 1) (fra v 2 ) med halvakser h.h.v. 3 σ 1 v 1 = 2 (1, 1) og σ 2v 2 = 1 2 (1, 1). 11/17
Invertibel Matrise Teoremet - Siste tillegg! La A være en n n matrise. Følgende er ekvivalent : A er invertibel. (Col A) = {O}. (Nul A) = R n. Row A = R n. A har n singulærverdier som ikke er null. Begrunnelse: Vi vet at A er invertibel rank A = n. Videre vet vi at rank A = dim Col A = dim Row A = antall singulærverdier til A som ikke er null. Når vi også tar med i betraktning at (Col A) = {O} Col A = R n og at (Nul A) = Row A er ekvivalensene innlysende. Vi avslutter med to situasjoner der SVD en er nyttig. 12/17
Kort om kondisjonstallet til en invertibel matrise La A være invertibel. Betrakt et system Ax = b. Vi vet at systemet har da en entydig løsning. I noen tilfeller vil avrundingsfeil i beregningene føre til at løsningen man beregner er ganske forskjellig fra den entydige løsningen man ønsker å finne. Når er A av en slik type (såkalt ille-kondisjonert)? La A = U ΣV T være en SVD til A. Siden U og V er ortogonale matriser vil årsaken til problemet ligge i Σ. Man kan da innføre kondisjonstallet til A ved cond A = σ 1 σ n. Her er σ 1 er den største singulære verdien mens σ n er den minste. Det kan vises at et høyt kondisjonstall for A vil som regel føre til numerisk ustabilitet. 13/17
Redusert SVD og pseudoinvers La A = UΣV T være en SVD til en matrise A med rang r. Ved kolonne-rad formelen for matriseproduktet får vi A Dette kan omskrives som v T 1 = UΣV T v T = [u 1 u 2... u m ] Σ 2. vn T v1 T v T = [σ 1 u 1 σ 2 u 2... σ r u r O O] 2. v T n = σ 1 u 1 v T 1 + σ 2 u 2 v T 2 + + σ r u r v T r A = U r D V T r der U r = [u 1 u r ], D = diag (σ 1,..., σ r ), V r = [v 1 v r ]. En slik faktorisering av A kalles en redusert SVD til A. 14/17
Siden D er invertibel kan vi danne matrisen A + = V r D 1 U T r Man kaller A + for pseudoinversen (eller Moore-Penrose inversen) til A. Hva kan den pseudoinverse matrisen A + brukes til? Betrakt et (inkonsistent) system Ax = b. Da er ˆx := A + b en minstekvadraters løsning av Ax = b. Poenget er at da er Aˆx = = U r Ur T b = Proj Col A (b) og vi har sett tidligere at dette er ekvivalent med at ˆx er en minstekvadraters løsning av systemet. 15/17
Merk: Det kan vises at ˆx = A + b er en løsning med minst avstand til origo blant alle minstekvadraters løsninger. Merk ellers er at vi her ikke antar at A har lineært uavhengige kolonner, men klarer likevel å angi en formel for en minstekvadraters løsning. Eksempel. La A = [ 1 1 1 1 en minstekvadraters løsning av systemet A x = Svar: A + = ]. Beregn A + og bruk denne til å finne [ ] 1. 0 [ 1/4 1/4 1/4 1/4 og MK løsning blir A + e 1 = (1/4, 1/4). ] 16/17
Livet videre - med lineær algebra! MAT-INF3100 Lineær optimering (vår) MAT-INF2360 - Anvendelser av lineær algebra (vår) MAT-INF4130 - Numerisk lineær algebra (høst) MAT3400/4400 - Lineær analyse med anvendelser (høst) 17/17