Vorlesung 10 abgeschlossen

This commit is contained in:
paul-loedige 2022-02-18 23:52:26 +01:00
parent 8f3bddc574
commit 5d0a5075a1
11 changed files with 137 additions and 5 deletions

View File

@ -87,6 +87,7 @@
\newacronym{ELU}{ELU}{Exponential Linear Units}
\newacronym{GPU}{GPU}{Graphic Processing Unit}
\newacronym{RMS}{RMS}{Root Mean Square}
\newacronym{GMM}{GMM}{Gaussian Mixture Model}
% }}} %

View File

@ -41,7 +41,7 @@
% %Classical_Unsupervised_Learning
chapters/Classical_Unsupervised_Learning/Dimensionality_Reduction,
chapters/Classical_Unsupervised_Learning/Clustering,
chapters/Classical_Unsupervised_Learning/Density_Estimation_and_Mixture_Models,
chapters/Classical_Unsupervised_Learning/Density_Estimation,
chapters/Classical_Unsupervised_Learning/Variational_Auto-Encoders,
% %Mathematische_Grundlagen
%chapters/Mathematische_Grundlagen/Lineare_Algebra,
@ -99,7 +99,7 @@
\label{part:Classical Unsupervised Learning}
\include{chapters/Classical_Unsupervised_Learning/Dimensionality_Reduction.tex}
\include{chapters/Classical_Unsupervised_Learning/Clustering.tex}
\include{chapters/Classical_Unsupervised_Learning/Density_Estimation_and_Mixture_Models.tex}
\include{chapters/Classical_Unsupervised_Learning/Density_Estimation.tex}
\include{chapters/Classical_Unsupervised_Learning/Variational_Auto-Encoders.tex}
\part{Mathematische Grundlagen}

View File

@ -0,0 +1,134 @@
\chapter{Density Estiamtion}%
\label{cha:Density Estiamtion}
Das Ziel von Density Estiamtion Algorithmen ist es,
die Verteilung von Datenpunkten verschiedener Klassen zu modelieren.
Diese Modellierung kann genutzt werden, um
\begin{itemize}
\item die Daten zu klassifizieren
\item Ausreißer zu erkennen
\item neue Daten (z.B. zum Training von anderen Algorithmen) generieren,
die den bereits vorhandenen ähneln
\end{itemize}
Es gibt mehrere Methoden,
die genutzt werden können,
um die Wahrscheinlichkeitsverteilung einer Klasse zu Modellieren.
\section{Parametric Models}%
\label{sec:Parametric Models}
Eine Form der Modellierung ist bereits aus vorhergegangenen Algorithmen bekannt.
Die Wahrscheinlichkeitsverteilung kann durch ein parametrisiertes Modell (z.B. \nameref{sub:Gaussian Distribution}(\cref{sub:Gaussian Distribution}))
approximiert werden.
Diese Methode eignet sich allerdings nicht für Datenverteilungen,
die weit von der Grundannahme (z.B. normalverteilte Datenpunkte) des parametrischen Modells entfernt sind.
\section{Non-parametric Models}%
\label{sec:Non-parametric Models}
Für Datenverteilungen mit unbekannter Grundlage ist es oft sinnvoll ein nicht-parametrisiertes Modell zur Repräsentation der Verteilung zu wählen.
\subsection{Histograms}%
\label{sub:Histograms}
\begin{wrapfigure}{r}{.4\textwidth}
\vspace*{-10mm}
\centering
\includegraphics[width=0.8\linewidth]{histogram.png}
\caption{Histogramm}
\label{fig:histogram}
\end{wrapfigure}
Bei Histogrammen werden die Daten in gleichgroßen Bins gesammelt.
Anschließend bietet die Anzahl der Datenpunkte in den jeweiligen Bins eine generalisierte Repräsentation der Dichteverteilung.
Histogramme bekommen dann Schwierigkeiten,
wenn sie hochdimensionale Daten repräsentieren sollen,
da hier der \nameref{sec:Curse of Dimensionality}(\cref{sec:Curse of Dimensionality}) einsetzt.
Zudem stellt die Wahl der Größe der Bins ein Model-Selection Problem dar.
Eine formale Definition von Histogrammen ist {\color{red} in Vorlesung 10 auf Folie 66} zu finden.
\subsection{Kernel Density Estimation}%
\label{sub:Kernel Density Estimation}
Damit ein Kernel für die Dichteabschätzung verwendet werden kann,
muss er folgende Eigenschaften erfüllen
\begin{itemize}
\item nicht-negativ:\tabto{3cm}$\nomeq{kernel_function}(\bm x,\bm y)\le 0$
\item distance-dependant:\tabto{3cm}$\nomeq{kernel_function}(\bm x,\bm y) = g(\underbrace{\bm x-\bm y}_{\text{difference }\bm u})$
\end{itemize}
Die Dichteabschätzung lässt sich anhand der folgenden Formel durchführen
\begin{equation} \label{eq:kernel_density_estimation}
p(\bm x_*) \approx \frac{K(\bm x_*)}{N V} = \frac{1}{N V}\sum_{i=1}^N g(\bm x_* - \bm x_i)
\end{equation}
\begin{itemize}
\item Volumen $V = \int g(\bm u) d\bm u$
\item Summed Kernel activation $K(\bm x_*) = \sum_{i=1}^N g(\bm x_* - \bm x_i)$
\end{itemize}
\subsubsection{Parzen Window}%
\label{ssub:Parzen Window}
\begin{wrapfigure}{r}{.4\textwidth}
\centering
\includegraphics[width=0.8\linewidth]{parzen_window.png}
\caption{Parzen Window}
\label{fig:parzen_window}
\end{wrapfigure}
Das Parzen Window ist der einfachste Kernel,
der für eine Dichteabschätzung denkbar ist.
Hierbei wird ein Hyper-Würfel um den untersuchten Datenpunkt gelegt und anschließend die Dichte innerhalb des Würfels errechnet.
Die Kernelfunktion ist 1 für alle Punkte innerhalb des Hyper-Würfels und 0 außerhalb.
Diese Art der Dichteabschätzung ist zwar seh einfach zu errechnen,
produziert aber keinen besonders gleichmäßigen Verlauf.
\begin{itemize}
\item Kernel function:
\begin{equation} \label{eq:parzen_window_kernel_function}
g(\bm u) = \begin{cases} 1, &|u_j|\le \frac{h}{2}, j=1\dots d \\ 0, & \text{sonst} \end{cases}
\end{equation}
\item Volume:
\begin{equation} \label{eq:parzen_window_volume}
V = \int g(\bm u) d\bm u = h^d
\end{equation}
\item Estimated Density:
\begin{equation} \label{eq:parzen_window_density_estimation}
p(\bm x_*) \approx \frac{1}{N h^d}\sum_{i=1}^N g(\bm x_* - \bm x_i)
\end{equation}
\end{itemize}
\subsubsection{Gaussian Kernel}%
\label{ssub:Gaussian Kernel}
\includegraphics[scale=.6]{kernel_density_estimation_gaussian_kernel.png}\\\\
\includegraphics[scale=.6]{kernel_density_estimation_gaussian_kde_example.png}
\subsection{K-nearest Neighbor Density Estimation}%
\label{sub:K-nearest Neighbor Density Estimation}
\includegraphics[scale=.6]{k-nearest_neighbor_density_estimation.png}
\subsection{Model-Selection}%
\label{sub:Model-Selection}
Auch alle nicht-parametrisierten Modelle haben irgendeiner Form ein Model-Selection Problem
\begin{itemize}
\item \nameref{sub:Histograms}: Bin Size
\item \nameref{sub:Kernel Density Estimation}: Kernel Bandwidth $h$
\item \nameref{sub:K-nearest Neighbor Density Estimation}: Anzahl der Nachbarn $K$
\end{itemize}
Meistens wird versucht das Modell mithilfe von \nameref{sub:Cross Validation} (\cref{sub:Cross Validation}) zu lösen.
\section{Mixture Models}%
\label{sec:Mixture Models}
Sowohl parametrische, als auch nicht-parametrische Modelle haben ihre Schwachstellen:
\begin{figure}[H]
\centering
\includegraphics[scale = .6]{parametric_nonparametric_density_estimation_comparison.png}
\caption{Vergleich von parametrischen und nicht-parametrischen Modellen}
\label{fig:parametric_nonparametric_density_estimation_comparison}
\end{figure}
Aus diesem Grund wurde Mixture Models erfunden,
welche es ermöglichen ein komplexes Modell auf Basis von einfachen Modellen zu erstellen.
Die Verteilung des Mixture Models berechnet sich hierbei als Summe der Teilverteilungen
\begin{equation} \label{eq:mixture_model_distribution}
p(\bm x) = \sum_{k=1}^K p(k)p(\bm x|k)
\end{equation}
\begin{itemize}
\item Mixture coefficient $p(k)$
\item k-th mixture componen $p(\bm x|k)$
\item Anzahl der Komponenten $K$
\end{itemize}
\subsection{\texorpdfstring{\glsxtrfullpl{GMM}}{\glsfmtfullpl{GMM}}}%
\label{sub:GMMs}
\includegraphics[scale = .6]{GMMs.png}

View File

@ -1,3 +0,0 @@
\chapter{Density Estimation and Mixture Models}%
\label{cha:Density Estimation and Mixture Models}

BIN
images/GMMs.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1014 KiB

BIN
images/histogram.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 966 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 878 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 401 KiB

BIN
images/parzen_window.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB