Skip to content

Latest commit

 

History

History
44 lines (38 loc) · 724 Bytes

README.md

File metadata and controls

44 lines (38 loc) · 724 Bytes

Neural Network in Pure C++

Simple modular implementation of a neural network in C++ using only the STL.

Installation

Get the MNIST data set:

bash get_mnist.sh

Generate your Makefile:

cmake -DCMAKE_BUILD_TYPE=Release

Make the code:

make

Run:

./neural_net_in_cpp data

The training should take about a minute and achieve ~97% accuracy.

Todos

  • Fully connected;
  • Sigmoid;
  • Dropout;
  • ReLU;
  • Tanh;
  • Leaky ReLU;
  • Batch normalization;
  • Convolutional layers;
  • Max pooling;
  • Other optimizers (Adam, RMSProp, etc);
  • Learning rate scheduler;
  • Plots;
  • Filter visualization
  • CUDA?

License

MIT