generated from TH_General/Template_Summary
lineare SVMs hinzugefügt
This commit is contained in:
parent
1d48b32429
commit
51a4e336cd
@ -5,4 +5,5 @@
|
||||
\acro{vc-dimension} [VC-Dimension] {Vapnik-Chervonenkis-Dimension}
|
||||
\acro{srm} [SRM] {Structural Risk Minimisation}
|
||||
\acro{svm} [SVM] {Support Vector Machines}
|
||||
\acro{kkt} [KKT] {Karush-Kuhn-Tucker}
|
||||
\end{acronym}
|
@ -6,6 +6,7 @@
|
||||
%images
|
||||
\usepackage{graphicx}
|
||||
\graphicspath{ {./images/} }
|
||||
\usepackage{wrapfig}
|
||||
%svg images
|
||||
\usepackage{svg}
|
||||
%quotation
|
||||
|
@ -1,4 +1,4 @@
|
||||
\chapter{Linear Machines}
|
||||
\chapter{Linear Machines}\label{linear machines}
|
||||
Mithilfe von linearen Maschinen lassen sich bestimmte Arten von Problemen klassifizieren.\\
|
||||
\includegraphics[width=\textwidth]{seperability.png}\\
|
||||
Hierfür wird auf viele Aspekte der Vektoralgebra zurückgegriffen (siehe \ref{Vektoralgebra}).
|
||||
@ -46,7 +46,7 @@
|
||||
Ein technisches Neuron besteht aus den Gewichten für die Eingangswerte und der Aktivierungsfunktion:\\
|
||||
\includegraphics[width=.8\textwidth]{technisches_neuron.png}
|
||||
|
||||
\section{Das Perzeptron}
|
||||
\section{Das Perzeptron}\label{perceptron}
|
||||
Ein Perzeptron beschreibt eine lineare Maschine, die eine Datenmenge durch eine Hyper-Ebene (die Diskriminante) in zwei Cluster unterteilt.
|
||||
Die Funktion für die Diskriminante ist hierbei $y(\bm{m})=\text{sng}(g(\bm{m})) = \text{sgn}(\bm{w}^T\bm{m}+w_0)$.
|
||||
Da sich $\bm{w}$ durch $\bm{w} = \sum^n_{i=1}\alpha_i\cdot y_i \cdot \bm{m}_i$ (mit $n = $Anzahl der Datenpunkte und $\alpha_i = $ Anzahl, wie oft $\bm{m}_i$ ausgewählt wurde) definiert ist die Dimension von $\bm{m}$ unwichtig.
|
||||
@ -129,7 +129,7 @@
|
||||
\hline
|
||||
\end{tabular}
|
||||
|
||||
\subsection{Risk Bound}
|
||||
\subsection{Risk Bound}\label{risk bound}
|
||||
Die Risikoschranke gibt an, wie weit das Empirische Risiko von dem tatsächlichen Risiko abweichen kann.
|
||||
$$R(\bm{w})\le R_{emp}(\bm{w})+\varepsilon(N,\kappa,h)$$
|
||||
\begin{itemize}
|
||||
|
75
chapters/Supervised Learning/SVM.tex
Normal file
75
chapters/Supervised Learning/SVM.tex
Normal file
@ -0,0 +1,75 @@
|
||||
\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.
|
BIN
images/support_vectors.png
Normal file
BIN
images/support_vectors.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 59 KiB |
BIN
images/svm_base.png
Normal file
BIN
images/svm_base.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 94 KiB |
@ -1,3 +1,4 @@
|
||||
\part{Supervised Learning}
|
||||
\input{chapters/Supervised Learning/Occam's Razor.tex}
|
||||
\input{chapters/Supervised Learning/Linear Machines.tex}
|
||||
\input{chapters/Supervised Learning/Linear Machines.tex}
|
||||
\input{chapters/Supervised Learning/SVM.tex}
|
Loading…
x
Reference in New Issue
Block a user