Skip to content

Commit ca499c9

Browse files
committed
Merge branch 'release-v0.94'
v0.94 Support for new training algorithms: - Back-Propagation Through Time (BPTT) -- Recurrent Neural Networks (RNN) -- Long Short-Term Memories (LSTM) - Generative Adversarial Networks (GAN) - Variational autoencoders - Convolutional autoencoders - Fine tuning of pretrained networks -- Flexible weight freezing - Context-prediction network (Siamese network) - Livermore Tournament Fast Batch learning (LTFB) - Variable mini-batch sizes Support for new network structures - Directed Acyclic Graph (DAG) networks - Residual networks - Modular and composable objective functions - Multiple metrics - Shared weight matrices - (BETA) New evaluation layer that is attach to any point of DAG - Motifs (compound, reused network patterns) Support for new layers: - Learning: - Deconvolution - Metrics: -- Top K Categorical accuracy, Pearson correlation, Mean absolute deviation - Loss Functions: -- Cross Entropy with Uncertainty, Geometric negative log likelihood -- Poisson Negative log likelihood, Polya Negative Log Likelihood - Optimizers: -- Hypergradient Adam - Transform Layers: -- Contatenation, Noise, Unpooling, Pooling, Reshape, Slice, Split, Sum - Regularizer: -- Batch Normalization, Selu Dropout, Local Response Normalization (LRN) - Activations: -- Leaky Relu, Smooth Relu, Elu, Scaled Elu, Softplus, Atan, -- Bent Identity, Exponential Performance optimizations: - GPU acceleration for most layers - NCCL 2.X - Optimized communication patterns - Asynchronous weight updates - Asynchronous metric and objective function updates - batch normalization (global and local) - L2 normalization - Adaptive Quantization (inter-model) Model portablility & usability: - Portable checkpoints / recovery - Distributed checkpoint / recovery - Network visualization - Export LBANN to TensorFlow format Internals Features: - Gradient checking - Network representation using tensor dimensions - Bamboo continuous integration (CI) - Improved data processing pipeline New data readers: - Numpy - CSV - Methods for merging multiple features and samples across files - CANDLE Pilot 2 - CANDLE Pilot 1 Combo - ICF JAG Integration with Hydrogen, an optimized distributed, dense linear algebra library. Hydrogen is a fork of the Elemental library. Hydrogen optimizes for: distributed matrices with elemental and block distributions, BLAS, LAPACK, distributed and local matrix management. Integration with optimized all-reduce communication library Aluminum. Aluminum provides custom reduction patterns, customized CUDA reduction kernels, and asynchronous communication operators. It uses MPI, MPI w/GPUdirect, or NCCL as back-end libraries. Aluminum enables us to effectively use non-blocking all-reduces during backprop/optimization Addtionally, we have added support for an online, distributed data store. When enabled, LBANN is able to ingest all of the training data set in a distributed method across all ranks. Each data store is then able to serve it's portion of a mini-batch, dynamically moving data to the necessary ranks in the model (based on the mini-batch data distribution).
2 parents f5878cf + 29227cd commit ca499c9

File tree

874 files changed

+91100
-38040
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

874 files changed

+91100
-38040
lines changed

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,11 @@
55
*~
66
*.o
77

8+
data.prototext*
9+
*.bak
10+
*.pyc
11+
*.mc
12+
813
# Can also ignore all directories and files in a directory.
914
# tmp/**/*
15+
build

0 commit comments

Comments
 (0)