forked from TH_General/Template_Summary
Bayesian Learning abgeschlossen.
This commit is contained in:
parent
4a994c767f
commit
1dc2ea3a94
@ -79,6 +79,7 @@
|
||||
\newacronym{DNN}{DNN}{Deep Neural Network}
|
||||
\newacronym{RBF}{RBF}{Radial Basis Function Kernel}
|
||||
\newacronym{SVM}{SVM}{Support Vector Machine}
|
||||
\newacronym{ARD}{ARD}{Automatic Relevance Determination}
|
||||
|
||||
%--------------------
|
||||
%nomenclature
|
||||
@ -131,6 +132,8 @@
|
||||
\newnom{slack-variable}{Slack-Variable}{\xi_i}{}
|
||||
\newnom{parameter_vector}{Parameter Vector}{\bm{\theta}}{}
|
||||
\newnom{gaussian_distribution}{Gaußsche Normalverteilung}{\mathcal{N}}{}
|
||||
\newnom{gaussian_process}{Gaußscher Prozess}{\mathcal{GP}}{}
|
||||
\newnom{hyper_parameters}{Hyper-Parameter}{\bm{\beta}}{}
|
||||
\shorthandoff{"}
|
||||
|
||||
\makeglossaries
|
||||
|
@ -1,4 +1,4 @@
|
||||
\chapter{Bayesian Learning**}%
|
||||
\chapter{Bayesian Learning}%
|
||||
\label{cha:Bayesian Learning}
|
||||
Die meisten bisher behandelten Algorithmen geben auf Basis der gegebenen Eingaben ein einzelnes Modell (den \nomf{parameter_vector}) zurück.
|
||||
Wie allerdings bereits gezeigt wurde,
|
||||
|
@ -39,3 +39,43 @@ Anschließend erfolgt die Regression nach den Schritten des \nameref{cha:Bayesia
|
||||
\end{enumerate}
|
||||
Es fällt auf, dass $\nomeq{mean}(\bm{x^*})$ sich im Vergleich zur \nameref{sub:Ridge Regression} nicht verändert hat.
|
||||
Allerdings ist $\nomeq{variance}(\bm x^*)$ jetzt abhängig von den Eingangsdaten.
|
||||
|
||||
\section{Gaussian Processes}%
|
||||
\label{sec:Gaussian Processes}
|
||||
Ein Gaußscher Prozess ist im Grunde nichts anderes als die kernelized version der \nameref{sec:Bayesian Linear Regression} ({\color{red}Beweis: Vorlesung 07 Folie 44 ff.}).
|
||||
\begin{equation} \label{eq:guassian_process_general_definition}
|
||||
f(\bm x)\sim\nomeq{gaussian_process}(\underbrace{m(\bm x)}_{\text{mean function}},\underbrace{k(\bm x,\bm x')}_{\text{covariance function}})
|
||||
\end{equation}
|
||||
\begin{itemize}
|
||||
\item Die \say{mean function} gibt den Prior für die Funktion:
|
||||
\begin{equation} \label{eq:gaussian_process_mean_function}
|
||||
\mathbb{E}[f(\bm x)] = m(\bm x)
|
||||
\end{equation}
|
||||
(im folgenden wird angenommen $m(\bm x) = 0$)
|
||||
\item Die \say{covariance function} gibt an, wie ähnlich die Funktion $f$ an den Stellen $\bm x$ und $\bm x'$ ist
|
||||
\begin{equation}
|
||||
\label{eq:gaussian_process_covariance_function}
|
||||
\mathbb{E}[f(\bm x)f(\bm x')] = k(\bm x,\bm x')
|
||||
\end{equation}
|
||||
(Covariance Function muss positiv definit sein (genau wie Kernel Function(\cref{sec:Positive Definite Kernels})))
|
||||
\end{itemize}
|
||||
Für Gaußsche Prozesse lässt ist der Posterior gegeben durch:\\
|
||||
({\color{red} Herleitung und weitere Informationen Vorlesung 07 Folie 40})
|
||||
\begin{equation} \label{eq:gaussian_process_posterior}
|
||||
p(\bm y|\bm X) = \nomeq{gaussian_distribution}(\bm y|0,\bm K + \sigma_y^2\nomeq{identity_matrix})
|
||||
\end{equation}
|
||||
Hierbei ist $\bm K$ die \say{covariance matrix} und nicht die \noms{kernel_matrix} (außer $k$ ist eine \noms{kernel_function})
|
||||
\begin{equation} \label{eq:covariance_matrix}
|
||||
\bm K = \begin{bmatrix}
|
||||
k(\bm x_1,\bm x_1) & \cdots & k(\bm x_1,\bm x_N)\\
|
||||
\vdots & \ddots & \vdots\\
|
||||
k(\bm x_N, \bm x_1) & \cdots & k(\bm x_N,\bm x_N)
|
||||
\end{bmatrix}
|
||||
\end{equation}
|
||||
Die Vorhersage $p(y^*|\bm X,\bm y,\bm x^*)$ ist eine \noms{gaussian_distribution},
|
||||
wobei \noms{mean} und \noms{variance} gegeben sind durch:\\
|
||||
({\color{red} Herleitung Vorlesung 07 Folie 41})
|
||||
\begin{itemize}
|
||||
\item $\nomeq{mean}(\bm x^*) = \bm k_{\bm x^*}^T(\bm K + \sigma_y^2\nomeq{identity_matrix})^{-1}\bm y$
|
||||
\item $\nomeq{variance}(\bm x^*) = k^* + \sigma_y^2 - \bm k_{\bm x^*}^T(\bm K + \sigma_y^2\nomeq{identity_matrix})^{-1}\bm k_{\bm x^*}$
|
||||
\end{itemize}
|
||||
|
@ -95,3 +95,33 @@ Dies ermöglicht es viele Algorithmen (z.B. \nameref{cha:Linear Classification}
|
||||
\item $\nomeq{kernel_vector}(\bm x^*) = \begin{bmatrix} \nomeq{kernel_function}(\bm x_1,\bm x^*) \\\vdots\\\nomeq{kernel_function}(\bm x_N,\bm x^*) \end{bmatrix}
|
||||
= \begin{bmatrix} \bm\phi(\bm x_1)^T\bm\phi(x^*)\\\vdots\\\bm\phi(\bm x_N)^T \bm\phi(x^*) \end{bmatrix} = \bm\Phi_X\bm\phi(\bm x^*)$
|
||||
\end{itemize}
|
||||
|
||||
\section{Kernels and Hyperparameters}%
|
||||
\label{sec:Kernels and Hyperparameters}
|
||||
Die Parameter eines Kernels werden als \nomf{hyper_parameters} bezeichnet.
|
||||
Wenn man den \nameref{sub:Gaussian Kernel} um eine length-scale $l_k$ für jede Dimension $k$ erweitert und alle \noms{hyper_parameters},
|
||||
die meist nicht benötigt werden hinzufügt,
|
||||
erhält man einen Kernel,
|
||||
der auch als \gls{ARD} Kernel bezeichnet wird:
|
||||
\begin{equation} \label{ARD_kernel}
|
||||
k(\bm x_i,\bm x_j)= \lambda^{-1}\exp\left( -\sum_{k=1}^d \frac{(x_{i,k} - x_{j,k})^2}{2l_k^2} \right) + \delta_{ij}\sigma_y^2
|
||||
\end{equation}
|
||||
\begin{itemize}
|
||||
\item $\lambda$: \tabto{2cm}a-priori Genauigkeit des Gewichtsvektors (prior precision of weight vector)
|
||||
\item $\lambda^2$: \tabto{2cm} Rauschvarianz (noise variance) (gilt nur für $i=j$)
|
||||
\item $l_k$:\tabto{2cm} Längenskalierung (length scale) für die Dimension $k$
|
||||
\end{itemize}
|
||||
Die Längenskalierung $l_k$ legt die Relevanz der jeweiligen Dimension fest (je größer $l_k$ desto unwichtiger $k$)
|
||||
|
||||
\subsection{Optimization of the Hyperparameters}%
|
||||
\label{sub:Optimization of the Hyperparameters}
|
||||
\begin{align} \label{eq:hyper_parameter_optimization}
|
||||
\nomeq{hyper_parameters}^* &= \argmax_{\nomeq{hyper_parameters}} \nomeq{gaussian_distribution}(\bm y|0,\bm C_{\nomeq{hyper_parameters}})\\
|
||||
&= \argmax_{\nomeq{hyper_parameters}} -\frac{1}{2}\log|\bm C_{\nomeq{hyper_parameters}}| - \frac{1}{2}\bm y^T\bm C_{\nomeq{hyper_parameters}}\bm y - \frac{N}{2}\log(2\pi)
|
||||
\end{align}
|
||||
Leider ist diese zu optimierende Funktion nicht konvex,
|
||||
weshalb hier nur mit dem \nameref{sec:Gradient Descent} Verfahren angesetzt werden kann
|
||||
und auch hierbei potentiell nur ein lokales Optimum gefunden wird.
|
||||
\subsubsection{Beispiele}%
|
||||
\label{ssub:Beispiele}
|
||||
({\color{red}siehe Vorlesung 07 Folie 55 ff.})
|
||||
|
Loading…
x
Reference in New Issue
Block a user