El kit de herramientas Livermore Big Artificial Neural Network (LBANN) es un marco de capacitación de aprendizaje profundo de código abierto, centrado en HPC, que está optimizado para componer múltiples niveles de paralelismo.
LBANN proporciona aceleración de modelos paralelos a través de la descomposición de dominios para optimizar y lograr un fuerte escalamiento del entrenamiento de la red. También permite la composición del paralelismo de modelos con paralelismo de datos y métodos de entrenamiento de conjuntos para entrenar grandes redes neuronales con cantidades masivas de datos. LBANN puede aprovechar aceleradores estrechamente acoplados, redes de alto ancho de banda de baja latencia y sistemas de archivos paralelos de alto ancho de banda.
LBANN admite algoritmos de entrenamiento de última generación, como métodos de entrenamiento no supervisados, autosupervisados y adversarios (GAN), además del aprendizaje supervisado tradicional. También admite redes neuronales recurrentes mediante entrenamiento de retropropagación en el tiempo (BPTT), aprendizaje por transferencia y métodos de entrenamiento multimodelo y conjunto.
El método preferido para que los usuarios de LBANN instalen LBANN es utilizar Spack. Después de alguna configuración del sistema, esto debería ser tan sencillo como
spack install lbann
Instrucciones más detalladas para construir e instalar LBANN están disponibles en la documentación principal de LBANN.
La plantilla básica para ejecutar LBANN es
< mpi-launcher > < mpi-options >
lbann < lbann-options >
--model=model.prototext
--optimizer=opt.prototext
--reader=data_reader.prototext
Al utilizar aceleradores GPGPU, los usuarios deben tener en cuenta que LBANN está optimizado para el caso en el que se asigna una GPU por rango MPI. Esto debe tenerse en cuenta al elegir los parámetros para el iniciador MPI.
Más detalles sobre la ejecución de LBANN están documentados aquí.
Aquí se muestra una lista de publicaciones, presentaciones y carteles.
Se pueden plantear problemas, preguntas y errores en el rastreador de problemas de Github.