| Verfahren | Singulärwertzerlegung

anchored to [[104.00_anchor_math]] proceeds from [[104.04_orthogonale_matrizen]]


| Overview |

Wir haben bis dato immer nur von quadratischen Matrizen die Eigenwerte und Eigenvektoren berechnet, möchten diese aber auch für Rechteckige Matrizen berechnen!

Anbei möchten wir dafür das Verfahren der Singularitätswertzerlegung betrachten.

| Definition |

Sei eine Matrix, ferner mit dem folgenden Rang

Wir definieren jetzt eine Singularitätswertzerlegung von ( SWZ, SVD kurz) Wenn wir sie als ein Produkt der folgenden Form darstellen können: Wir bilden also eine Diagonalmatrix in der linken oberen Ecke der Matrix ( die dann mit den Werten ) gefüllt wird. Dabei ist diese Diagonalmatrix mit der Größe beschrieben. Die restliche matrix ist nur mit gefüllt! ( aber so groß, wie die gesamte Matrix selbst).

[!Definition] Hierbei muss jetzt für gelten: . Sie beschreiben damit die Singulärwerte von

[!Important] Die Matrizen sind orthogonal! Für ein sind die Matrizen, die wir zum bilden der Singulärwertzerlegung benötigen, also , orthogonal!

| Satz (4.2) | -\SWZ\

[!Definition] Jede Matrix besitzt eine eine [[#Verfahren Singulärwertzerlegung]]!

| Beweis |

Diesen Beweis kann man konstruktiv aufstellen. Wir möchten es hiermit nur für zeigen, aber für gilt es analog!

1. Start des Beweis: Wir möchten hierfür setzen. Dadurch folgt jetzt, dass symmetrisch ist.

2. Wir bestimmen die Eigenwerte folgend: Also von .

Ferner möchten wir daraus dann eine ONB aus den Eigenvektoren von formen, ( wir wissen, dass sie orthogonal zueinander sind, weswegen wir das einfach umsetzen können). -> Hierbei muss dann gelten, dass

[!Important] Es gilt jetzt also sind reell ( das haben wir aus 3.21 / 3.22) und somit auch

Beweisen dieser Struktur Wir setzen nun folgend:

Und daraus können wir weiterhin folgern:

[!Important] rest 0 Wir können aus der obigen Betrachtung jetzt folgern, dass:

  • und weiterhin auch

Das folgt aus:

für die ganzen Werte setzen wir jetzt noch: Diese Struktur bildet jetzt ein ONS: denn:

Das müssen wir aber noch beweisen und daher folgend:

Damit haben wir genau gezeigt, dass die Vektoren orthogonal zueinander sind, und weiterhin aber auch die Norm 1 haben müssen –> sonst funktioniert nicht, dass

Wir möchten jetzt die gegeben ONB so erweitern/ergänzen, dass sie den Raum beschreiben kann. Ferner möchten wir also erweitern.

Wir bilden jetzt folgend: , wobei dann als Spalten agieren, also und weiter noch wobei auch hier die Spalten bilden, –> Wir können jetzt Groß-Sigma folgend definieren: Und dabei gilt dann für die einzelnen Einträge dieser Matrix: wir können hiermit also die entsprechende Zeilen von füllen bzw. beschreiben und so die Diagonale-Matrix, die wir wollen, bilden!

Wir können jetzt resultieren, dass eine Singulärwertzerlegung von ist. Damit folgt dann für

  • ist orthogonal
  • ist orthogonal

und daher können wir entsprechend umformen:

Es folgt hieraus jetzt: Also die Schreibweise ist eine Singulärwertzerlegung von .

Und damit ist die SZW - Singulärwertzerlegung bewiesen.

| Bemerkung (4,3) |

[!Definition] Kern von Der Kern von wird aufgespannt mit den Vektoren

[!Definition] Bild von Das Bild von wird somit auch mit folgenden Vektoren aufgespannt: Ferner gilt dann hier also

Es gilt weiterhin:

[!Important] Gilt dieser Fall, dann entsprechen die Singulärwerte den Beträgen der Eigenwerte. Und somit folgt dann auch:

Sind alle Eigenwerte , so ist die H.A.T ( ? ) von , folgend dargestellt: (Denote: )

| Beispiel |

Betrachten wir die Matrix: Wir möchten jetzt folgend die Matrix bilden, dir wir zur Bestimmung der SZW benötigen. Wir müssen wieder, die Eigenvektoren und Eigenwerte bestimmen. Sie sind hier gegeben mit: ( sie sind schon normiert).

Daraus können wir jetzt die Eigenvektoren bilden:

Wir wissen, bzw. sehen, dass symmetrisch ist! und somit sind die Eigenvektoren orthogonal zueinander!

Wir können jetzt also und anschließend auch bestimmen:

[!Warning] Bildung der Werte von die Singulärwerte der Matrize sind gleich der Wurzel der Eigenwerte, also

Wir brauchen jetzt noch U. Wir bilden sie folgend:
Wir müssen sie jetzt noch zu einer ONB für ergänzen!. Wir nehmen dafür etwa an. Und wenden Gram-Schmidt an:

Wir können jetzt alle Werte entsprechend zusammenfassen:

[!Definition] Sparversion von Singulärwertzerlegung: Wir können auch eine Sparversion aufstellen, und hierbei nur berechnen ( also nicht zwingend eine Matrix bis zu zu einer ONB zu ergänzen). Man trägt dann in die Matrix einfach die fehlenden Stellen mit ein bzw. kompensiert sie damit. –> Es folgt hier, dass die Werte nicht multipliziert werden bzw bei den Nulleinträgen sowieso anulliert werden.

Alternativ also:

[!Important] Sortierung der Einträge von Bei Sigma werden die Einträge nach der Größe sortiert eingetragen, also das größte Element ( 6 hier!) muss zuerst genommen werden und ganz oben links eingetragen

| Beispiel (4.4) |

Wir betrachten folgende Matrix Wir bilden jetzt folgend B: Wir müssen die Eigenwerte berechnen von : und dadurch folgen die Eigenvektoren:

Und wir setzen sie jezt chronologisch ein: Wir wollen jetzt noch bilden:

[!Definition] Inhalt von : Der Inhalt von der Matrix ist die Menge der Eigenwerte, dabei sortieren wir vom größten zum kleinsten!

Wir möchten jetzt noch berechnen, bedenke ( ): Also: –> wobei eine Matrix mit einem Eintrag sein soll!

und somit ist

[!Important] Resultat der Berechnung für Wir resultieren jetzt mit

Es existiert auch eine alternative Möglichkeit:

[!Tip] Wann wenden wir sie an Wir können sie immer dann anwenden wenn bei der gegebenen Matrix ist!

[!Error] überall ~ mit \sim ersetzen!

Setze dafüý Wir führen folgende Schritte durch!

–> wir haben hier also den gleichen Wert, wie vorhin bei dem Eigenvektor!

Aus dieser Matrix können wir jetzt einfach die Eigenwerte, Eigenvektoren berechnen:

Eigenwert: ist und soimt ist der Eigenvektor mit gegeben!

Wir wissen ferner, dass bereits eine ONB von bildet. Und somit ist die konstruierte Matrix folglich –> weil es der Eigenvektor ist!

Jetzt müssen wir wieder berechnen, also alle Werte bestimmen: Weiterhin wissen wir, wie in [[#Beispiel]] auch angemerkt wird, dass wir dann hier die Vektoren nicht berechnen müssen, weil sie nie relevant werden! Wir können sie also als beschreiben. und somit ist unsere Matrix: Damit können wir dann unsere Matrix besser darstellen:

[!Definition] Die Berechnung ist also equivalent

Singulärwertzerlegung - Matheretter

Auch für unsymmetrische und nichtquadratische Matrizen kann eine kanonische Darstellung angegeben werden. Die dafür erforderliche Zerlegung wird von der Singulärwertzerlegung geleistet. Hierbei wird von folgender Behauptung ausgegangen:

Analog zur kanonischen Zerlegung symmetrischer Matrizen kann eine beliebige Matrix A der Dimension (m Zeilen x n Spalten, n < m) in das Produkt aus orthonormalen Matrizen U (m x m), S (n x**n) und V (n** x n) zerlegt werden:

A=U⋅S⋅VT Gl. 283

Nach den Gesetzen der Matrizenmultiplikation ergibt das Produkt der quadratischen Matrizen tatsächlich die Dimension der Ausgangsmatrix A:

Abbildung 30 Produkt der quadratischen Matrizen ergibt Dimension der Ausgangsmatrix A

Abbildung 30: Produkt der quadratischen Matrizen ergibt Dimension der Ausgangsmatrix A

Worin U und V Matrizen von Eigenvektoren bzw. S eine Matrix von Eigenwerten der Matrixprodukte AT****×A bzw. A****×AT sind. Aus diesem Grund sind**U** und V orthonormal und**S** ist eine Diagonalmatrix.S wird auch die Singulärwertmatrix genannt.

Beweis:

Die Multiplikation transponierter Matrizen mit sich selbst, z.B.AT****×A bzw. A****×AT liefert stets quadratische und symmetrische Matrizen als Ergebnis. Folglich können beide Produkte in ihre kanonische Form gewandelt werden. Das Produkt A****×AT liefert eine m x m Matrix B:

A⋅AT=B=U⋅Λ⋅UT Gl. 284

und das Produkt AT****×A eine n x**n** Matrix C:

AT⋅A=C=V⋅Λ⋅VT Gl. 285

Die Matrix der Eigenwerte L ist in beiden Fällen identisch!

Gemäß Gl. 283 gilt aber

A⋅AT=B=(U⋅S⋅VT)⋅(U⋅S⋅VT)T Gl. 286

bzw.

AT⋅A=C=(U⋅S⋅VT)T⋅(U⋅S⋅VT) Gl. 287

Folglich sind

B=U⋅S⋅VT⋅(VT)T⋅ST⋅U;C=(VT)T⋅ST⋅UT⋅U⋅S⋅VT Gl. 288

Unter Beachtung der Regeln für die Produkte transponierter Matrizen und der Tatsache, dass U und V orthonormal sind, folgt:

a) S ist eine Diagonalmatrix, daher ist**ST** = S!

b)(VT)T = V,

c) U bzw. V sind orthonormal, daher ist UT****×U = U****×UT =VT****×V = V****×VT = I !

daher

B=U⋅S⋅VT⋅V⋅S⋅UT=U⋅S⋅I⋅S⋅UT=U⋅S2⋅UT Gl. 289

Analog dazu

C=V⋅S⋅I⋅S⋅VT=V⋅S2⋅VT Gl. 290

Die Gleichungen Gl. 289 und Gl. 290 stellen die kanonischen Formen der Matrizen B und C dar, worin U und V die Eigenvektormatrizen von B bzw.C darstellen und S2 die Matrix**L** der Eigenvektoren von B oder C.

Um der Definitionsgleichung Gl. 283 gerecht zu werden, muss S aus L bestimmt werden:

S=Λ=(λ10000λ200…………000λn) Gl. 291

Beispiel:

Die gegebene Matrix A=(−1−122−11) soll in ihre kanonische Form gebracht werden.

Lösung:

a) Berechnung von B:

B=A⋅AT=(2−40−480002)

und die zugehörige Matrix der Eigenvektoren

U=15⋅(0−12021500)

b) Berechnung von C:

C=AT⋅A=(6446), die Berechnung der Eigenwerte führt auf
Λ=(20010)

und die zugehörige Matrix der Eigenvektoren

V=12(11−11)

Damit lautet die kanonische Zerlegung:

(−1−122−11)=15⋅(0−12021500)⋅(20010)⋅12(11−11)T

Wie das Beispiel zeigt, ist es recht mühevoll, für zwei Matrizen die Eigenvektoren zu berechnen. Insbesondere dann, wenn**B** infolge m x**m** recht große Ausmaße annehmen kann!

Eine effizientere Methode kann durch Umstellen von Gl. 283 abgeleitet werden:

A=U⋅S⋅VT⇒A⋅(S⋅VT)−1=U Gl. 292

Unter Beachtung der Regeln für Inverse Matrizen

U=A⋅(S⋅VT)−1=A⋅(VT)−1⋅S−1 Gl. 293

Da V orthonormal ist, gilt (VT) -1 = V

U=A⋅V⋅S−1 Gl. 294

Sind also die Eigenwerte und die dazugehörigen Eigenvektoren (S2 und V) der Matrix C bekannt, ist die Matrix U nach Gl. 294 berechenbar. Das Berechnen der Matrix B ist damit ebenfalls hinfällig!

Beispiel:

Am vorangegangenen Beispiel wurden für die Matrix A=(−1−122−11) über die Berechnung der Matrix C Eigenwerte zu Λ=(20010) und Eigenvektoren zu V=12(11−11) berechnet.

Für U ergibt sich dann

U=(−1−122−11)⋅12(11−11)⋅(1200110)=(01502510)

Die dritte Spalte der Matrix U ist irrelevant, da diese in der Multiplikation mit S×VT (2 x 2 Matrix) nicht benötigt wird. Diese Spalte kann also bei Bedarf auch mit Nullen aufgefüllt werden.


Anwendung Singulärwertzerlegung

Bei Recommender Systems werden diese Struktur angewandt, um so eine entsprechende Empfehlung geben zu können. Das nutzen wir entweder bei (Netflix, lastfm, amazon, …)

Auch bei stöchiomatrischen Matrizen –> finden Anwendung in der Biologie, wobei sie die Reaktion von Stoffen beschriebt