Das Livermore Big Artificial Neural Network Toolkit (LBANN) ist ein Open-Source-, HPC-zentriertes Deep-Learning-Trainingsframework, das für die Zusammenstellung mehrerer Parallelitätsebenen optimiert ist.
LBANN bietet modellparallele Beschleunigung durch Domänenzerlegung, um eine starke Skalierung des Netzwerktrainings zu optimieren. Es ermöglicht auch die Zusammenstellung von Modellparallelität sowohl mit Datenparallelität als auch mit Ensemble-Trainingsmethoden zum Training großer neuronaler Netze mit riesigen Datenmengen. LBANN kann von eng gekoppelten Beschleunigern, Netzwerken mit geringer Latenz und hoher Bandbreite sowie parallelen Dateisystemen mit hoher Bandbreite profitieren.
LBANN unterstützt neben dem traditionellen überwachten Lernen auch modernste Trainingsalgorithmen wie unüberwachte, selbstüberwachte und kontradiktorische (GAN) Trainingsmethoden. Es unterstützt auch wiederkehrende neuronale Netze durch BPTT-Training (Back Propagation Through Time), Transferlernen sowie Multimodell- und Ensemble-Trainingsmethoden.
Die bevorzugte Methode für LBANN-Benutzer zur Installation von LBANN ist die Verwendung von Spack. Nach einiger Systemkonfiguration sollte dies so einfach sein wie
spack install lbann
Ausführlichere Anweisungen zum Erstellen und Installieren von LBANN finden Sie in der Hauptdokumentation von LBANN.
Die Grundvorlage zum Ausführen von LBANN ist
< mpi-launcher > < mpi-options >
lbann < lbann-options >
--model=model.prototext
--optimizer=opt.prototext
--reader=data_reader.prototext
Beim Einsatz von GPGPU-Beschleunigern sollten Nutzer beachten, dass LBANN für den Fall optimiert ist, dass man pro MPI -Rang eine GPU zuweist. Dies sollte bei der Auswahl der Parameter für den MPI-Launcher berücksichtigt werden.
Weitere Details zur Ausführung von LBANN sind hier dokumentiert.
Eine Liste der Publikationen, Vorträge und Poster finden Sie hier.
Probleme, Fragen und Fehler können im Github-Issue-Tracker gemeldet werden.