\chapter{\acl{svm}}\label{svm} \acs{svm}s können als lineare (\ref{linear machines}) oder nicht-lineare Maschinen aufgebaut werden.\\ \begin{tabular}{|p{.475\textwidth}|p{.475\textwidth}|} \hline \textbf{Vorteile} & \textbf{Nachteile}\\ \hline \begin{itemize} \item bei linear separierbaren Datensätzen ist das empirische Risiko (\ref{empirical risk}) $R_{emp}(\bm{w})=0$ \item die Riskoschranke (\ref{risk bound}) ist ungefähr minimal (\say{eingebaute} generalization) \end{itemize} & \begin{itemize} \item funktioniert nur auf kleinen Datensätzen \item ein Wechsel des Datensatzes erfordert ein Neu-Lernen \item die nicht-lineare Variante ist kompliziert im Umgang \end{itemize}\\ \hline \end{tabular} \section{lineare \acl{svm}} \begin{wrapfigure}{h}{.6\textwidth} \vspace{-10mm} \includegraphics[width=.6\textwidth]{svm_base.png} \end{wrapfigure} Für das dargestellte Bild ergibt sich: \begin{flalign*} & g(\bm{m}_1)=0,g(\bm{m}_2)=0 &\\ & \rightarrow \bm{w}^T\bm{m}_1+w_0=\bm{w}^T\bm{m}_2+w_0 &\\ & \Leftrightarrow \bm{w}^T(\bm{m}_1-\bm{m}_2)=0 &\\ & \rightarrow \bm{w}\bot g(\bm{m}) \end{flalign*} hieraus ergibt sich durch umstellen: $$r_p=\frac{g(\bm{m}_p)}{|\bm{w}|}\ge 0$$ und $$r_0=-\frac{w_0}{|\bm{w}|}$$ \subsection{Support Vektoren} Um die Diskriminante in dem Bereich der möglichen Diskriminaten zu wählen, die am besten generalisiert werden unterstützende Vektoren (support vectors) verwendet. Diese verlaufen parallel zu der Diskriminante mit einem Abstand $\gamma$. $\gamma$ wird als \say{Margin} bezeichnet.\\ \includegraphics[width = .8\textwidth]{support_vectors.png}\\ Für 2 Cluster werden dann ähnlich wie beim Perzeptron (\ref{perceptron}) die folgenden Gleichungen aufgestellt: \begin{align*} \bm{w}^T\bm{m}_i+w_0\ge 1 &\text{ für } g_i = +1 \\ \bm{w}^T\bm{m}_i+w_0\le 1 &\text{ für } g_i = -1 \\ \end{align*} Nun wird so reskaliert, dass für mindestens ein Objekt gilt: $$ \forall i:(\bm{w}^T\bm{m}_i + w_0)\cdot g_i = 1 \text{ bzw. }-1 $$ Für den Margin $\gamma$ ergibt sich also: $$\gamma = \frac{g(\bm{m}_S)}{|\bm{w}|} = \frac{1}{|\bm{w}|} = \frac{1}{||\bm{w}||}$$ Der Abstand der zwei Klassen (Two-classes distance) ist dann: $$2\gamma = \frac{2}{||\bm{w}||}$$ \subsubsection{Maximierung des Margin} Da $\frac{1}{||\bm{w}||} \equiv \frac{1}{2}||\bm{w}||^2$ ist, kann die Maximierung des Margin als ein quadratisches Minimierungsproblem behandelt werden. Mithilfe des Lagrange-Ansatzes erhält man: \begin{align*} L_\alpha(\bm{w},w_0,\alpha_i) &= \frac{1}{2}||\bm{w}||^2 - \sum^N_{i=1}\alpha_i\cdot\left[\left(\bm{w}^T\bm{m}_i+w_0\right)\cdot g_i - 1 \right]\\ &= \frac{1}{2}||\bm{w}||^2 - \sum^N_{i=1}\alpha_i \cdot \bm{w}^T\bm{m}_i \cdot g_i + \sum^N_{i=1}\alpha_i \cdot w_0 \cdot g_i - \sum^N_{i=1}\alpha_i \end{align*} Die Funktion ist beschränkt durch: \begin{align*} \frac{\delta L_\alpha}{\delta w_0} &= 0 \Rightarrow \sum^N_{i=1}\alpha_i \cdot g_i = 0\\ \frac{\delta L_\alpha}{\delta \bm{w}} &= 0 \Rightarrow \bm{w} - \sum^N_{i=1}\alpha_i \cdot \bm{m}_i \cdot g_i = 0 \rightarrow \bm{w} = \sum^N_{i=1}\alpha_i \cdot g_i \cdot \bm{m}_i \end{align*} Hieraus ergeben sich die \acl{kkt} Bedingungen \begin{align*} (\bm{w}^T\bm{m}_i + w_0)\cdot g_i - 1 &\ge 0 \\ \alpha_i &\ge 0 \\ \alpha_i\left[\left(\bm{w}^T\bm{m}_i+w_0\right)\cdot g_i -1\right] &=0 \end{align*} Jeder Datenpunkt, für den $\alpha_i>0$ gilt, ist ein \say{support vector}. \subsubsection{Sparsity} \acs{svm}s sind \say{sparse learning machines}, da Sie meist nur von wenigen Support Vektoren abhängen.