Backpropagation nach Gradient Descent verschoben.

This commit is contained in:
paul-loedige 2022-02-17 18:58:58 +01:00
parent 0041e5e5de
commit b30a277efc
3 changed files with 12 additions and 12 deletions

View File

@ -52,7 +52,7 @@
\part{Neural Networks} \part{Neural Networks}
\label{part:Neural Networks} \label{part:Neural Networks}
\input{chapters/Neural_Networks/Basics.tex} \input{chapters/Neural_Networks/Basics.tex}
\input{chapters/Neural_Networks/Backpropagation.tex} \input{chapters/Neural_Networks/Gradient_Descent.tex}
\input{chapters/Neural_Networks/CNNs_and_LSTMs.tex} \input{chapters/Neural_Networks/CNNs_and_LSTMs.tex}
\part{Classical Unsupervised Learning} \part{Classical Unsupervised Learning}

View File

@ -40,7 +40,7 @@ Zwei Wahrscheinlichkeitsdichtefunktionen können dabei auf verschiedene Arten mi
\paragraph{Ketten"~\slash\,Produktregel}% \paragraph{Ketten"~\slash\,Produktregel}%
\label{par:Ketten-/Produktregel} \label{par:Ketten-/Produktregel}
\begin{align}\label{eq:chain_rule} \begin{align}\label{eq:probability_theory:chain_rule}
p(x,y) &= p(x|y)p(y) \\ p(x,y) &= p(x|y)p(y) \\
p(x_1,\dots,x_D) &= p(x_1)p(x_2|x_1)\dots p(x_D|x_1,\dots, x_{D-1}) p(x_1,\dots,x_D) &= p(x_1)p(x_2|x_1)\dots p(x_D|x_1,\dots, x_{D-1})
\end{align} \end{align}

View File

@ -1,10 +1,10 @@
\chapter{Backpropagation}% \chapter{Gradient Descent}%
\label{cha:Backpropagation} \label{cha:Gradient Descent}
Um die einzelnen Gewichte rückwirkend durch die verschiedenen Schichten eines Neural Networks einzulernen wird das Verfahren der Backpropagation benutzt.
Bei diesem Verfahren wird der \nameref{sec:Gradient Descent} verwendet. \section{Backpropagation}%
Die eigentliche Backpropagation findet erst dann statt, \label{sec:Backpropagation}
wenn die Anpassungen, Um ein \nameref{sec:Gradient Descent} für ein Neurales Netzwerk durchzuführen,
die sich aus dem \nameref{sec:Gradient Descent} ergeben rückwirkend auf die verschiedenen Schichten des Neural Networks angewandt werden sollen. müssen zunächst die einzelnen Gradienten der einzelnen Gewichte rückwirkend durch die verschiedenen Schichten eines Neural Networks ermittelt werden.
Die Loss Function errechnet sich hier durch Die Loss Function errechnet sich hier durch
\begin{equation} \label{eq:backpropagration_loss_function} \begin{equation} \label{eq:backpropagration_loss_function}
\mathcal L(\bm\theta,\mathcal D) = \sum_{i=1}^N l(\bm x_i,\bm\theta) + \nomeq{regularization_factor}\text{ penalty}(\bm\theta) \mathcal L(\bm\theta,\mathcal D) = \sum_{i=1}^N l(\bm x_i,\bm\theta) + \nomeq{regularization_factor}\text{ penalty}(\bm\theta)
@ -20,7 +20,7 @@ Die Loss Function errechnet sich hier durch
Um die Gewichtsvektoren auf Basis dieser Loss Function anzupassen muss die partielle Ableitung für die jeweilige Gewichtsmatrix und den Biasvektor gezogen werden. Um die Gewichtsvektoren auf Basis dieser Loss Function anzupassen muss die partielle Ableitung für die jeweilige Gewichtsmatrix und den Biasvektor gezogen werden.
Hierfür ist die Kettenregel nützlich, Hierfür ist die Kettenregel nützlich,
die die Regeln für die partielle Ableitung vorgibt die die Regeln für die partielle Ableitung vorgibt
\begin{equation} \label{eq:chain_rule} \begin{equation} \label{eq:backpropagation:chain_rule}
\frac{d}{dt}f(x(t)) = \frac{df}{dx}\frac{dx}{dt} \frac{d}{dt}f(x(t)) = \frac{df}{dx}\frac{dx}{dt}
\end{equation} \end{equation}
In \cref{fig:backpropagation} ist dieser Ablauf am Beispiel eines zweistufigen Neuronalen Netzes gezeigt. In \cref{fig:backpropagation} ist dieser Ablauf am Beispiel eines zweistufigen Neuronalen Netzes gezeigt.
@ -60,8 +60,8 @@ Mithilfe der Matrix-Rechentricks aus \cref{sec:Matrix-Calculus} ist es möglich
({\color{red}Herleitung Vorlesung 08 Folien 52 und 53})\\ ({\color{red}Herleitung Vorlesung 08 Folien 52 und 53})\\
\includegraphics[scale=.65]{multi-layer_perceptron_matrix_form.png} \includegraphics[scale=.65]{multi-layer_perceptron_matrix_form.png}
\section{Computational costs}% \subsection{Computational costs}%
\label{sec:Computational costs} \label{sub:Computational costs}
Die Computational Costs für eine Backpropagation ergibt sich als Summe aus dem Forward Pass und dem Backward Pass. Die Computational Costs für eine Backpropagation ergibt sich als Summe aus dem Forward Pass und dem Backward Pass.
Die Kosten für den Forward Pass sind in etwa linear in der Anzahl der Gewichte, Die Kosten für den Forward Pass sind in etwa linear in der Anzahl der Gewichte,
da für jedes Gewicht in etwa eine Addition und Multiplikation nötig ist. da für jedes Gewicht in etwa eine Addition und Multiplikation nötig ist.