Added section about adversarial attacks

This commit is contained in:
Clemens Dautermann 2020-02-12 19:19:13 +01:00
parent 4d241f5576
commit c5fae3178f
9 changed files with 10363 additions and 363 deletions

View file

@ -39,110 +39,117 @@
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {1.3}Gefahren von maschinellem Lernen}{5}{subsection.1.3}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {1.3.1}Die Daten}{6}{subsubsection.1.3.1}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {1.3.2}Overfitting}{6}{subsubsection.1.3.2}\protected@file@percent }
\abx@aux@cite{8}
\abx@aux@segm{0}{0}{8}
\abx@aux@cite{9}
\abx@aux@segm{0}{0}{9}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Klassengrenzen mit und ohne Overfitting\relax }}{7}{figure.caption.4}\protected@file@percent }
\newlabel{Overfitting}{{3}{7}{Klassengrenzen mit und ohne Overfitting\relax }{figure.caption.4}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {2}Verschiedene Techniken maschinellen Lernens}{7}{section.2}\protected@file@percent }
\newlabel{sec:verschiedene-techniken-maschinellen-lernens}{{2}{7}{Verschiedene Techniken maschinellen Lernens}{section.2}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {1.4}Adversarial attacks}{7}{subsection.1.4}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {2}Verschiedene Techniken maschinellen Lernens}{8}{section.2}\protected@file@percent }
\newlabel{sec:verschiedene-techniken-maschinellen-lernens}{{2}{8}{Verschiedene Techniken maschinellen Lernens}{section.2}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}\IeC {\"U}berwachtes Lernen}{8}{subsection.2.1}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {2.2}Un\IeC {\"u}berwachtes Lernen}{8}{subsection.2.2}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {2.3}Best\IeC {\"a}rkendes Lernen}{8}{subsection.2.3}\protected@file@percent }
\abx@aux@cite{2}
\abx@aux@segm{0}{0}{2}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {2.3}Best\IeC {\"a}rkendes Lernen}{9}{subsection.2.3}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {3}Neuronale Netze}{9}{section.3}\protected@file@percent }
\newlabel{sec:neuronale-netze}{{3}{9}{Neuronale Netze}{section.3}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Maschinelles Lernen und menschliches Lernen}{9}{subsection.3.1}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Neuron \newline Quelle: simple.wikipedia.org/wiki/File:Neuron.svg\newline Copyright: CC Attribution-Share Alike von Nutzer Dhp1080,\newline bearbeitet}}{9}{figure.caption.5}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Neuron \newline Quelle: simple.wikipedia.org/wiki/File:Neuron.svg\newline Copyright: CC Attribution-Share Alike von Nutzer Dhp1080,\newline bearbeitet}}{10}{figure.caption.5}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}Der Aufbau eines neuronalen Netzes}{10}{subsection.3.2}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Ein einfaches neuronales Netz\relax }}{11}{figure.caption.6}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.3}Berechnung des Ausgabevektors}{11}{subsection.3.3}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.3}Berechnung des Ausgabevektors}{12}{subsection.3.3}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces Der Plot der Sigmoid Funktion $\sigma (x)=\frac {e^x}{e^x+1}$\relax }}{12}{figure.caption.7}\protected@file@percent }
\newlabel{Sigmoid}{{6}{12}{Der Plot der Sigmoid Funktion $\sigma (x)=\frac {e^x}{e^x+1}$\relax }{figure.caption.7}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Formel zur Berechnung eines Ausgabevektors aus einem Eingabevektor durch eine Schicht von Neuronen. \relax }}{13}{figure.caption.8}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Formel zur Berechnung eines Ausgabevektors aus einem Eingabevektor durch eine Schicht von Neuronen. \relax }}{14}{figure.caption.8}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}Der Lernprozess}{14}{subsection.3.4}\protected@file@percent }
\abx@aux@cite{3}
\abx@aux@segm{0}{0}{3}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}Der Lernprozess}{14}{subsection.3.4}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.5}Fehlerfunktionen}{14}{subsection.3.5}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.5.1}MSE -- Durchschnittlicher quadratischer Fehler}{14}{subsubsection.3.5.1}\protected@file@percent }
\abx@aux@segm{0}{0}{3}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.5}Fehlerfunktionen}{15}{subsection.3.5}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.5.1}MSE -- Durchschnittlicher quadratischer Fehler}{15}{subsubsection.3.5.1}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces Die Gleichung f\IeC {\"u}r den durchschnittlichen quadratischen Fehler\relax }}{15}{figure.caption.9}\protected@file@percent }
\newlabel{MSE_equation}{{8}{15}{Die Gleichung für den durchschnittlichen quadratischen Fehler\relax }{figure.caption.9}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.5.2}MAE -- Durchschnittlicher absoluter Fehler}{15}{subsubsection.3.5.2}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Die Gleichung f\IeC {\"u}r den durchschnittlichen absoluten Fehler\relax }}{15}{figure.caption.10}\protected@file@percent }
\newlabel{MAE_equation}{{9}{15}{Die Gleichung für den durchschnittlichen absoluten Fehler\relax }{figure.caption.10}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.5.3}Kreuzentropiefehler}{15}{subsubsection.3.5.3}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Die Gleichung f\IeC {\"u}r den durchschnittlichen absoluten Fehler\relax }}{16}{figure.caption.10}\protected@file@percent }
\newlabel{MAE_equation}{{9}{16}{Die Gleichung für den durchschnittlichen absoluten Fehler\relax }{figure.caption.10}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.5.3}Kreuzentropiefehler}{16}{subsubsection.3.5.3}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {10}{\ignorespaces Der Graph der Kreuzentropie-Fehlerfunktion, wenn das tats\IeC {\"a}chliche Label 1 ist\relax }}{16}{figure.caption.11}\protected@file@percent }
\newlabel{CEL_Graph}{{10}{16}{Der Graph der Kreuzentropie-Fehlerfunktion, wenn das tatsächliche Label 1 ist\relax }{figure.caption.11}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces Die Gleichung f\IeC {\"u}r den Kreuzentropiefehler\relax }}{16}{figure.caption.12}\protected@file@percent }
\newlabel{CEL_Function}{{11}{16}{Die Gleichung für den Kreuzentropiefehler\relax }{figure.caption.12}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces Die Gleichung f\IeC {\"u}r den Kreuzentropiefehler\relax }}{17}{figure.caption.12}\protected@file@percent }
\newlabel{CEL_Function}{{11}{17}{Die Gleichung für den Kreuzentropiefehler\relax }{figure.caption.12}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces Die Gleichung f\IeC {\"u}r den durchschnittlichen absoluten Fehler\relax }}{17}{figure.caption.13}\protected@file@percent }
\newlabel{CEL_Function_cummulative}{{12}{17}{Die Gleichung für den durchschnittlichen absoluten Fehler\relax }{figure.caption.13}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.6}Gradientenverfahren und Backpropagation}{17}{subsection.3.6}\protected@file@percent }
\newlabel{Gradient_section}{{3.6}{17}{Gradientenverfahren und Backpropagation}{subsection.3.6}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {13}{\ignorespaces Die Gleichung f\IeC {\"u}r den Gradienten der Fehlerfunktion\relax }}{17}{figure.caption.14}\protected@file@percent }
\newlabel{Gradient_Function}{{13}{17}{Die Gleichung für den Gradienten der Fehlerfunktion\relax }{figure.caption.14}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.6.1}Lernrate}{17}{subsubsection.3.6.1}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {13}{\ignorespaces Die Gleichung f\IeC {\"u}r den Gradienten der Fehlerfunktion\relax }}{18}{figure.caption.14}\protected@file@percent }
\newlabel{Gradient_Function}{{13}{18}{Die Gleichung für den Gradienten der Fehlerfunktion\relax }{figure.caption.14}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.6.1}Lernrate}{18}{subsubsection.3.6.1}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {14}{\ignorespaces Die Gleichung f\IeC {\"u}r die Anpassung eines einzelnen Parameters\relax }}{18}{figure.caption.15}\protected@file@percent }
\newlabel{Learning_Rate_Function}{{14}{18}{Die Gleichung für die Anpassung eines einzelnen Parameters\relax }{figure.caption.15}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {15}{\ignorespaces $\eta $ ist hier zu gro\IeC {\ss } gew\IeC {\"a}hlt.\relax }}{18}{figure.caption.16}\protected@file@percent }
\newlabel{Learning_Rate_Graphic}{{15}{18}{$\eta $ ist hier zu groß gewählt.\relax }{figure.caption.16}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {3.7}Verschiedene Layerarten}{18}{subsection.3.7}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {15}{\ignorespaces $\eta $ ist hier zu gro\IeC {\ss } gew\IeC {\"a}hlt.\relax }}{19}{figure.caption.16}\protected@file@percent }
\newlabel{Learning_Rate_Graphic}{{15}{19}{$\eta $ ist hier zu groß gewählt.\relax }{figure.caption.16}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.7.1}Convolutional Layers}{19}{subsubsection.3.7.1}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {16}{\ignorespaces Eine Verbildlichung der Vorg\IeC {\"a}nge in einem convolutional Layer\newline Aus einer Animation von\newline https://github.com/vdumoulin/conv\_arithmetic/blob/master/README.md Vincent Dumoulin, Francesco Visin - A guide to convolution arithmetic for deep learning (BibTeX)}}{20}{figure.caption.17}\protected@file@percent }
\newlabel{Convolution_illustration}{{16}{20}{Eine Verbildlichung der Vorgänge in einem convolutional Layer\newline Aus einer Animation von\newline https://github.com/vdumoulin/conv\_arithmetic/blob/master/README.md\\ Vincent Dumoulin, Francesco Visin - A guide to convolution arithmetic for deep learning (BibTeX)}{figure.caption.17}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {17}{\ignorespaces Erkennt obere horizontale Kanten\relax }}{20}{figure.caption.18}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {18}{\ignorespaces Erkennt linke vertikale Kanten\relax }}{20}{figure.caption.18}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {19}{\ignorespaces Erkennt untere horizontale Kanten\relax }}{20}{figure.caption.18}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {20}{\ignorespaces Erkennt rechte vertikale Kanten\relax }}{20}{figure.caption.18}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {17}{\ignorespaces Erkennt obere horizontale Kanten\relax }}{21}{figure.caption.18}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {18}{\ignorespaces Erkennt linke vertikale Kanten\relax }}{21}{figure.caption.18}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {19}{\ignorespaces Erkennt untere horizontale Kanten\relax }}{21}{figure.caption.18}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {20}{\ignorespaces Erkennt rechte vertikale Kanten\relax }}{21}{figure.caption.18}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {21}{\ignorespaces Das Beispielbild aus dem Mnist Datensatz\relax }}{21}{figure.caption.19}\protected@file@percent }
\newlabel{Filter_Example_raw}{{21}{21}{Das Beispielbild aus dem Mnist Datensatz\relax }{figure.caption.19}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {22}{\ignorespaces Die jeweils oben stehenden Filter wurden auf das Beispielbild angewandt.\relax }}{21}{figure.caption.20}\protected@file@percent }
\newlabel{Filter_output dargestellt}{{22}{21}{Die jeweils oben stehenden Filter wurden auf das Beispielbild angewandt.\relax }{figure.caption.20}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {22}{\ignorespaces Die jeweils oben stehenden Filter wurden auf das Beispielbild angewandt.\relax }}{22}{figure.caption.20}\protected@file@percent }
\newlabel{Filter_output dargestellt}{{22}{22}{Die jeweils oben stehenden Filter wurden auf das Beispielbild angewandt.\relax }{figure.caption.20}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {23}{\ignorespaces Beispiele f\IeC {\"u}r low-, mid- und high-level Features in Convolutional Neural Nets\newline Quelle: https://tvirdi.github.io/2017-10-29/cnn/}}{22}{figure.caption.21}\protected@file@percent }
\newlabel{HL_features_conv}{{23}{22}{Beispiele für low-, mid- und high-level Features in Convolutional Neural Nets\newline Quelle: https://tvirdi.github.io/2017-10-29/cnn/}{figure.caption.21}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.7.2}Pooling Layers}{22}{subsubsection.3.7.2}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {24}{\ignorespaces Max Pooling mit $2\times 2$ gro\IeC {\ss }en Submatritzen\newline Quelle: https://computersciencewiki.org/index.php/Max-pooling\_/\_Pooling CC BY NC SA Lizenz}}{23}{figure.caption.22}\protected@file@percent }
\newlabel{Maxpool}{{24}{23}{Max Pooling mit $2\times 2$ großen Submatritzen\newline Quelle: https://computersciencewiki.org/index.php/Max-pooling\_/\_Pooling\\ CC BY NC SA Lizenz}{figure.caption.22}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {25}{\ignorespaces Average Pooling mit $2\times 2$ gro\IeC {\ss }en Submatritzen\newline Aus: Dominguez-Morales, Juan Pedro. (2018). Neuromorphic audio processing through real-time embedded spiking neural networks. Abbildung 33}}{23}{figure.caption.23}\protected@file@percent }
\newlabel{AvgPool}{{25}{23}{Average Pooling mit $2\times 2$ großen Submatritzen\newline Aus: Dominguez-Morales, Juan Pedro. (2018). Neuromorphic audio processing through real-time embedded spiking neural networks. Abbildung 33}{figure.caption.23}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {4}PyTorch}{23}{section.4}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {26}{\ignorespaces Gegen\IeC {\"u}berstellung von Max und Average Pooling\relax }}{24}{figure.caption.24}\protected@file@percent }
\newlabel{Pooling_Mnist}{{26}{24}{Gegenüberstellung von Max und Average Pooling\relax }{figure.caption.24}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Datenvorbereitung}{24}{subsection.4.1}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {27}{\ignorespaces Der Code zum Laden des MNIST Datensatzes\relax }}{25}{figure.caption.25}\protected@file@percent }
\newlabel{MNIST_Dataloader_Code}{{27}{25}{Der Code zum Laden des MNIST Datensatzes\relax }{figure.caption.25}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.7.2}Pooling Layers}{23}{subsubsection.3.7.2}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {24}{\ignorespaces Max Pooling mit $2\times 2$ gro\IeC {\ss }en Submatritzen\newline Quelle: https://computersciencewiki.org/index.php/Max-pooling\_/\_Pooling CC BY NC SA Lizenz}}{24}{figure.caption.22}\protected@file@percent }
\newlabel{Maxpool}{{24}{24}{Max Pooling mit $2\times 2$ großen Submatritzen\newline Quelle: https://computersciencewiki.org/index.php/Max-pooling\_/\_Pooling\\ CC BY NC SA Lizenz}{figure.caption.22}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {25}{\ignorespaces Average Pooling mit $2\times 2$ gro\IeC {\ss }en Submatritzen\newline Aus: Dominguez-Morales, Juan Pedro. (2018). Neuromorphic audio processing through real-time embedded spiking neural networks. Abbildung 33}}{24}{figure.caption.23}\protected@file@percent }
\newlabel{AvgPool}{{25}{24}{Average Pooling mit $2\times 2$ großen Submatritzen\newline Aus: Dominguez-Morales, Juan Pedro. (2018). Neuromorphic audio processing through real-time embedded spiking neural networks. Abbildung 33}{figure.caption.23}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {4}PyTorch}{24}{section.4}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {26}{\ignorespaces Gegen\IeC {\"u}berstellung von Max und Average Pooling\relax }}{25}{figure.caption.24}\protected@file@percent }
\newlabel{Pooling_Mnist}{{26}{25}{Gegenüberstellung von Max und Average Pooling\relax }{figure.caption.24}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Datenvorbereitung}{25}{subsection.4.1}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {27}{\ignorespaces Der Code zum Laden des MNIST Datensatzes\relax }}{26}{figure.caption.25}\protected@file@percent }
\newlabel{MNIST_Dataloader_Code}{{27}{26}{Der Code zum Laden des MNIST Datensatzes\relax }{figure.caption.25}{}}
\abx@aux@cite{6}
\abx@aux@segm{0}{0}{6}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}Definieren des Netzes}{27}{subsection.4.2}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {28}{\ignorespaces Code, um ein einfaches Netz in Pytorch zu definieren\relax }}{27}{figure.caption.26}\protected@file@percent }
\newlabel{Net_simple_definition}{{28}{27}{Code, um ein einfaches Netz in Pytorch zu definieren\relax }{figure.caption.26}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {28}{\ignorespaces Code, um ein einfaches Netz in Pytorch zu definieren\relax }}{28}{figure.caption.26}\protected@file@percent }
\newlabel{Net_simple_definition}{{28}{28}{Code, um ein einfaches Netz in Pytorch zu definieren\relax }{figure.caption.26}{}}
\abx@aux@cite{7}
\abx@aux@segm{0}{0}{7}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {4.3}Trainieren des Netzes}{28}{subsection.4.3}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {4.3}Trainieren des Netzes}{29}{subsection.4.3}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {29}{\ignorespaces Code, um das Netz auf einem Datensatz zu trainieren\relax }}{29}{figure.caption.27}\protected@file@percent }
\newlabel{Code_train_loop}{{29}{29}{Code, um das Netz auf einem Datensatz zu trainieren\relax }{figure.caption.27}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {4.4}Pytorch und weights and biases}{30}{subsection.4.4}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {5}Ein Klassifizierungsnetzwerk f\IeC {\"u}r handgeschriebene Ziffern}{30}{section.5}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {4.4}Pytorch und weights and biases}{31}{subsection.4.4}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {5}Ein Klassifizierungsnetzwerk f\IeC {\"u}r handgeschriebene Ziffern}{31}{section.5}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}Aufgabe}{31}{subsection.5.1}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {5.2}Der MNIST Datensatz}{31}{subsection.5.2}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {5.3}Das Netz}{31}{subsection.5.3}\protected@file@percent }
\newlabel{sec:das-netz}{{5.3}{31}{Das Netz}{subsection.5.3}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {5.3}Das Netz}{32}{subsection.5.3}\protected@file@percent }
\newlabel{sec:das-netz}{{5.3}{32}{Das Netz}{subsection.5.3}{}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {30}{\ignorespaces Der Code, um das in diesem Projekt genutzte Klassifizierungsnetz zu definieren.\relax }}{32}{figure.caption.28}\protected@file@percent }
\newlabel{net}{{30}{32}{Der Code, um das in diesem Projekt genutzte Klassifizierungsnetz zu definieren.\relax }{figure.caption.28}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {5.4}Ergebnis}{32}{subsection.5.4}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {31}{\ignorespaces Der Graph der ReLu Aktivierungsfunktion\relax }}{33}{figure.caption.29}\protected@file@percent }
\newlabel{ReLu}{{31}{33}{Der Graph der ReLu Aktivierungsfunktion\relax }{figure.caption.29}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {6}Schluss}{33}{section.6}\protected@file@percent }
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {5.4}Ergebnis}{33}{subsection.5.4}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {32}{\ignorespaces Ein Plot der Trefferquote, aufgetragen gegen die Trainingszeit\relax }}{34}{figure.caption.30}\protected@file@percent }
\newlabel{accuracy}{{32}{34}{Ein Plot der Trefferquote, aufgetragen gegen die Trainingszeit\relax }{figure.caption.30}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {6}Schluss}{34}{section.6}\protected@file@percent }
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {33}{\ignorespaces Ein Plot des Kreuzentropiefehlers aufgetragen gegen die Trainingszeit\relax }}{35}{figure.caption.31}\protected@file@percent }
\newlabel{loss}{{33}{35}{Ein Plot des Kreuzentropiefehlers aufgetragen gegen die Trainingszeit\relax }{figure.caption.31}{}}
\bibcite{1}{1}
\bibcite{2}{2}
\bibcite{3}{3}
\bibcite{4}{4}
\bibcite{5}{5}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {32}{\ignorespaces Ein Plot der Trefferquote, aufgetragen gegen die Trainingszeit\relax }}{34}{figure.caption.30}\protected@file@percent }
\newlabel{accuracy}{{32}{34}{Ein Plot der Trefferquote, aufgetragen gegen die Trainingszeit\relax }{figure.caption.30}{}}
\bibcite{6}{6}
\bibcite{7}{7}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\contentsline {figure}{\numberline {33}{\ignorespaces Ein Plot des Kreuzentropiefehlers aufgetragen gegen die Trainingszeit\relax }}{35}{figure.caption.31}\protected@file@percent }
\newlabel{loss}{{33}{35}{Ein Plot des Kreuzentropiefehlers aufgetragen gegen die Trainingszeit\relax }{figure.caption.31}{}}
\bibcite{8}{8}
\bibcite{9}{9}
\gdef\minted@oldcachelist{,
default-pyg-prefix.pygstyle,
default.pygstyle,

View file

@ -1997,11 +1997,13 @@
<bcf:citekey order="1">1</bcf:citekey>
<bcf:citekey order="2">4</bcf:citekey>
<bcf:citekey order="3">5</bcf:citekey>
<bcf:citekey order="4">2</bcf:citekey>
<bcf:citekey order="5">3</bcf:citekey>
<bcf:citekey order="6">3</bcf:citekey>
<bcf:citekey order="7">6</bcf:citekey>
<bcf:citekey order="8">7</bcf:citekey>
<bcf:citekey order="4">8</bcf:citekey>
<bcf:citekey order="5">9</bcf:citekey>
<bcf:citekey order="6">2</bcf:citekey>
<bcf:citekey order="7">3</bcf:citekey>
<bcf:citekey order="8">3</bcf:citekey>
<bcf:citekey order="9">6</bcf:citekey>
<bcf:citekey order="10">7</bcf:citekey>
</bcf:section>
<!-- SORTING TEMPLATES -->
<bcf:sortingtemplate name="nty">

View file

@ -7,55 +7,55 @@
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {3}{\ignorespaces Klassengrenzen mit und ohne Overfitting\relax }}{7}{figure.caption.4}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {4}{\ignorespaces Neuron \newline Quelle: simple.wikipedia.org/wiki/File:Neuron.svg\newline Copyright: CC Attribution-Share Alike von Nutzer Dhp1080,\newline bearbeitet}}{9}{figure.caption.5}%
\contentsline {figure}{\numberline {4}{\ignorespaces Neuron \newline Quelle: simple.wikipedia.org/wiki/File:Neuron.svg\newline Copyright: CC Attribution-Share Alike von Nutzer Dhp1080,\newline bearbeitet}}{10}{figure.caption.5}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {5}{\ignorespaces Ein einfaches neuronales Netz\relax }}{11}{figure.caption.6}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {6}{\ignorespaces Der Plot der Sigmoid Funktion $\sigma (x)=\frac {e^x}{e^x+1}$\relax }}{12}{figure.caption.7}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {7}{\ignorespaces Formel zur Berechnung eines Ausgabevektors aus einem Eingabevektor durch eine Schicht von Neuronen. \relax }}{13}{figure.caption.8}%
\contentsline {figure}{\numberline {7}{\ignorespaces Formel zur Berechnung eines Ausgabevektors aus einem Eingabevektor durch eine Schicht von Neuronen. \relax }}{14}{figure.caption.8}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {8}{\ignorespaces Die Gleichung f\IeC {\"u}r den durchschnittlichen quadratischen Fehler\relax }}{15}{figure.caption.9}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {9}{\ignorespaces Die Gleichung f\IeC {\"u}r den durchschnittlichen absoluten Fehler\relax }}{15}{figure.caption.10}%
\contentsline {figure}{\numberline {9}{\ignorespaces Die Gleichung f\IeC {\"u}r den durchschnittlichen absoluten Fehler\relax }}{16}{figure.caption.10}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {10}{\ignorespaces Der Graph der Kreuzentropie-Fehlerfunktion, wenn das tats\IeC {\"a}chliche Label 1 ist\relax }}{16}{figure.caption.11}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {11}{\ignorespaces Die Gleichung f\IeC {\"u}r den Kreuzentropiefehler\relax }}{16}{figure.caption.12}%
\contentsline {figure}{\numberline {11}{\ignorespaces Die Gleichung f\IeC {\"u}r den Kreuzentropiefehler\relax }}{17}{figure.caption.12}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {12}{\ignorespaces Die Gleichung f\IeC {\"u}r den durchschnittlichen absoluten Fehler\relax }}{17}{figure.caption.13}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {13}{\ignorespaces Die Gleichung f\IeC {\"u}r den Gradienten der Fehlerfunktion\relax }}{17}{figure.caption.14}%
\contentsline {figure}{\numberline {13}{\ignorespaces Die Gleichung f\IeC {\"u}r den Gradienten der Fehlerfunktion\relax }}{18}{figure.caption.14}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {14}{\ignorespaces Die Gleichung f\IeC {\"u}r die Anpassung eines einzelnen Parameters\relax }}{18}{figure.caption.15}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {15}{\ignorespaces $\eta $ ist hier zu gro\IeC {\ss } gew\IeC {\"a}hlt.\relax }}{18}{figure.caption.16}%
\contentsline {figure}{\numberline {15}{\ignorespaces $\eta $ ist hier zu gro\IeC {\ss } gew\IeC {\"a}hlt.\relax }}{19}{figure.caption.16}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {16}{\ignorespaces Eine Verbildlichung der Vorg\IeC {\"a}nge in einem convolutional Layer\newline Aus einer Animation von\newline https://github.com/vdumoulin/conv\_arithmetic/blob/master/README.md Vincent Dumoulin, Francesco Visin - A guide to convolution arithmetic for deep learning (BibTeX)}}{20}{figure.caption.17}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {17}{\ignorespaces Erkennt obere horizontale Kanten\relax }}{20}{figure.caption.18}%
\contentsline {figure}{\numberline {17}{\ignorespaces Erkennt obere horizontale Kanten\relax }}{21}{figure.caption.18}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {18}{\ignorespaces Erkennt linke vertikale Kanten\relax }}{20}{figure.caption.18}%
\contentsline {figure}{\numberline {18}{\ignorespaces Erkennt linke vertikale Kanten\relax }}{21}{figure.caption.18}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {19}{\ignorespaces Erkennt untere horizontale Kanten\relax }}{20}{figure.caption.18}%
\contentsline {figure}{\numberline {19}{\ignorespaces Erkennt untere horizontale Kanten\relax }}{21}{figure.caption.18}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {20}{\ignorespaces Erkennt rechte vertikale Kanten\relax }}{20}{figure.caption.18}%
\contentsline {figure}{\numberline {20}{\ignorespaces Erkennt rechte vertikale Kanten\relax }}{21}{figure.caption.18}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {21}{\ignorespaces Das Beispielbild aus dem Mnist Datensatz\relax }}{21}{figure.caption.19}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {22}{\ignorespaces Die jeweils oben stehenden Filter wurden auf das Beispielbild angewandt.\relax }}{21}{figure.caption.20}%
\contentsline {figure}{\numberline {22}{\ignorespaces Die jeweils oben stehenden Filter wurden auf das Beispielbild angewandt.\relax }}{22}{figure.caption.20}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {23}{\ignorespaces Beispiele f\IeC {\"u}r low-, mid- und high-level Features in Convolutional Neural Nets\newline Quelle: https://tvirdi.github.io/2017-10-29/cnn/}}{22}{figure.caption.21}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {24}{\ignorespaces Max Pooling mit $2\times 2$ gro\IeC {\ss }en Submatritzen\newline Quelle: https://computersciencewiki.org/index.php/Max-pooling\_/\_Pooling CC BY NC SA Lizenz}}{23}{figure.caption.22}%
\contentsline {figure}{\numberline {24}{\ignorespaces Max Pooling mit $2\times 2$ gro\IeC {\ss }en Submatritzen\newline Quelle: https://computersciencewiki.org/index.php/Max-pooling\_/\_Pooling CC BY NC SA Lizenz}}{24}{figure.caption.22}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {25}{\ignorespaces Average Pooling mit $2\times 2$ gro\IeC {\ss }en Submatritzen\newline Aus: Dominguez-Morales, Juan Pedro. (2018). Neuromorphic audio processing through real-time embedded spiking neural networks. Abbildung 33}}{23}{figure.caption.23}%
\contentsline {figure}{\numberline {25}{\ignorespaces Average Pooling mit $2\times 2$ gro\IeC {\ss }en Submatritzen\newline Aus: Dominguez-Morales, Juan Pedro. (2018). Neuromorphic audio processing through real-time embedded spiking neural networks. Abbildung 33}}{24}{figure.caption.23}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {26}{\ignorespaces Gegen\IeC {\"u}berstellung von Max und Average Pooling\relax }}{24}{figure.caption.24}%
\contentsline {figure}{\numberline {26}{\ignorespaces Gegen\IeC {\"u}berstellung von Max und Average Pooling\relax }}{25}{figure.caption.24}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {27}{\ignorespaces Der Code zum Laden des MNIST Datensatzes\relax }}{25}{figure.caption.25}%
\contentsline {figure}{\numberline {27}{\ignorespaces Der Code zum Laden des MNIST Datensatzes\relax }}{26}{figure.caption.25}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {28}{\ignorespaces Code, um ein einfaches Netz in Pytorch zu definieren\relax }}{27}{figure.caption.26}%
\contentsline {figure}{\numberline {28}{\ignorespaces Code, um ein einfaches Netz in Pytorch zu definieren\relax }}{28}{figure.caption.26}%
\defcounter {refsection}{0}\relax
\contentsline {figure}{\numberline {29}{\ignorespaces Code, um das Netz auf einem Datensatz zu trainieren\relax }}{29}{figure.caption.27}%
\defcounter {refsection}{0}\relax

File diff suppressed because it is too large Load diff

View file

@ -4,32 +4,33 @@
\BOOKMARK [2][-]{subsection.1.3}{Gefahren von maschinellem Lernen}{section.1}% 4
\BOOKMARK [3][-]{subsubsection.1.3.1}{Die Daten}{subsection.1.3}% 5
\BOOKMARK [3][-]{subsubsection.1.3.2}{Overfitting}{subsection.1.3}% 6
\BOOKMARK [1][-]{section.2}{Verschiedene Techniken maschinellen Lernens}{}% 7
\BOOKMARK [2][-]{subsection.2.1}{\334berwachtes Lernen}{section.2}% 8
\BOOKMARK [2][-]{subsection.2.2}{Un\374berwachtes Lernen}{section.2}% 9
\BOOKMARK [2][-]{subsection.2.3}{Best\344rkendes Lernen}{section.2}% 10
\BOOKMARK [1][-]{section.3}{Neuronale Netze}{}% 11
\BOOKMARK [2][-]{subsection.3.1}{Maschinelles Lernen und menschliches Lernen}{section.3}% 12
\BOOKMARK [2][-]{subsection.3.2}{Der Aufbau eines neuronalen Netzes}{section.3}% 13
\BOOKMARK [2][-]{subsection.3.3}{Berechnung des Ausgabevektors}{section.3}% 14
\BOOKMARK [2][-]{subsection.3.4}{Der Lernprozess}{section.3}% 15
\BOOKMARK [2][-]{subsection.3.5}{Fehlerfunktionen}{section.3}% 16
\BOOKMARK [3][-]{subsubsection.3.5.1}{MSE \205 Durchschnittlicher quadratischer Fehler}{subsection.3.5}% 17
\BOOKMARK [3][-]{subsubsection.3.5.2}{MAE \205 Durchschnittlicher absoluter Fehler}{subsection.3.5}% 18
\BOOKMARK [3][-]{subsubsection.3.5.3}{Kreuzentropiefehler}{subsection.3.5}% 19
\BOOKMARK [2][-]{subsection.3.6}{Gradientenverfahren und Backpropagation}{section.3}% 20
\BOOKMARK [3][-]{subsubsection.3.6.1}{Lernrate}{subsection.3.6}% 21
\BOOKMARK [2][-]{subsection.3.7}{Verschiedene Layerarten}{section.3}% 22
\BOOKMARK [3][-]{subsubsection.3.7.1}{Convolutional Layers}{subsection.3.7}% 23
\BOOKMARK [3][-]{subsubsection.3.7.2}{Pooling Layers}{subsection.3.7}% 24
\BOOKMARK [1][-]{section.4}{PyTorch}{}% 25
\BOOKMARK [2][-]{subsection.4.1}{Datenvorbereitung}{section.4}% 26
\BOOKMARK [2][-]{subsection.4.2}{Definieren des Netzes}{section.4}% 27
\BOOKMARK [2][-]{subsection.4.3}{Trainieren des Netzes}{section.4}% 28
\BOOKMARK [2][-]{subsection.4.4}{Pytorch und weights and biases}{section.4}% 29
\BOOKMARK [1][-]{section.5}{Ein Klassifizierungsnetzwerk f\374r handgeschriebene Ziffern}{}% 30
\BOOKMARK [2][-]{subsection.5.1}{Aufgabe}{section.5}% 31
\BOOKMARK [2][-]{subsection.5.2}{Der MNIST Datensatz}{section.5}% 32
\BOOKMARK [2][-]{subsection.5.3}{Das Netz}{section.5}% 33
\BOOKMARK [2][-]{subsection.5.4}{Ergebnis}{section.5}% 34
\BOOKMARK [1][-]{section.6}{Schluss}{}% 35
\BOOKMARK [2][-]{subsection.1.4}{Adversarial attacks}{section.1}% 7
\BOOKMARK [1][-]{section.2}{Verschiedene Techniken maschinellen Lernens}{}% 8
\BOOKMARK [2][-]{subsection.2.1}{\334berwachtes Lernen}{section.2}% 9
\BOOKMARK [2][-]{subsection.2.2}{Un\374berwachtes Lernen}{section.2}% 10
\BOOKMARK [2][-]{subsection.2.3}{Best\344rkendes Lernen}{section.2}% 11
\BOOKMARK [1][-]{section.3}{Neuronale Netze}{}% 12
\BOOKMARK [2][-]{subsection.3.1}{Maschinelles Lernen und menschliches Lernen}{section.3}% 13
\BOOKMARK [2][-]{subsection.3.2}{Der Aufbau eines neuronalen Netzes}{section.3}% 14
\BOOKMARK [2][-]{subsection.3.3}{Berechnung des Ausgabevektors}{section.3}% 15
\BOOKMARK [2][-]{subsection.3.4}{Der Lernprozess}{section.3}% 16
\BOOKMARK [2][-]{subsection.3.5}{Fehlerfunktionen}{section.3}% 17
\BOOKMARK [3][-]{subsubsection.3.5.1}{MSE \205 Durchschnittlicher quadratischer Fehler}{subsection.3.5}% 18
\BOOKMARK [3][-]{subsubsection.3.5.2}{MAE \205 Durchschnittlicher absoluter Fehler}{subsection.3.5}% 19
\BOOKMARK [3][-]{subsubsection.3.5.3}{Kreuzentropiefehler}{subsection.3.5}% 20
\BOOKMARK [2][-]{subsection.3.6}{Gradientenverfahren und Backpropagation}{section.3}% 21
\BOOKMARK [3][-]{subsubsection.3.6.1}{Lernrate}{subsection.3.6}% 22
\BOOKMARK [2][-]{subsection.3.7}{Verschiedene Layerarten}{section.3}% 23
\BOOKMARK [3][-]{subsubsection.3.7.1}{Convolutional Layers}{subsection.3.7}% 24
\BOOKMARK [3][-]{subsubsection.3.7.2}{Pooling Layers}{subsection.3.7}% 25
\BOOKMARK [1][-]{section.4}{PyTorch}{}% 26
\BOOKMARK [2][-]{subsection.4.1}{Datenvorbereitung}{section.4}% 27
\BOOKMARK [2][-]{subsection.4.2}{Definieren des Netzes}{section.4}% 28
\BOOKMARK [2][-]{subsection.4.3}{Trainieren des Netzes}{section.4}% 29
\BOOKMARK [2][-]{subsection.4.4}{Pytorch und weights and biases}{section.4}% 30
\BOOKMARK [1][-]{section.5}{Ein Klassifizierungsnetzwerk f\374r handgeschriebene Ziffern}{}% 31
\BOOKMARK [2][-]{subsection.5.1}{Aufgabe}{section.5}% 32
\BOOKMARK [2][-]{subsection.5.2}{Der MNIST Datensatz}{section.5}% 33
\BOOKMARK [2][-]{subsection.5.3}{Das Netz}{section.5}% 34
\BOOKMARK [2][-]{subsection.5.4}{Ergebnis}{section.5}% 35
\BOOKMARK [1][-]{section.6}{Schluss}{}% 36

View file

@ -31,12 +31,9 @@
\pagestyle{fancy}
\captionsetup{justification=raggedright,singlelinecheck=false}
\begin{document}
\biolinum
\pagenumbering{gobble}
\
\begin{titlepage}
\maketitle
\end{titlepage}
@ -96,7 +93,8 @@ Overfitting ist ein häufig auftretendes Problem bei Klassifizierungsaufgaben. D
\\
Overfitting tritt auf, wenn man ein neuronales Netz zu lange auf einem Datensatz trainiert. Das Netz lernt dann die Daten auswendig, da es so einen Fehler von 0 erreichen kann. Dadurch werden aber keine wirklichen Klassengrenzen erlernt.\\
Um Overfitting entgegenzuwirken, reicht es oftmals, den Trainingsdatensatz in der Reihenfolge zu randomisieren. Dadurch kann das Netz die Reihenfolge gar nicht auswendig lernen.
\subsection{Adversarial attacks}
Sogenannte \glqq Adversarial attacks'' können genutzt werden, um neuronale Netze gezielt zu täuschen. Dabei werden die Eingabedaten so manipuliert, dass für einen Menschen kaum ein Unterschied erkennbar ist, das neuronale Netz sie jedoch falsch klassifiziert. Dafür wird meißt ein anderes neuronales Netz genutzt, das innerhalb eines gewissen Maßes die Daten verändert. Der Änderungsspielraum wird dabei so festgelegt, dass ein Mensch keinen Unterschied wahrnehmen kann. Dieses Netz versucht dann, eine Ausgabe zu erzeugen, sodass der Unterschied minimal und der Fehler des Klassifizierungsnetzwerkes maximal wird. So werden die Daten möglichst falsch klassifiziert, und der Unterschied ist trotzdem nicht erkennbar. Dies gelingt besonders gut bei Bildern, ist jedoch auch auf Text übertragbar, wie Di Jin, Zhijing Jin, Joey Tianyi Zhou und Peter Szolovits 2019 gezeigt haben\cite{8}. Die Gefahr bei adversarial attacks besteht darin, dass eine belibige Ausgabe erzeugt werden kann. Es ist also nicht nur möglich einen Fehler zu erzeugen, sondern dieser ist auch noch genau steuerbar. Dabei kann die Genauigkeit bekannter Bildklassifizierungsnetzwerke von etwa 92\% auf etwa 2\% also um rund 90\% gesenkt werden\cite{9}.
\section{Verschiedene Techniken maschinellen Lernens}\label{sec:verschiedene-techniken-maschinellen-lernens}
Es gibt viele verschiedene Ansätze und Algorithmen, um maschinelles Lernen zu implementieren. Der wohl häufigste ist das Neuronale Netz, von dem diese Arbeit handelt. Aber auch sogenannte \glqq Support Vector machines'' sind eine bekannte Technik, sollen aber hier nicht weiter behandelt werden. Neuronale Netze können in vielen verschiedenen Szenarien angewandt werden, um unterschiedliche Ergebnisse zu erzielen. Beim Adversarial Learning lässt man mehrere Netze gegeneinander antreten, sodass sie sich gegenseitig trainieren. Beim Q-Learning beginnt man mit zufälligen Reaktionen auf eine Eingabe und \glqq belohnt'' das Netz, falls es wie gewünscht reagiert hat. Ein Beispiel hierfür ist die \glqq hide and seek AI'' von OpenAI\footnote{https://openai.com/blog/emergent-tool-use/}. Grob unterscheidet man jedoch in überwachtes (supervised), unüberwachtes (unsupervised) und bestärkendes (reinforcement) Lernen.
\subsection{Überwachtes Lernen}
@ -110,7 +108,7 @@ Bestärkendes Lernen ist der letzte der drei häufig unterschiedenen Lerntypen.
Bei Neuronalen Netzen handelt es sich um eine programminterne Struktur, die für das maschinelle Lernen genutzt wird. Wie der Name bereits vermuten lässt, ist diese Methode ein Versuch das menschliche Lernen nachzuahmen.
\subsection{Maschinelles Lernen und menschliches Lernen}
Das menschliche Gehirn ist aus sogenannten \glqq Neuronen'' aufgebaut. Ein Neuron ist eine Nervenzelle, die elektrische oder chemische Impulse annimmt und gegebenenfalls einen elektrischen oder chemischen Impuls weitergibt. Die Nervenzellen berühren sich nicht direkt, sondern sind nur über die sogenannten Synapsen verbunden, über die diese Signale übertragen werden, sodass sich ein hoch komplexes Netzwerk von Milliarden von Neuronen ergibt.\footnote{
Diese Definition ist stark vereinfacht. Sie enthält ausschließlich die wesentlichen Komponenten um das menschliche Gehirn mit einem neuronalen Netz vergleichen zu können.}
Diese Definition ist stark vereinfacht. Sie enthält ausschließlich die wesentlichen Komponenten, um das menschliche Gehirn mit einem neuronalen Netz vergleichen zu können.}
\begin{figure}[h]
\centering
\includegraphics[]{../graphics/Neuron.png}
@ -254,7 +252,7 @@ Der Kreuzentropiefehler ist die am häufigsten verwendete Fehlerfunktion für Kl
xmax=1,
ymax=10,
xmin=0,
samples=10,
samples=10000,
xlabel={vorhergesagte Wahrscheinlichkeit},
ylabel={Kreuzentropiefehler}]
\addplot[blue]{-ln(x))};
@ -770,6 +768,17 @@ Maschinelles Lernen ist ein extrem komplexes Forschungsgebiet, das ein enormes P
Diederik P. Kingma und Jimmy Ba\\
arXiv:1412.6980 [cs.LG] (https://arxiv.org/abs/1412.6980)\\
Abgerufen am 31.01.2020
\bibitem{8}
Is BERT Really Robust? A Strong Baseline for Natural Language Attack on Text Classification and Entailment\\
Di Jin, Zhijing Jin, Joey Tianyi Zhou und Peter Szolovits\\
arXiv:1907.11932 [cs.CL] (https://arxiv.org/abs/1907.11932)\\
Abgerufen am 12.02.2020
\bibitem{9}
Natural Adversarial Examples\\
Dan Hendrycks, Kevin Zhao, Steven Basart, Jacob Steinhardt und Dawn Song\\
arXiv:1907.07174 [cs.LG] (https://arxiv.org/abs/1907.07174)\\
Abgerufen am 12.02.2020
\end{thebibliography}
\listoffigures
\end{document}

View file

@ -13,13 +13,15 @@
\defcounter {refsection}{0}\relax
\contentsline {subsubsection}{\numberline {1.3.2}Overfitting}{6}{subsubsection.1.3.2}%
\defcounter {refsection}{0}\relax
\contentsline {section}{\numberline {2}Verschiedene Techniken maschinellen Lernens}{7}{section.2}%
\contentsline {subsection}{\numberline {1.4}Adversarial attacks}{7}{subsection.1.4}%
\defcounter {refsection}{0}\relax
\contentsline {section}{\numberline {2}Verschiedene Techniken maschinellen Lernens}{8}{section.2}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {2.1}\IeC {\"U}berwachtes Lernen}{8}{subsection.2.1}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {2.2}Un\IeC {\"u}berwachtes Lernen}{8}{subsection.2.2}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {2.3}Best\IeC {\"a}rkendes Lernen}{8}{subsection.2.3}%
\contentsline {subsection}{\numberline {2.3}Best\IeC {\"a}rkendes Lernen}{9}{subsection.2.3}%
\defcounter {refsection}{0}\relax
\contentsline {section}{\numberline {3}Neuronale Netze}{9}{section.3}%
\defcounter {refsection}{0}\relax
@ -27,46 +29,46 @@
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {3.2}Der Aufbau eines neuronalen Netzes}{10}{subsection.3.2}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {3.3}Berechnung des Ausgabevektors}{11}{subsection.3.3}%
\contentsline {subsection}{\numberline {3.3}Berechnung des Ausgabevektors}{12}{subsection.3.3}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {3.4}Der Lernprozess}{14}{subsection.3.4}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {3.5}Fehlerfunktionen}{14}{subsection.3.5}%
\contentsline {subsection}{\numberline {3.5}Fehlerfunktionen}{15}{subsection.3.5}%
\defcounter {refsection}{0}\relax
\contentsline {subsubsection}{\numberline {3.5.1}MSE -- Durchschnittlicher quadratischer Fehler}{14}{subsubsection.3.5.1}%
\contentsline {subsubsection}{\numberline {3.5.1}MSE -- Durchschnittlicher quadratischer Fehler}{15}{subsubsection.3.5.1}%
\defcounter {refsection}{0}\relax
\contentsline {subsubsection}{\numberline {3.5.2}MAE -- Durchschnittlicher absoluter Fehler}{15}{subsubsection.3.5.2}%
\defcounter {refsection}{0}\relax
\contentsline {subsubsection}{\numberline {3.5.3}Kreuzentropiefehler}{15}{subsubsection.3.5.3}%
\contentsline {subsubsection}{\numberline {3.5.3}Kreuzentropiefehler}{16}{subsubsection.3.5.3}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {3.6}Gradientenverfahren und Backpropagation}{17}{subsection.3.6}%
\defcounter {refsection}{0}\relax
\contentsline {subsubsection}{\numberline {3.6.1}Lernrate}{17}{subsubsection.3.6.1}%
\contentsline {subsubsection}{\numberline {3.6.1}Lernrate}{18}{subsubsection.3.6.1}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {3.7}Verschiedene Layerarten}{18}{subsection.3.7}%
\defcounter {refsection}{0}\relax
\contentsline {subsubsection}{\numberline {3.7.1}Convolutional Layers}{19}{subsubsection.3.7.1}%
\defcounter {refsection}{0}\relax
\contentsline {subsubsection}{\numberline {3.7.2}Pooling Layers}{22}{subsubsection.3.7.2}%
\contentsline {subsubsection}{\numberline {3.7.2}Pooling Layers}{23}{subsubsection.3.7.2}%
\defcounter {refsection}{0}\relax
\contentsline {section}{\numberline {4}PyTorch}{23}{section.4}%
\contentsline {section}{\numberline {4}PyTorch}{24}{section.4}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {4.1}Datenvorbereitung}{24}{subsection.4.1}%
\contentsline {subsection}{\numberline {4.1}Datenvorbereitung}{25}{subsection.4.1}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {4.2}Definieren des Netzes}{27}{subsection.4.2}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {4.3}Trainieren des Netzes}{28}{subsection.4.3}%
\contentsline {subsection}{\numberline {4.3}Trainieren des Netzes}{29}{subsection.4.3}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {4.4}Pytorch und weights and biases}{30}{subsection.4.4}%
\contentsline {subsection}{\numberline {4.4}Pytorch und weights and biases}{31}{subsection.4.4}%
\defcounter {refsection}{0}\relax
\contentsline {section}{\numberline {5}Ein Klassifizierungsnetzwerk f\IeC {\"u}r handgeschriebene Ziffern}{30}{section.5}%
\contentsline {section}{\numberline {5}Ein Klassifizierungsnetzwerk f\IeC {\"u}r handgeschriebene Ziffern}{31}{section.5}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {5.1}Aufgabe}{31}{subsection.5.1}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {5.2}Der MNIST Datensatz}{31}{subsection.5.2}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {5.3}Das Netz}{31}{subsection.5.3}%
\contentsline {subsection}{\numberline {5.3}Das Netz}{32}{subsection.5.3}%
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {5.4}Ergebnis}{32}{subsection.5.4}%
\contentsline {subsection}{\numberline {5.4}Ergebnis}{33}{subsection.5.4}%
\defcounter {refsection}{0}\relax
\contentsline {section}{\numberline {6}Schluss}{33}{section.6}%
\contentsline {section}{\numberline {6}Schluss}{34}{section.6}%