erste Vorlesung Supervised Learning abgeschlossen

This commit is contained in:
paul-loedige 2021-01-26 17:09:37 +01:00
parent cf9dba3e09
commit 77b3f6485e
18 changed files with 112 additions and 3 deletions

View File

@ -2,3 +2,6 @@
\pagenumbering{arabic}
\input{chapters/Basics.tex}
\input{chapters/Supervised Learning.tex}
\input{chapters/Mathematische Grundlagen.tex}

View File

@ -34,3 +34,4 @@ rightsub = \grq%
\usepackage[square, numbers]{natbib}
%math
\usepackage{amsmath}
\usepackage{bm}

View File

@ -20,7 +20,8 @@
Die Dimension dieses Raums wird durch die Anzahl der Features definiert.
Mithilfe des Raumes lassen sich die einzelnen Pattern zueinander in Relation setzen.
\paragraph{Cluster}
Bei gut gewählten Features liegen die Pattern einer Klasse im Feature Space nah beieinander (low intra-class distance).
Bei gut gewählten Features liegen die Pattern einer Klasse im Feature Space nah beieinander (low intra-class distance).\\
\includegraphics[width=\textwidth]{good_vs_bad_features.png}
Falls die einzelnen Klassen zudem einen großen Abstand zueinander im Feature Space haben (large inter-class distance) spricht man von einem \say{Cluster}.
Bei schlecht gewählten Features lassen sich keine Cluster bilden, da die Klassen einander im Feature Space überlappen.\\
\includegraphics[width=\textwidth]{cluster.png}

View File

@ -0,0 +1,47 @@
\chapter{Mathematische Grundlagen}
In diesem Kapitel sind alle mathematischen Grundlagen zusammengefasst, auf die im Rest der Zusammenfassung zurückgegriffen wird.
\section{Vektoralgebra}\label{Vektoralgebra}
\begin{itemize}
\item Eine Größe, die eine Richtung und einen Betrag besitzt ist ein Vektor (z.B. $\bm{a}$).
\item Die Länge des Vektors ist der Betrag ($a=|\bm{a}|$).
\item Ein Einheitsvektor $\bm{e}_{\bm{a}}$ ist ein Vektor in Richtung von $\bm{a}$ mit $a=1$:
$$\bm{e}_{\bm{a}} =\frac{\bm{a}}{a}$$
\item Die Einheitsvektoren $\bm{e}_{\bm{x}}$, $\bm{e}_{\bm{y}}$ und $\bm{e}_{\bm{z}}$ bilden eine Basis für ein 3-dimensionales Koordinatensystem.\\
\includegraphics[width=.4\textwidth]{koordinatensystem.png}
\item Alle Vektoren $\bm{a}$ in diesem Koordinatensystem durch eine Linearkombination von $\bm{e}_{\bm{x}}$, $\bm{e}_{\bm{y}}$ und $\bm{e}_{\bm{z}}$ aufgestellt werden können.
Man spricht hierbei von einer Projektion.\\
\includegraphics[width=.8\textwidth]{projektion.png}
\item Aufgrund der festgelegten Basis kann für $\bm{a}$ auch $(a_x,a_y,a_z)$ geschrieben werden.
Hierdurch ergeben sich auch die Basisvektoren $\bm{e}_{\bm{x}}=(1,0,0)$, $\bm{e}_{\bm{y}}=(1,0,0)$ und $\bm{e}_{\bm{z}}=(1,0,0)$
\item Für die Strecke OP vom Ursprung zu einem Punkt $\text{P}(x,y,z)$ gilt (Ortsvektor):
$$ r=(x,y,z) $$
\item Betrag des Ortsvektors: $r=\sqrt{x^2+y^2+z^2}$
\item Die Verortung von Punkten im Koordinatensystem kann auch über die Winkelbeziehungen erfolgen:\\
\includegraphics[width=.6\textwidth]{winkelbeziehungen.png}
\end{itemize}
\subsection{Skalarprodukt}
Das Skalarprodukt ist ein Ergbnis der Multiplikation von zwei Vektoren.
Betrachtet man die Multiplikation im Sinne von Komponenten erhält man:\\
\includegraphics[width=.6\textwidth]{skalarprodukt.png}\\
Geht man hingegen von der Orthonormalbasis aus, erhält man:
$$
\bm{a}\cdot\bm{b}
= (a_x\cdot\bm{e}_{\bm{x}}+a_y\cdot\bm{e}_{\bm{y}}+a_z\cdot\bm{e}_{\bm{z}})
\cdot((b_x\cdot\bm{e}_{\bm{x}}+b_y\cdot\bm{e}_{\bm{y}}+b_z\cdot\bm{e}_{\bm{z}}))
= a_xb_x+a_yb_y+a_zb_z
$$
Allgemein: $\bm{ab} = \sum^{N}_{i=1}a_ib_i$\\
Desweiteren gibt es noch eine dritte Schreibweise für das Skalarprodukt.
Man schreibt $\langle a,b\rangle = \bm{a}^T\bm{b}$.
$\bm{a}^T=(a_1,a_2,\dots,a_N)$ ist der transponierte Vektor $\bm{a}$.
$$
\bm{b}=\left[ \begin{array}{c} b_1 \\ b_2 \\ \vdots \\ b_N \end{array}\right]
\bm{a}^T\bm{b}=(a_1,a_2,\dots,a_N)\cdot\left[\begin{array}{c}b_1\\b_2\\\vdots\\b_N\end{array}\right] = \sum^N_{i=1}a_ib_i
$$
Diese Form des Skalarproduktes stellt die Grundlage für die Euklidische Norm $L_2$ dar.
$$
||\bm{a}||=\sqrt{\langle a,a\rangle} = \sqrt{\sum^N_{i=1}a_i^2} = |\bm{a}|
$$

View File

@ -0,0 +1,57 @@
\chapter{Supervised Learning}
\section{Einleitung}
Ein sehr komplexes Modell kann zwar das optimale Ergebnis für einen Trainingsdatensatz bilden,
stellt aber zumeist keine gute Lösung für das allgemeine Problem dar.
Meist ist es sinnvoll ein möglichst einfaches Modell zu entwickeln, welches die Trainingsdaten \say{gut} klassifiziert.
Ein solches Modell ist zumeist besser dazu in der Lage unbekannte Pattern zu klassifizieren.
Das Prinzip, immer das einfachste Modell zu wählen wird auch als \say{Occam's Razor} bezeichnet.\\
\includegraphics[width=.4\textwidth]{occam's razor 1.png}
\includegraphics[width=.5\textwidth]{occam's razor 2.png}
\section{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}).
\section{Aufstellung einer Diskriminanten}
\includegraphics[width=.8\textwidth]{diskriminante.png}\\
\paragraph{Verfahren}\mbox{}\\
\begin{enumerate}
\item durchschnittliches Element der Cluster errechnen:\\
\vspace{0.1mm}\\
Class C1: $\overline{m_{1C1}}=\frac{1}{M}\sum^{M-1}_{i=0}m_{1C1,i}\hspace{1mm}\overline{m_{2C1}}=\frac{1}{M}\sum^{M-1}_{i=0}m_{2C1,i}$\\
\vspace{0.1mm}\\
Class C2: $\overline{m_{1C2}}=\frac{1}{M}\sum^{M-1}_{i=0}m_{1C2,i}\hspace{1mm}\overline{m_{2C2}}=\frac{1}{M}\sum^{M-1}_{i=0}m_{2C2,i}$\\
\item Diskriminanten Funktion errechnen:\\
\includegraphics[width=.8\textwidth]{diskriminanten_berechnung.png}\\
\includegraphics[width=.8\textwidth]{diskriminanten_berechnung2.png}\\
\includegraphics[width=.8\textwidth]{diskriminanten_berechnung3.png}
\item \begin{align*}
m_2&=-\frac{1}{a}m_1+m_{h2}+\frac{a}{a}m_{h1}\\
&\downarrow\\
m_2 + \frac{1}{a}m_1 - \left(m_{h2}+\frac{a}{a}m_{h1}\right) &= 0\\
&\downarrow
\end{align*}
\begin{align*}
g(\bm{m}) &= \left(\frac{1}{a},1\right)\begin{pmatrix}m_1\\m_2\end{pmatrix}-\left(\frac{1}{a},1\right)\begin{pmatrix}m_{h1}\\m_{h2}\end{pmatrix} = 0\\
g(\bm{m}) &= \left(\frac{1}{a},1\right)\cdot(\bm{m}-\bm{m}_{\bm{h}}) = 0 \hspace{1mm} \left(\frac{1}{a},1\right)=\bm{C}^T\\
g(\bm{m}) &= \bm{C}^T\tilde{\bm{m}}=0
\end{align*}
\end{enumerate}
\subsection{Beispiel: 3 Koeffizienten}
$g(\bm{m}) = \bm{w}^T\bm{m}=0$ mit $\bm{w}^T = (w_2,w_1,w_0)$ und $\bm{m} = (m_2,m_1,1)^T$:
$$g(\bm{m}) = w_2m_2 + w_1m_1 + w_0 = 0$$
\paragraph{Vergleich der Koeffizienten}
$$g(\bm{m}) = m_2 + \frac{1}{a}m_1-\left(m_{h2}+\frac{1}{a}m_{h1}\right) = 0 \rightarrow a\cdot m_2+m_1-(a\cdot m_{h2}+m_{h1})=0$$
$$w_2m_2+w_1m_1+w_0=0\rightarrow w_2=a$$
$$w_1=1$$
$$w_0=-(a\cdot m_{h2}+m{h1})$$
Daraus folgt:
$$g(\bm{m}) > 0 \forall \bm{m}\in C_2$$
$$g(\bm{m}) < 0 \forall \bm{m}\in C_1$$
\subsection{Das technische Neuron}
Ein technisches Neuron besteht aus den Gewichten für die Eingangswerte und der Aktivierungsfunktion:\\
\includegraphics[width=.8\textwidth]{technisches_neuron.png}

BIN
images/diskriminante.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
images/occam's razor 1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

BIN
images/occam's razor 2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

BIN
images/projektion.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
images/seperability.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

BIN
images/skalarprodukt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB