Wolfram Language

Ein Netz auf mehreren GPUs trainieren

Um die Trainingszeit zu verkürzen, kann ein neuronales Netz anstelle von CPUs auf einem Grafikprozessor trainiert werden. Die Wolfram Language unterstützt nun auch neuronales Netztraining mit mehreren Grafikprozessoren (im selben System) und ermöglicht so ein noch schnelleres Training. Das folgende Beispiel zeigt Trainings auf einem 6-CPU und 4-NVIDIA Titan X-Grafikprozessor.

Laden Sie einen Teil des CIFAR-10 Trainingsdatensatzes.

Laden Sie die Architektur des "Wolfram ImageIdentify Net V1" aus dem Wolfram Neural Net Repository.

Mit dem NetEncoder können Sie die Eingabedaten vorverarbeiten, um ein Bottleneck bei der CPU-Vorverarbeitung der Trainingsgeschwindigkeit des Netzes zu vermeiden.

Entfernen Sie den nun unnötigen NetEncoder und und ersetzen Sie den Netzkopf und den endgültigen NetDecoder so, dass sie den Klassen im Datensatz entsprechen.

Starten Sie das Training auf einem Rechner mit 6-Core-CPU:

Dieses Training wurde mit einer Geschwindigkeit von etwa acht Beispielen pro Sekunde durchgeführt.

Starten Sie das Training auf einer einzelnen Grafikkarte (die vierte, da es nicht empfohlen wird, die für die Anzeige verantwortliche Grafikkarte zu verwenden).

Diesmal wurde das Training mit einer Geschwindigkeit von etwa 200 Beispielen pro Sekunde durchgeführt.

Starten Sie nun das Training auf allen vier GPUs.

Die Trainingsgeschwindigkeit beträgt nun etwa 500 Beispiele pro Sekunde.

Visualisieren Sie die drei gemessenen Trainingsgeschwindigkeiten.

Verwandte Beispiele

en es fr ja ko pt-br zh