# Singulärwertzerlegung

Eine Singulärwertzerlegung (engl. Singular Value Decomposition; abgekürzt SWZ oder SVD) einer Matrix bezeichnet deren Darstellung als Produkt dreier spezieller Matrizen. Daraus kann man die Singulärwerte der Matrix ablesen. Diese charakterisieren, ähnlich den Eigenwerten, Eigenschaften der Matrix. Singulärwertzerlegungen existieren für jede Matrix – auch für nichtquadratische Matrizen.

## Definition

Als Singulärwertzerlegung einer komplexen $m\times n$-Matrix $M$ mit Rang $r$ ≤ $\mathrm {min} \{m,n\}$bezeichnet man ein Produkt der Gestalt
    $M=U\Sigma V^{*},$
wobei
* $U$ eine unitäre $m\times m$-Matrix ist,
* $V^{*}$ die Adjungierte einer unitären $n\times n$-Matrix $V$ und
* $\Sigma$ eine reelle $m\times n$-Matrix der Gestalt
       $\Sigma =\left({\begin{array}{ccc|ccc}\sigma _{1}&&&&\vdots &\\&\ddots &&\cdots &0&\cdots \\&&\sigma _{r}&&\vdots &\\\hline &\vdots &&&\vdots &\\\cdots &0&\cdots &\cdots &0&\cdots \\&\vdots &&&\vdots &\\\end{array}}\right)$
    mit $\sigma _{1}\geq \dotsb \geq \sigma _{r}>0$ ist.
Die positiven Diagonaleinträge $\sigma _{i},i=1,\dotsc ,r$ von $\Sigma$ heißen Singulärwerte von $M$. Die Singulärwerte und damit auch die Matrix $\Sigma$ sind durch $M$ bis auf die Reihenfolge eindeutig bestimmt. Die Spaltenvektoren $u_{i},i=1,\dotsc ,m$ von $U$ heißen Links-Singulärvektoren, die Spaltenvektoren $v_{i},i=1,\dotsc ,n$ von $V$ heißen Rechts-Singulärvektoren (zum Index $i$) der Matrix $M$. Weder $U$ noch $V$ sind eindeutig bestimmt.

## Eigenschaften

Jede Matrix besitzt mindestens eine Singulärwertzerlegung. Bei einer reellen Matrix können die Matrizen $U$ und $V$ der Zerlegung reell gewählt werden.
Wegen
    $M^{*}\cdot M=\left(V\Sigma ^{T}U^{*}\right)\cdot \left(U\Sigma V^{*}\right)=V\Sigma ^{T}\Sigma V^{*}$
ist $M^{*}M$ ähnlich zu $\Sigma ^{T}\Sigma$. Damit sind die Singulärwerte der Matrix $M$ gleich den Quadratwurzeln aus den positiven Eigenwerten von $M^{*}M$. Daher ist die Spektralnorm von $M$ gleich dem größten Singulärwert $\sigma _{1}$, $\left\|M\right\|_{2}=\sigma _{1}$. Weiterhin ist die Frobeniusnorm die euklidische Norm des Vektors der Singulärwerte, $\left\|M\right\|_{F}=\left\|[\sigma _{i}]_{i=1}^{r}\right\|_{2}$.
Einsetzen und Nachrechnen zeigt, dass sich die Pseudoinverse (bei Invertierbarkeit die Inverse) zu $M$ aus
    $M^{+}=V\Sigma ^{+}U^{*}$
mit
    $(\Sigma ^{+})_{ij}={\begin{cases}{\frac {1}{\sigma _{i}}},&{\text{falls}}\ i=j\leq r,\\0&{\text{sonst}}\end{cases}}$
ergibt. Somit sind die Singulärwerte der Inversen zu $M$ genau ${\tfrac {1}{\sigma _{i}}}$, und die auf die Spektralnorm bezogene Konditionszahl von $M$ ergibt sich zu $\kappa _{2}(M)={\tfrac {\sigma _{1}}{\sigma _{n}}}$.
Da unitäre Transformationen den Betrag der Determinante nicht ändern, gilt
    $\left|\det(M)\right|=\prod _{i=1}^{r}\sigma _{i},$
falls $M$ eine quadratische Matrix mit $\det(M)\neq 0$ ist.
Es gilt
    $Mv_{i}=\sigma _{i}u_{i}$
und
    $M^{T}u_{i}=\sigma _{i}v_{i}\quad {\text{ für }}i=1,\dotsc ,\min(m,n),$
d. h., die Paare aus Singulärwert und Singulärvektoren kennzeichnen Längenänderung und Richtung im Bildraum durch die lineare Transformation $M$ bzw. $M^{T}$, jeweils auf den Vektoren eines Orthonormalsystems im Urbildraum.

## Ökonomische Variante der Singulärwertzerlegung

Sei
    $M=U\Sigma V^{*}$
die Singulärwertzerlegung einer $m\times n$-Matrix $M$.
Im Falle $m<n$ gibt es eine „ökonomische Variante“ der Singulärwertzerlegung der Gestalt
    $M=U\Sigma _{m}V_{m}^{*}$.
Hierbei ist $V_{m}$ diejenige $n\times m$-Matrix, deren Spalten aus den ersten $m$ Spalten von $V$ bestehen, und $\Sigma _{m}$ besteht aus den ersten $m$ Spalten von $\Sigma$.
Analog ist die ökonomische Variante im Falle $m>n$ wie folgt gegeben:
    $M=U_{n}\Sigma _{n}V^{*},$
wobei $U_{n}$ die ersten $n$ Spalten von $U$ enthält und $\Sigma _{n}$ die ersten $n$ Zeilen von $\Sigma$.
Viele Programmierbibliotheken für lineare Algebra können nur letztere Variante berechnen; für $m\times n$-Matrizen mit $m<n$ kann man die Singulärwertzerlegung (in ersterer Variante) dann durch Transposition bzw. Adjunktion erreichen:
    $M^{*}=V_{m}\Sigma _{m}^{\top }U^{*}$.

## Numerische Bestimmung der Singulärwertzerlegung

Da die Singulärwerte mit den Eigenwerten der Matrix $M^{*}M$ zusammenhängen, wäre ein naheliegender Algorithmus zur numerischen Bestimmung einer Singulärwertzerlegung der Matrix die numerische Lösung des symmetrischen Eigenwertproblems zu $M^{*}M$. Allerdings ist ein solcher Algorithmus numerisch instabil, da durch das Produkt die Konditionszahl quadriert wird, und zudem aufgrund der benötigten Matrizenprodukte auch sehr aufwendig.
In den 1960er Jahren entwickelte vor allem Gene Golub stabile iterative Algorithmen zur Berechnung einer Singulärwertzerlegung, die direkt die Matrix $M$ transformieren, womit die Zerlegung praktisch nutzbar wurde. Diese gehen von der symmetrischen bzw. selbstadjungierten Blockmatrix
    ${\begin{bmatrix}0&M\\M^{\ast }&0\end{bmatrix}}$
aus, deren Eigenwerte die Singulärwerte und deren Negative sowie null sind. Das ursprüngliche Verfahren wurde von ihm 1965 mit William Kahan und ein iteratives 1970 mit Christian Reinsch veröffentlicht. Die Verfahren formen die Matrix zunächst in eine günstigere Gestalt um: Mit Hilfe von orthogonalen Transformationen – etwa Householdertransformationen – wird die Matrix auf Bidiagonalform gebracht. Nach diesem Zwischenschritt erlaubt eine modifizierte Form des QR-Algorithmus eine effiziente numerische Bestimmung der Singulärwerte. Der Aufwand liegt bei ca. ${\tfrac {4}{3}}n^{3}+{\mathcal {O}}\left(n^{2}\right)$ arithmetischen Operationen.

## Anwendung

Die Singulärwertzerlegung wird insbesondere in der numerischen Mathematik verwendet. Damit lassen sich beispielsweise fast singuläre lineare Gleichungssysteme im Rahmen rechentechnischer Genauigkeiten passabel lösen.
Die Singulärwertzerlegung ist die wichtigste numerische Methode in der geophysikalischen Inversion, bei der aus an der Erdoberfläche beobachteten geophysikalischen Signalen aus dem Erdinneren die Struktur des letzteren bestimmt werden kann. Besondere Anwendungen sind hier die seismische Tomographie und das Umkehrproblem der Potentialtheorie.
In der Statistik ist die Singulärwertzerlegung der rechnerische Kern der Hauptkomponentenanalyse, dort auch Karhunen-Loève-Transformation genannt.
Einige moderne Bildkompressionsverfahren beruhen auf einem Algorithmus, der das Bild (= Matrix aus Farbwerten) in eine Singulärwertzerlegung überführt, anschließend nur die stark von null verschiedenen Elemente der Matrix $\Sigma$ berücksichtigt und dann die zur Rückgewinnung der Matrix erforderlichen Vektoren sowie die verbliebenen Diagonalelemente speichert. Besonders effektiv ist diese Kompression bei bestimmten rechteckigen Mustern und natürlich umso effektiver, je größer (und je quadratähnlicher) das Bild ist. Dies ist eine mögliche Anwendung von Modellreduktion. Das Weglassen von kleinen Singulärwerten ist ein verlustbehaftetes Modellreduktionsverfahren.
In der Teilchenphysik benutzt man die Singulärwertzerlegung, um Massenmatrizen von Dirac-Teilchen zu diagonalisieren. Die Singulärwerte geben die Massen der Teilchen in ihren Masseneigenzuständen an. Aus den Transformationsmatrizen $U$ und $V$ konstruiert man Mischungsmatrizen wie die CKM-Matrix, die ausdrücken, dass die Masseneigenzustände von Teilchen aus einer Mischung von Flavour­eigenzuständen bestehen können.
Die Singulärwertzerlegung ist der Kern der Latent Semantic Analysis, eines Verfahrens des Information Retrieval, das hilft, in großen Textkollektionen latente Konzepte aufzudecken, anhand derer dann z. B. unterschiedlich bezeichnete Informationen zum gleichen Thema gefunden werden können.
In der Regelungstheorie ist Singulärwertzerlegung eine der Grundlagen für die Entwicklung von robusten Reglern.