Skalieren von Deep Learning Frameworks mithilfe von Cloud-Infrastrukturen und Kubernetes
Das Trainieren von neuronalen Netzen ist sehr rechenaufwändig. Auch eine vertikale Skalierung – mehrere CPU bzw. GPU auf demselben Host – genügt in vielen Fällen nicht. Insbesondere dann, wenn viele Data Scientists parallel an ihren Modellen arbeiten. Entsprechend interessant ist die horizontale Skalierung über Rechner hinweg.
In diesem Vortrag zeigen wir, wie das Training mit Hilfe von Cloud-Infrastrukturen in Verbindung mit Kubernetes einfach horizontal skaliert werden kann. Dabei betrachten wir nicht nur TensorFlow, sondern auch Alternativen wie MXNet und CNTK. Anschließend werden wir darauf eingehen, wie gut die unterschiedlichen Frameworks das verteilte Lernen für unterschiedliche Netzwerkarchitekturen (CNN, RNN, LSTM, ...) meistern.
Vorkenntnisse
Für den Vortrag ist ein grundlegendes Verständnis über die Funktionsweise von neuronalen Netzen bzw. Deep-Learning-Frameworks (Tensorflow, MXNet, CNTK, …) von Vorteil. Ebenfalls hilfreich wäre ein Grundlagenwissen über Docker und Kubernetes.
Lernziele
Ziel ist es zu vermitteln, wie mithilfe von Cloud-Anbietern und Kubernetes das Trainieren von neuronalen Netzen durch horizontale Skalierung beschleunigt werden kann. Zudem wird gezeigt, welche der Frameworks diese Möglichkeit möglichst effizient umsetzen.