Wolf is a barebones C++23 neural network implementation. Trains a fully connected network at blazing fast speeds on CPU.
- Fully connected feed-forward neural networks
- Backpropagation + Stochastic Gradient Descent
- Linear and ReLU Layers
- Fully optimized for CPU
- Batched Learning
- Helper functions to save and load neural nets
- Adam, Momentum and RMSProp Optimizer
- MSE, Cross Entropy and Binary Cross Entropy cross
Requirements: Recent C++ Compiler (gcc > 14)
- Clone and build
git clone https://github.com/warg-void/Wolf.git
cd Wolf
cmake -B build -DBUILD_MNIST ON
cmake --build build- Run the examples
./build/examples/xortest
./build/examples/irisClassifier
./build/examples/mnistClassifier- OpenMP (for parallelization)
- zpp_bits (for serializing and deserializing)
- Deep Learning: Foundations and Concepts: by Christopher M. Bishop and Hugh Bishop, Springer Cham (2023).
