Verteiltes Deep Learning mit TensorFlow und Kubernetes
Das Trainieren neuronaler Netze nimmt durch immer ausgefeiltere Architekturen schnell mehrere Stunden oder Tage in Anspruch. Selbst mit immer schnelleren CPUs/GPUs reicht es häufig nicht, eine einzelne Maschine zum Trainieren zu benutzen. Glücklicherweise besitzt TensorFlow die Features zu einem verteilten Training neuronaler Netze, das die Trainingsgeschwindigkeit drastisch erhöhen kann.
Im Rahmen dieses Vortrages wird ein Blick auf die Grundlagen des verteilten Trainings neuronaler Netze (In Graph vs. Between Graphs, Synchronous vs. Asynchronous) geworfen. Zusätzlich wird behandelt, wie diese in TensorFlow implementiert werden können. Weiterhin wird gezeigt, wie man mithilfe von Kubernetes als Orchestrierungs-Tool eine verteilte TensorFlow-Anwendung deployen kann.
Vorkenntnisse
* Grundlagenwissen zu Deep Learning und neuronalen Netzen
* Grundlagenwissen über Container, OS und verteilte Orchestrierung
* Grundlegendes Python/TensorFlow-Wissen
Lernziele
Der Vortrag zeigt, wie man TensorFlow für verteiltes Training nutzt, und bringt eine grundlegende Einführunge zu den verschiedenen Methoden. Darüber hinaus werden die Teilnehmer lernen, wie man grundlegende Kubernetes-Konzepte einsetzt, um TensorFlow in einem Cluster zu verteilen.