---
format:
  pdf:
    fontsize: 11pt
    number-sections: true
    include-in-header: ../MV_Header_Seminar.tex
lang: de
---


\setcounter{section}{2}
# Eigenanalyse


## Mathematische Grundlagen

In der Vorlesung haben wir die Begriffe des Eigenwerts und des Eigenvektors einer quadratischen Matrix $A \in \mathbb{R}^{n \times n}$ kennengelernt. Dabei ist ein $n$-dimensionaler Vektor $v \neq 0_n$ ein \textit{Eigenvektor} von $A$, wenn für ihn mit einem passenden \textit{Eigenwert} $\lambda \in \mathbb{R}$ gilt:

\begin{equation} \label{eq:Av-lv}
Av = \lambda v \; .
\end{equation}

Ein Eigenvektor $v$ von $A$ wird also durch $A$ um einem Faktor $\lambda$ verlängert. Per Konvention betrachten wir nur Eigenvektoren mit der Länge 1, d.h. $||v|| = \sqrt{v_1^2 + \ldots + v_n^2} = 1$. Jeder Eigenvektor hat einen zugehörigen Eigenwert, die Eigenwerte verschiedener Eigenvektoren können jedoch identisch sein.

\vspace{1em}
Auf Grundlage der Eigenanalyse kann eine symmetrische Matrix $S \in \mathbb{R}^{n \times n}$ \textit{diagonalisiert} werden: In der \textit{Orthonormalzerlegung} wird die Matrix $S$ geschrieben als

\begin{equation} \label{eq:S-QLQ}
S = Q \Lambda Q^\mathrm{T} \; ,
\end{equation}

wobei $Q \in \mathbb{R}^{n \times n}$ eine orthogonale Matrix ist, deren Spalten die Eigenvektoren von $S$ sind, und $\Lambda \in \mathbb{R}^{n\times n}$ eine Diagonalmatrix ist, deren Diagonaleinträge die Eigenwerte von $S$ sind.

\vspace{1em}
Die Orthonormalzerlegung kann auch auf nicht-symmetrische Matrizen $Y \in \mathbb{R}^{n \times m}$ verallgemeinert werden: In der \textit{Singulärwertzerlegung} wird die Matrix $Y$ geschrieben als

\begin{equation} \label{eq:Y-USV}
Y = U S V^\mathrm{T} \; ,
\end{equation}

wobei $U \in \mathbb{R}^{n \times n}$ und $V \in \mathbb{R}^{m \times m}$ orthogonale Matrizen sind und $S \in \mathbb{R}^{n \times m}$ eine Diagonalmatrix ist, deren Diagonaleinträge die \textit{Singulärwerte} von $Y$ genannt werden.

\vspace{1em}
Der Zusammenhang zwischen der Singulärwertzerlegung einer Matrix $Y = U S V^\mathrm{T}$ und der Eigenanalyse besteht darin, dass die Spalten von $U$ die Eigenvektoren von $Y Y^\mathrm{T}$, die Spalten von $V$ die Eigenvektoren von $Y^\mathrm{T} Y$ und die quadrierten Diagonaleinträge von $S$ die zugehörigen Eigenwerte sind.


\pagebreak
## Analyse in R

Wir beginnen zunächst mit der Definition und Eigenanalyse einer $2 \times 2$ Matrix. Erklären Sie die Funktion und Details des folgenden R-Codes:

\footnotesize
```{r, echo = T, eval = T, results = 'hide'}
# Definition Matrix
A = matrix(c(2,1,
             1,2),
           nrow  = 2,
           byrow = TRUE)

# Eigenanalyse
EA = eigen(A)

# Eigenwerte von A
print(EA$values)

# Eigenvektoren von A
print(EA$vectors)
```
\normalsize


## Erste Programmieraufgabe

Überprüfen Sie nun die Ergebnisse der Eigenanalyse, indem Sie die skalierten Eigenvektoren $\lambda_i v_i$ mit den Matrixprodukten $A v_i$ vergleichen. Gehen Sie dazu wie folgt vor:

- Extrahieren Sie die Eigenwerte der Matrix $A$ aus dem Feld \verb|EA$values|. Speichern Sie die Eigenwerte als Variablen \verb|l_1| und \verb|l_2|.

- Extrahieren Sie die Eigenvektoren der Matrix $A$ aus dem Feld \verb|EA$vectors|. Speichern Sie die Eigenvektoren als Variablen \verb|v_1| und \verb|v_2|.

- Berechnen Sie die Matrixprodukte $A v_1$ und $A v_2$. Speichern Sie die Ergebnisse als Variablen \verb|Av_1| und \verb|Av_2|.

- Geben Sie die Ergebnisse ihrer Analyse aus. Sie sollten folgende Ergebnisse erhalten:

\footnotesize
```{r, echo = F, eval = T}

```
\normalsize


## Abbildung in R

Im nächsten Schritt sollen die Ergebnisse visualisiert werden. Erklären Sie den folgenden R-Code und die daraus resultierende Abbildung:

\footnotesize
```{r, echo = T, eval = F}
# Abbildungsparameter
library(latex2exp)
par(
    family      = "sans",
    mfcol       = c(1,1),
    pty         = "s",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1,
    cex.main    = 1.2)

# Plot-Objekt
plot(NULL,
    xlab        = TeX("$x_1$"),
    ylab        = TeX("$x_2$"),
    xlim        = c(-2.6, 2.6),
    ylim        = c(-2.6, 2.6))
grid()

# Pfeildarstellung der Eigenvektoren
arrows(
    x0          = c(0,0),
    y0          = c(0,0),
    x1          = c(v_1[1], v_2[1]),
    y1          = c(v_1[2], v_2[2]),
    angle       = 20,
    length      = 0.1,
    lwd         = 2,
    col         = c("black", "black"),
    xpd         = TRUE)

# Pfeildarstellung der Matrixprodukte
arrows(
    x0          = c(0,0),
    y0          = c(0,0),
    x1          = c(Av_1[1], Av_2[1]),
    y1          = c(Av_1[2], Av_2[2]),
    angle       = 20,
    length      = 0.1,
    lwd         = 1,
    col         = c("gray", "gray"),
    xpd         = TRUE)

# Annotation
text( 1/sqrt(2),  0.9, TeX("$v_1$"))
text(-1/sqrt(2),  0.9, TeX("$v_2$"))
text(         2,  2.3, TeX("$Av_1 = \\lambda_1 v_1$"))
text(        -1,  0.3, TeX("$Av_2 = \\lambda_2 v_2$"))

# Speicherung
dev.copy2pdf(
    file        = "Abbildungen/Eigenanalyse_1.pdf",
    width       = 6,
    height      = 6)
```
\normalsize

\vspace{-2em}
![Eigenvektoren und Eigenwerte der $2 \times 2$ Matrix $A$.]("Abbildungen/Eigenanalyse_1.pdf"){#eigenanalyse-1 fig-align="center" width=80%}


\pagebreak
## Zweite Programmieraufgabe

Im letzten Schritt soll der in der Vorlesung besprochene Zusammenhang zwischen Eigenanalyse und Singulärwertzerlegung anhand des in der ersten Seminarsitzung vorgestellten Datensatzes nachvollzogen werden. Gehen Sie dazu wie folgt vor:

- Laden Sie die FADE-Scores und SAME-Scores aller Personen aus der Datei `FADE_SAME.csv`. Sie können hierzu den R-Code aus Abschnitt 2.4 des Arbeitsblatts (2) *Matrizen* verwenden.

- Führen Sie mithilfe der R-Funktion \verb|svd()| eine Singulärwertzerlegung der Matrix $Y$ durch. Extrahieren Sie die orthonale Matrix $U$ aus dem Feld \verb|$u|, die orthonale Matrix $V$ aus dem Feld \verb|$v| und die Singulärwerte aus dem Feld \verb|$d|.

- Führen mithilfe der R-Funktion \verb|eigen()| eine Eigenanalyse der Matrix $Y^\mathrm{T} Y$ durch. Extrahieren Sie die Eigenwerte aus dem Feld \verb|$values| und die Eigenvektoren aus dem Feld \verb|$vectors|.

- Vergleichen Sie die Resultate von Eigenanalyse und Singulärwertzerlegung. Sie sollten folgende Ergebnisse erhalten:

\footnotesize
```{r, echo = F, eval = T}

```
\normalsize


\pagebreak
## Lückentext

Füllen Sie mit den in der Übung gewonnenen Erkenntnissen den folgenden Lückentext aus und präsentieren Sie die Ergebnisse im Seminar:

\vspace{1em}
**Lückentext:** Eine Diagonalmatrix ist eine Matrix, bei der __________. Eine orthogonale Matrix ist eine Matrix, die __________. Im Rahmen der Eigenanalyse einer $n \times n$ Matrix $A$ sind die Eigenwerte __________ und die Eigenvektoren __________-dimensionale Vektoren. Es gilt die Gleichung __________ $=$ __________. Für eine $n \times m$ Matrix $Y$ ($n > m$) mit der Singulärwertzerlegung $Y = USV^\mathrm{T}$ ist $U$ eine orthogonale Matrix der Größe __________, $V$ eine orthogonale Matrix der Größe __________ und $S$ eine __________ der Größe $n \times m$. Die Diagonaleinträge von $S$ sind die __________ der Eigenwerte der Matrix __________.


## Mögliche Klausurfrage

Präsentieren Sie im Seminar folgende Klausurfrage und erklären Sie die richtige Antwort:

\vspace{1em}
**Frage:** $A \in \mathbb{R}^{n \times n}$ sei eine quadratische Matrix und $v$ sei ein Eigenvektor von $A$ zum Eigenwert $\lambda$. Welche Aussage ist \textbf{nicht} notwendigerweise korrekt?
\begin{enumerate}[a)]
\item $\lambda$ ist ein Skalar.
\item $v$ ist ein $n$-dimensionaler Vektor.
\item $v$ wird durch $A$ um den Faktor $\lambda$ verlängert.
\item $v$ ist ein Einheitsvektor.
\end{enumerate}


## Kinderwitz

Why is 6 so nervous?

\begin{turn}{180}
Answer: Because 7 8 9.
\end{turn}