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.
//
Sebastian Jäger
@se_jaeger
ist 23 Jahre alt und derzeit Informatikstudent an der Hochschule Karlsruhe – Technik und Wirtschaft, mit Interessen rund um das Maschinelle Lernen und Big-Data-Technologien. Bei der inovex GmbH schreibt er momentan seine Bachelor Thesis im Bereich des Maschinellen Lernens mit Blick auf das performante Trainieren von neuronalen Netzen
//
Hans-Peter Zorn
@data_hpz
ist Head of Machine Perception & AI bei inovex. Er beschäftigt sich mit Machine Learning, Verarbeitung natürlicher Sprache und anderer unstrukturierter Daten. Zudem hilft er Kunden bei der Umsetzung ihrer Big-Data-Architekturen basierend auf Open-Source-Technologien.