Skip to content

Latest commit

 

History

History
12 lines (9 loc) · 1.21 KB

README.md

File metadata and controls

12 lines (9 loc) · 1.21 KB

#Neural Network Library#

This library is a research of implementing ultimately generic neural network without performance overhead.

##Interesting Features:

  • Network inside network: every network is considered as a filter and could be used to contruct more complicated networks;
  • Network sharing and cloning: sub-networks could share paramenters and are clonable;
  • In place memory optimization by default: one neuron could accept signals from several other neurons with just one copy of n-dim array memory;
  • Dynamic traning: it's able to train only part of the whole network (e.g. RNN with varied input lenght); it's able to fix part of the whole network;
  • Dynamic network [WIP]: fast dynamic network construction, optimization with cache.

The guiding principles of design includes both efficiency and convenience. For user guide, please have a look at the example fold. The library uses extensively new features of C++11 to make the code simple and clear. Using Galois is just as simple as drawing dataflow graphs. Galois is also efficient. For the same mnist_mlp model (from torch demos) on Mac Pro 2013, the consumed time of each epoch is: Torch ~ 40s; Keras ~ 60s; Galois ~ 30s. Only implemented for CPU for the moment.