12Singulær værdi dekomposition
I forrige kapitel viste spektralsætningen, at enhver Hermitisk matrix kan diagonaliseres, ved basisskifte med en ONB bestående af egenvektorer. Et næsten tilsvarende resultat holder for alle matricer, også rektangulære matricer. Vi skal til kulminationen af kurset: Den meget vigtige singulær værdi dekomposition (SVD). Her laves basisskifte med to (måske forskellige) ONB'er for at opnå en diagonalmatrix. Baserne bliver valgt ud fra de fire fundamentale underrum, som vi studerede i slutningen af Kapitel 9.12.1 SVD
Enhver matrix kan skrives
hvor er en unitær matrix, er en unitær matrix og er en diagonalmatrix.Hvis så har matricerne følgende struktur:
- har formen (der udfyldes med indtil er ) hvor de positive tal kaldes de singulære værdier.
- Søjlerne i kaldes de venstre singulære vektorer.
- er en ONB for og er en ONB for
- Søjlerne i kaldes de højre singulære vektorer.
- er en ONB for og er en ONB for
- Der er følgende sammenhæng mellem de første venstre og højre singulære vektorer:
Hvis er en reel matrix, kan og bestemmes som ortogonal matricer, således at
12.1.1 De singulære værdier
Vi tager udgangspunkt i en matrix og bemærker at hvis vi ganger på fra venstre, så får vi en matrix Denne nye kvadratiske matrix har nogle pæne egenskaber:- er Hermitisk, og har derfor reelle egenværdier af Sætning 11.3.
- Alle egenværdier for er ikke-negative.
12.1.2 De højre singulære vektorer
Da er en Hermitisk matrix ved vi fra spektralsætningen (Sætning 11.9), at der findes en unitær matrix bestående af egenvektorer for således at Vi har at udgør en ONB for egenrummet (Lemma 10.3). De resterende udgør en ONB for (Sætning 9.33).12.1.3 De venstre singulære vektorer
Vi starter med at definere de første venstre singulære vektorer, ud fra de tilsvarende højre singulære vektorer:
Vi skal nu overbevise os selv om, at disse vektorer er ortonormale. Dette gøres ved følgende udregning
og vi husker at er egenvektor for med egenværdi samt -vektorerne er ortonormale. Vi har derfor
I forrige afsnit så vi, at er en ONB for så en afbildning af på denne basis (se f.eks. Figur 9.4), må altså udspænde hele søjlerummet for Fra (12.3) ved vi nu, at er en ONB for Men hvad så med de resterende venstre singulære vektorer ? De kan udregnes som en vilkårlig ONB for ved brug af Gram-Schmidt algoritmen. Der er mange forskellige ONB'er for et vektorrum, så der er en vis valgfrihed her, tilsvarende som der er ved bestemmelse af de sidste højre singulære vektorer, som kan vælges som en vilkårlig ONB for
12.1.4 Sammensætning af delresultaterne til SVD
Vi kan nu sammensætte delresultaterne for at få SVD'en i Sætning 12.1. Da er en ONB for er ligheden det samme som for alle Vi vil altså vise ligheden (12.4).Fra ortonormaliteten af -vektorerne gælder altså den 'te standardbasisvektor i Dernæst, ved at gange med diagonalmatricen får vi udtrukket den 'te søjle af : Her er også den 'te standardbasisvektor, men denne gang for (da er en matrix).For har vi derfor men dette er netop lig med da er vektorer i Nu mangler vi kun at vise (12.4) for og her skal vi bruge sammenhængen mellem de venstre og højre singulære vektorer i (12.3):12.1.5 Eksempel på udregning af SVD
Lad os grundigt gennemgå et eksempel på udregning af SVD for matricen Først skal de singulære værdier og de højre singulære vektorer bestemmes ud fra diagonalisering af den Hermitiske matrix Vi får det karakteristiske polynomium som har rødderne og Dermed er og de singulære værdier for og vi har Da egenværdierne for begge har algebraisk multiplicitet vil deres geometriske multipliciteter tilsvarende være af Proposition 8.14. Ved at se på matricerne kan vi forholdsvist let indse at vektorerne udgør ONB'er for egenrummene, hørende til henholdsvis og Dermed er og derfor Nu anvendes (12.3) til at finde de første to venstre singulære vektorer: Til slut skal vi finde som ONB for hvilket også svarer til nulrummet for matricen da Ved at inspicere og ser vi at er en enhedsvektor ortogonal med og Derfor er og vi har12.2 Approksimation med lav-rang matricer
En mere kompakt måde at opskrive en SVD på, som tager højde for, at de sidste -vektorer og -vektorer ikke har betydning for matrixproduktet, er ved kun at se på de første søjler i og ; disse forkortede matricer kaldes og Tilsvarende kalder vi for diagonalmatricen med de singulære værdier i diagonalen. Så har vi Den sidste lighed for den kompakte SVD i (12.5) kommer af Proposition 4.7, da er en diagonalmatrix. Det viser hvordan en rang- matrix altid kan skrives som en sum af rang- matricer.
En fordel ved den kompakte SVD er, at matricerne og kan være betydeligt mindre end for den "fulde" SVD. Dog skal man passe lidt på, da og generelt ikke er kvadratiske matricer, og er derfor ikke unitære. Deres søjler er dog stadig ortonormale, så der gælder
men i den omvendte rækkefølge og vil disse ikke være identitetsmatricer, medmindre matricerne er kvadratiske (hvis eller
Dette princip bliver blandt andet brugt til at udvælge det mest relevante data inden for statistik, og går også under navnet principal component analysis (PCA). Dog har man ofte at gøre med symmetriske matricer i PCA, så her kan man også bruge en diagonalisering.Der er også et min-max princip for singulære værdier (svarende til Sætning 11.11). Dette er meget brugbart i lav-rang approksimationer, til numerisk at udregne de største singulære værdier for store matricer.
For matrix og underrum definerer vi tallene
Så findes den singulære værdi ved at minimere (eller maksimere ) blandt alle underrum af en given dimension:
Minimum/maksimum opnås ved hvor udspændes af de første højre singulære vektorer, mens udspændes af de første højre singulære vektorer.
Vi har for positive egenværdier af Hermitisk matrix i aftagende rækkefølge, og hvor de højre singulære vektorer er tilhørende ortonormale egenvektorer for Da følger resultatet direkte ved brug af min-max princippet for Hermitiske matricer (Sætning 11.11), samt at kvadratrod-funktionen er voksende.
En anvendelse af (12.7), som er let at visualisere, er til komprimering af billeder. Typisk ønsker man ikke at gemme hver eneste pixel i et stort billede, men i stedet anvendes nogle ganske få komponenter af en SVD, til at lave en lav-rang approksimation. I et gråtone-billede svarer farven i en pixel til et tal i en stor matrix (for farvebilleder: tre matricer). Overvej følgende billede, hvor matricen har en rang på
Oprindeligt billede med matrix af rang Herefter approksimeres matricen for billedet ud fra (12.7), med forskellige værdier af
Approksimation med
Approksimation med
Approksimation med Ud fra kun lidt over procent af de singulære værdier, kan man allerede sagtens se hvad billedet forestiller, dog med en lidt synlig grynet struktur, som svarer til komprimeringen.




12.2.1 Matrixnormer og bedste lav-rang approksimation
En matrixnorm skal opfylde tilsvarende krav som andre vektornormer; forklaringen for dette er, at man udstyrer et vektorrum bestående af de komplekse matricer med en norm, altså er vektorerne i disse vektorrum matricer.Nogle af de mest almindelige matrixnormer kan opskrives ved brug af matricens singulære værdier:
Disse normer har mange forskellige navne: kaldes den spektrale norm, operatornormen, matrix -normen eller Schatten -normen. kaldes enten spornormen, nuklearnormen eller Schatten -normen. Til sidst har vi som kaldes enten Frobenius normen, Hilbert-Schmidt normen eller Schatten -normen.
- Der er flere matrixnormer, som kan defineres ud fra singulære værdier, eksempelvis for ethvert kan defineres Schatten -normen: Her har vi dog været forsigtige med notationen, da der også er andre -normer, der normalt skrives men som generelt ikke kan opskrives fra de singulære værdier (bortset fra den spektrale norm).
- Et resultat som ikke bliver gennemgået i disse noter er, at alle normer på et endelig dimensionalt vektorrum er ækvivalente. Det betyder, at hvis man har to normer og så findes positive konstanter og så for alle Derfor er forskellen på de enkelte normer ofte ikke så vigtig som man skulle tro på endelig dimensionale vektorrum (en af de fundamentale forskelle fra uendelig dimensionale normerede vektorrum). Dog kan nogle anvendelser have brug for specifikke egenskaber af en norm, f.eks. om normen er relateret til et indre produkt, hvilket ofte bruges til at simplificere optimeringsalgoritmer.
For enhver matrix gælder følgende formler:
Resultatet for den spektrale norm er en direkte konsekvens af min-max princippet (Sætning 12.4), hvor afbildningen afbilder til mængden af alle enhedsvektorer.For spornormen, da anvendes at er givet ved (se Afsnit 12.1.2)
Af den cykliske egenskab for sporet (Proposition 11.6) er Til slut vises formlen for Frobenius normen. Bemærk først at vi har
Så det er nok at vise Men dette følger helt analogt som for beviset med spornormen, men hvor der står i diagonaliseringen, ligesom i Afsnit 12.1.2.
Der gælder følgende resultater for matrixnormerne i (12.9), hvor er en matrix med rang :
Vi gør brug af (12.9) til at vise (i), (ii) og (iii).(i): Da de singulære værdier er positive, og er den største, har vi:
(ii): Tilsvarende vurderinger, hvor det anvendes at kvadratrod-funktionen er voksende, giver:
(iii): Vi anvender nu, at de singulære værdier er positive, til at vise første ulighed:
Til den anden ulighed bruger vi Cauchy-Schwarz ulighed (Sætning 9.4) på vektorerne og i :
Til at bevise (12.10) for de tre matrixnormer, er det nok at vise det for den spektrale norm, da det er den mindste fra (i) og (ii). Det er klart at uligheden gælder hvis fordi så er begge sider lig 0. Antag nu at Her bruger vi formlen fra Proposition 12.7:
Næste resultat fortæller, at faktisk er den bedst mulige lav-rang approximation.
Bevis
Beviset er opdelt i tre dele.Beviset for den spektrale norm
Vi antager at for hvis er tydeligvis den bedste approksimation. Hvis er en matrix vil enten eller være strengt større end Hvis kan vi undersøge i stedet, da denne har samme singulære værdier som (se Opgave 12.2), og normerne i (12.9) vil derfor være de samme. Derfor kan vi i beviset antage at Vi starter med at vise resultatet for den spektrale norm, hvor vi har Antag nu, at der findes en matrix med så
Vi skal finde en modstrid, som derved vil vise at (12.13) er forkert. Fra dimensionssætningen (Sætning 6.25) ved vi at så der findes en ikke-triviel vektor For denne vektor gælder (ved brug af Proposition 12.8):
Vi ser nu på og lad Ved brug af SVD for har vi:
Her er anvendt flere resultater: Søjlerne i er en ONB for så normen af kan findes via Proposition 9.8, samt vi har anvendt at er unitær og derved gælder Nu skal vi færdiggøre beviset for den spektrale norm ved anvendelse af (12.14) og (12.15). Vi har at og både og er underrum af så derfor gælder
Der findes altså en vektor som opfylder både (12.14) og (12.15), hvilket er en modstrid, og derfor må gælde
En Weyl ulighed for singulære værdier
Det næste der vises, er en brugbar ulighed for singulære værdier. Lad for matricer, hvor vi kan antage at (ellers anvendes og i stedet). Vi anvender nu notationen at svarer til 'te singulære værdi for og er lig hvis og med tilsvarende notation for andre matricer. Der gælder derfor
Her er og lav-rang approksimationer til og matricerne, og ved uligheden anvendte vi trekantsuligheden for den spektrale norm. Eftersom har rang (højst) og har rang (højst) så ved vi fra Proposition 6.29 at Vi kan nu anvende resultatet vi viste ovenfor, for den spektrale norm, nemlig at er en bedre approksimation til end :
Beviset for de andre matrixnormer
Vi kan nu vise sætningen for spornormen og Frobenius normen. Vi viser faktisk resultatet for samtlige af Schatten-normerne (Bemærkning 12.6), eftersom argumentet er det samme.Lad det vil sige at Ved at anvende (12.16) med fås
Vi har derfor for ethvert :
Det blev igen antaget at så derfor er når vi skiftede indekset i summen.
Det oplyses at følgende rang-3 matrix har de nedenfor angivne SVD og kompakt SVD:
Vi kan nu bestemme approksimationerne og ved
Disse lav-rang approksimationer til har via (12.12) følgende relative fejl:
og
Hvis vi holder os til den spektrale norm, svarer det til at har en relativ fejl på 75 procent, mens har en relativ fejl på 25 procent.
For matrix lad være 'te singulære værdi for og lig hvis Tilsvarende notation bruges for andre matricer.
- For matrix og matrix gælder
- For matricer og gælder
12.3 Numerisk teori og anvendelser
12.3.1 Pseudoinvers og mindste kvadraters løsning
I løbet af kurset har vi gang på gang stødt på singulære matricer, om det så er kvadratiske matricer der ikke er invertible, eller om det er rektangulære matricer. På den anden side ved vi, at det altid er muligt at finde (mindst én) mindste kvadraters løsning til et lineært ligningssystem.Nu skal vi se, hvordan vi ud fra en matrix kan bruge dens SVD, til at opskrive en såkaldt Moore-Penrose pseudoinvers
Lad være SVD af en matrix. Vi definerer nu en diagonalmatrix (bemærk: omvendte dimensioner)
Følgende matrix kaldes (Moore-Penrose) pseudoinvers af :
Vektoren
er en mindste kvadraters løsning til ligningssystemet
Beviset er en direkte udregning, hvor vi indsætter kompakt SVD udtryk for og samt gør brug af (12.6):
Så er en løsning til normalligningerne
Her indser vi, at er en linearkombination af de første af -vektorerne, som vi fra Sætning 12.1 ved er en ONB til Det vil altså sige, at er ortogonal på enhver vektor og derfor giver Pythagoras sætning at
for alle og der er kun lighed til sidst hvis Vi har vist følgende resultat.
Til et lineært ligningssystem eksisterer en entydig mindste kvadraters løsning med minimal norm, og den kan findes med formlen i Sætning 12.13.
Hvis vi betragter den 'te søjle af en pseudoinvers er dette netop Men er ifølge Proposition 12.14 præcis det samme, som den entydige mindste kvadraters løsning med minimal norm til ligningssystemet Derved er hver søjle (og derfor hele matricen ) entydigt bestemt fra
12.3.2 Konditionstal og numerisk stabilitet
Vi fokuserer nu på et ligningssystem hvor er en generel matrix. Her kan man tænke på som en matematisk model for et system i f.eks. fysik, biologi eller kemi, og betegner måledata. I en praktisk situation vil der typisk være små målefejl, og tilsvarende vil en computerudregning have afrundingsfejl, så i virkeligheden løser man måske et andet problem hvor vektoren betegner en ukendt målefejl.Spørgsmålet er nu: Hvor stor påvirkning kan en sådan målefejl have på vores slutresultat i forhold til resultatet uden målefejl? Altså hvor stor er den relative fejl i forhold til den relative målefejl
Lad være en matrix med rang Overvej mindste kvadraters løsningerne og Så gælder
hvor er den ortogonale projektion af på Her er antaget at og dermed
Bemærk at Nu bruger vi vores norm-ulighed i (12.10), til at indse
hvor (reciprok til mindste singulære værdi for ) svarer til den største singulære værdi for Da er en mindste kvadraters løsning, gælder at (se Bemærkning 10.5). Vi får derfor
hvilket omskrevet giver
Produktet af (12.19) og (12.20) giver nu slutresultatet.
Eksempelvis vil en matrix med konditionstal på kunne forøge en lille relativ målefejl på til en ganske stor relativ fejl på løsningen, svarende til I mange praktiske sammenhænge, og især med meget store matricer, er det ikke ualmindeligt at man ser så store konditionstal, og i særligt ustabile problemer vil det være meget større. Men som man kan se nedenfor, forekommer det også for helt små matricer.
Lad os overveje et ligningssystem med matricen
for et tal Matricen har konditionstal på så hvis f.eks. fås et meget stort konditionstal på I en praktisk situation kunne være et resultat af nogle numeriske beregninger, hvor der på grund af afrundingsfejl står i stedet for 0.Lad nu og hvor svarer til en lille fejl på andet koordinat. Løsningerne til systemerne og opfylder
Det ses tydeligt, at selv for en lille målefejl kan blive stort hvis er meget mindre end Hvis man sætter sker der noget besynderligt: Matricen får det mere overskuelige konditionstal på altså systemet er pludselig blevet numerisk stabilt. Nu er matricen ikke længere invertibel, så i stedet skal den pseudoinverse bestemmes, hvilket er
I lige dette tilfælde, vil fejl på andetkoordinatet af -vektoren slet ikke have nogen påvirkning af mindste kvadraters løsningen med minimal norm. Specifikt, kan man ikke vælge nogen vektor så den relative fejl bliver større end
12.3.3 Trunkeret SVD og Tikhonov regularisering
Ud fra konditionstallet er det i anvendelser typisk ikke størrelsen af der bliver problematisk. Derimod er det ofte, at nogle af de singulære værdier, og derfor blandt andet kommer meget tæt på nul. Et stort konditionstal er konsekvensen, hvilket gør løsning af numerisk ustabilt (se Sætning 12.16), i forhold til små "tilfældige" fejl eksempelvis fra målinger i anvendelser, numeriske approksimationer eller afrundingsfejl i computerberegninger.I dette afsnit skal vi undersøge, hvordan man ofte i praksis tilnærmelsesvist løser numerisk ustabile lineære ligningssystemer. Den første tilgang er den simpleste: Vi erstatter med en lav-rang approksimation hvor typisk er meget mindre end rangen af Vi har netop at svarende til at fjerne bidrag fra de mindste singulære værdier af Vi kalder nu
for en trunkeret SVD (TSVD) regularisering af Hvis vi kigger nærmere på (12.18), svarer TSVD til at fjerne bidrag med store værdier af som ganges på der kan være "forstyrret" af tilfældig støj:
Antal led i beregningen af TSVD kaldes en regulariseringsparameter, og valget af er en afvejning af to faktorer:
- Desto mindre er, desto dårligere approksimation er til hvilket afspejler sig i som approksimativ løsning til
- Tilgengæld er stabiliteten for beregningen af bedre, desto mindre er.
Dette kaldes en Tikhonov regularisering af med regulariseringsparameter Metoden er navngivet efter Andrey Nikolayevich Tikhonov, som har været en meget markant indflydelse på moderne metoder i numerisk analyse.Rollen af i Tikhonov regularisering svarer til den reciprokke rolle af i TSVD. For lille fås lille approksimationsfejl, men stor beregningsfejl, og omvendt for stort En traditionel måde at karakterisere Tikhonov regularisering på, er som et minimeringsproblem der generaliserer mindste kvadraters metode (som svarer til nedenfor).
For er den entydige løsning til minimeringsproblemet
Vi starter med at indse
hvor
Dermed er minimering af (12.25) svarende til mindste kvadraters løsning for (Sætning 10.6). Derudover, da gør identitetsmatricen i at samtlige søjler for RREF af er pivotsøjler, så Af Sætning 10.4 er der en entydig mindste kvadraters løsning til Vi bestemmer nu komponenterne til normalligningerne. Vi begynder med :
Ved at udvide med nuller, til en diagonalmatrix, hvor er i øverste venstre hjørne, samt anvende at har vi samlet set
Dens inverse bliver dermed
Tilsvarende har vi
Vi kan nu skrive mindste kvadraters løsningen til som
I udregningen af produktet blev anvendt strukturen af kendt fra Sætning 12.1.
For har minimeringsproblemet i Sætning 12.18 en entydig løsning. For har det tilsvarende minimeringsproblem ikke nødvendigvis en entydig løsning (mængden af løsninger afhænger af ), fordi dette svarer til mindste kvadraters problemet (Sætning 10.6). Bemærk at når og så er som sagt den entydige mindste kvadraters løsning med minimal norm (Proposition 12.14). Hvis man lader i løsningen af minimeringsproblemet i Sætning 12.18, er det netop denne mindste kvadraters løsning som konvergerer mod.
12.4 Opgaver
Vælg en af matrixnormerne fra (12.9), og vis nedenstående egenskaber (som viser, at det rent faktisk er en norm):
- samt , hvis og kun hvis, (nulmatricen).
- for .
- (trekantsuligheden).
Ud fra en SVD af matrix hvad er en SVD af ?
Ud fra en SVD af matrix hvad er egenværdierne af ? Hvad er nogle tilhørende egenvektorer?Hint
Brug resultatet fra Opgave 12.2, og indsæt SVD for og i produktet.
Gør rede for, at matrixnormerne i (12.9) (eller mere generelt, Schatten normerne fra Bemærkning 12.6) er unitært invariante. Det vil sige, for enhver matrix skal gælde
for enhver unitær matrix og der skal gælde
for enhver unitær matrix Hint
Hvis er en SVD af hvad er så en SVD af ? Hvad er sammenhængen mellem de singulære værdier for og ? Opgave 11.4 er helt sikkert brugbar!
En matrixnorm kaldes submultiplikativ hvis
for enhver matrix og matrix Vis at matrixnormerne i (12.9) (eller mere generelt, Schatten normerne fra Bemærkning 12.6) er submultiplikative. Endnu stærkere kan vises
Hint
Brug Proposition 12.11.
For matricer og vis at
hvor angiver den 'te singulære værdi for en matrix og er lig hvis Dette viser, at singulære værdier er (Lipschitz) kontinuerte med hensyn til perturbationer i Hvis normen af er lille, er de singulære værdier for og tilsvarende tætte på hinanden.Hint
Brug Proposition 12.11.
Af (9.9) er for enhver unitær matrix På baggrund af dette, vis at for enhver invertibel matrix er lig produktet af de singulære værdier for
Find de singulære værdier for matricen
Summen af de singulære værdier skal gerne give
Det oplyses, at den reelle matrix
har en SVD med matricerne
- Udregn lav-rang approksimationerne (rang 1) og (rang 2) til (Husk den transponerede af i SVD'en).
- Udregn de relative fejl og i din favorit matrixnorm.
Find kompakt SVD for matricen
I forlængelse af Opgave 12.10, find den entydige mindste kvadraters løsning med minimal norm for ligningssystemet
Vi definerer Frobenius indre produkt mellem matricer og som
Bemærk, Frobenius normen er givet ved af Proposition 12.7.Gør rede for, at Frobenius indre produkt rent faktisk er et indre produkt på vektorrummet af matricer. Der skal vises for og at følgende holder:
- samt hvis og kun hvis,