Clustering hinzugefügt.
@ -68,6 +68,7 @@
|
||||
\newacronym{CNN}{CNN}{Convolutional Neural Network}
|
||||
\newacronym{RNN}{RNN}{Recurrent Neural Network}
|
||||
\newacronym{SSE}{SSE}{Summed Squared Error}
|
||||
\newacronym{SSD}{SSD}{Sum of Squared Distances}
|
||||
\newacronym{MSE}{MSE}{Mean Squared Error}
|
||||
\newacronym{FRM}{FRM}{\gls{full_rank_matrix}}
|
||||
\newacronym{MLE}{MLE}{Maximum Likelihood Estimation}
|
||||
@ -120,6 +121,7 @@
|
||||
% }}} Nomencalture Commands %
|
||||
|
||||
\newnom{summed_squared_error}{\gls{SSE}}{\text{\glsxtrshort{SSE}}}{\glsxtrfull{SSE}}
|
||||
\newnom{sum_of_squared_distances}{\gls{SSD}}{\text{\glsxtrshort{SSD}}}{\glsxtrfull{SSD}}
|
||||
\newnom{mean_squared_error}{\gls{MSE}}{\text{\glsxtrshort{MSE}}}{\glsxtrfull{MSE}}
|
||||
\newnom{residual_sum_squares}{\gls{RSS}}{\text{\glsxtrshort{RSS}}}{\glsxtrfull{RSS}}
|
||||
\newnom{gaussian_noise}{Gausches Rauschen}{\epsilon}{zufällige (normalverteilte) Abweichung}
|
||||
|
@ -1,3 +1,107 @@
|
||||
\chapter{Clustering}%
|
||||
\label{cha:Clustering}
|
||||
Beim Clustering geht es darum Datenpunkte auf Basis der Ähnlichkeit ihrer Eigenschaften zu gruppieren.
|
||||
Ein Problem des Clusterings besteht allerdings darin,
|
||||
dass die Auswahl der Ähnlichkeit sehr subjektiv sein kann.
|
||||
Das Ziel ist es ein Ähnlichkeitsmaß zu finden,
|
||||
dass die Datenpunkte in die vom Anwender gewünschten Gruppen clustert.
|
||||
|
||||
\section{K-Means Lagorithm}%
|
||||
\label{sec:K-Means Lagorithm}
|
||||
Das Ziel des K-Means Algorithmus ist es eine vorgegebene Anzahl an Clustern zu finden.
|
||||
Das Ziel ist es die \gls{SSD} zu reduzieren.
|
||||
\begin{equation} \label{eq:SSD}
|
||||
\nomeq{sum_of_squared_distances}(C,\mathcal D) = \sum_{i=1}^n d(\bm x_i,c(\bm x_i))^2
|
||||
\end{equation}
|
||||
\begin{itemize}
|
||||
\item $\mathcal D = \{\bm x_1,\dots,\bm x_n\}$: die gegebenen Datenpunkte
|
||||
\item $C = \{\bm c_1,\dots,\bm c_k\}$: die aktuellen Mittelpunkte der Cluster
|
||||
\item $c(\bm x)$: gibt den Cluster"~Mittelpunkt $\bm c\in C$ zurück, welcher $\bm x$ am nächsten liegt
|
||||
\item $d(\bm x,\bm c)$: Abstand zwischen $\bm c$ und $\bm x$
|
||||
\end{itemize}
|
||||
\begin{mybox}
|
||||
\textbf{\Large K-Means Algorithmus} \\
|
||||
\begin{enumerate}
|
||||
\item beliebige Cluster"~Mittelpunkte $K$ wählen
|
||||
\item jeden Datenpunkt zu dem nächstgelegenen Cluster"~Mittelpunkt zuweisen\\
|
||||
$z_n = \argmin_k\|\bm c_k - \bm x_n\|^2$
|
||||
\item jeder Cluster"~Mittelpunkt wird an den Mittelpunkt der ihm zugeteilten Datenpunkte verschoben\\
|
||||
$\bm c_k = \frac{1}{|X_k|}\sum_{\bm x_i\in X_k}\bm x_i,\quad X_k = \{\bm x_n|z_n=k\}$
|
||||
\item Durchlauf ab Schritt 2 wiederholen, bis sich nichts mehr ändert
|
||||
\end{enumerate}
|
||||
\end{mybox}
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
\begin{subfigure}[t]{.3\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{k-means_1.png}
|
||||
\caption{Schritt 1: Initialisierung}
|
||||
\label{fig:k-means_1}
|
||||
\end{subfigure}\hfill
|
||||
\begin{subfigure}[t]{.3\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{k-means_2.png}
|
||||
\caption{Schritt 2: Zuordnung der Datenpunkte}
|
||||
\label{fig:k-means_2}
|
||||
\end{subfigure}\hfill
|
||||
\begin{subfigure}[t]{.3\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{k-means_3.png}
|
||||
\caption{Schritt 3: Verschiebung der Cluster"~Mittelpunkte}
|
||||
\label{fig:k-means_3}
|
||||
\end{subfigure}
|
||||
\begin{subfigure}[t]{.3\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{k-means_4.png}
|
||||
\caption{Schritt 2: Zuordnung der Datenpunkte}
|
||||
\label{fig:k-means_4}
|
||||
\end{subfigure}\hfill
|
||||
\begin{subfigure}[t]{.3\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{k-means_5.png}
|
||||
\caption{Schritt 3: Verschiebung der Cluster"~Mittelpunkte}
|
||||
\label{fig:k-means_5}
|
||||
\end{subfigure}\hfill
|
||||
\begin{subfigure}[t]{.3\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{k-means_6.png}
|
||||
\caption{Schritt 2: Zuordnung der Datenpunkte\\ Schritt 3: keine Änderung nötig $\Rightarrow$ Beendigung des Algorithmus'}
|
||||
\label{fig:k-means_6}
|
||||
\end{subfigure}
|
||||
|
||||
\caption{K-Means Algorithmus in Aktion}
|
||||
\label{fig:}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Konvergenz}%
|
||||
\label{sub:K-Means:Konvergenz}
|
||||
Es kann gezeigt werden,
|
||||
dass K-Means konvergiert ({\color{red} Gesamtfoliensatz Folie 683}).
|
||||
Allerdings wird nur ein lokales Optimum gefunden.
|
||||
Ob dieses dem globalen Optimum entspricht ist vor allem von der Initialisierung der Cluster"~ Mittelpunkte abhängig.
|
||||
Die Suche nach dem globalen Optimum stellt allerdings ein NP-hartes Problem dar.
|
||||
|
||||
\subsection{K-Means++}%
|
||||
\label{sub:K-Means++}
|
||||
Besondere Form des K-Means Algorithmus',
|
||||
bei dem der erste Cluster"~Mittelpunkt zufällig gewählt wird
|
||||
und alle darauffolgenden Cluster"~Mittelpunkte auf die Datenpunkte gelegt werden,
|
||||
die am weitesten von allen bisher festgelegten Cluster"~Mittelpunkten entfernt liegt.
|
||||
\begin{equation} \label{eq:k-means++_centroid_selection}
|
||||
\text{let} n = \argmax_{i\in\{1,\dots,n\}}\left( \min_{k'\in\{1,\dots,k-1\}} \| \bm x_i-\bm c'_k \|^2 \right),\qquad \bm c_k = \bm x_i
|
||||
\end{equation}
|
||||
|
||||
\subsection{Number of Clusters}%
|
||||
\label{sub:Number of Clusters}
|
||||
Die Wahl der richtigen Clusterzahl ist das Kernproblem des K-Means Clustering.
|
||||
Eine Methode zur Auswahl der Clusterzahl ist die \say{Knee-finding} Methode.
|
||||
Hierbei wird der K-Means Algorithmus für verschiedene Clusterzahlen durchgeführt
|
||||
und analysiert,
|
||||
ab welcher Anzahl sich die Gesamtsumme der \glspl{SSD} nicht mehr signifikant ändert.
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
\includegraphics[width=0.6\textwidth]{knee-finding_method.png}
|
||||
\caption{Knee-finding Methode}
|
||||
\label{fig:knee-finding_method}
|
||||
\end{figure}
|
||||
|
||||
|
BIN
images/k-means++.png
Normal file
After Width: | Height: | Size: 43 KiB |
BIN
images/k-means_1.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
images/k-means_2.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
images/k-means_3.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
images/k-means_4.png
Normal file
After Width: | Height: | Size: 60 KiB |
BIN
images/k-means_5.png
Normal file
After Width: | Height: | Size: 60 KiB |
BIN
images/k-means_6.png
Normal file
After Width: | Height: | Size: 45 KiB |
BIN
images/knee-finding_method.png
Normal file
After Width: | Height: | Size: 16 KiB |