This project is a Deep Learning framework in c++, the main feature of which is (hopefully) supporting a branching architecture with multiple loss functions.
The project has three libraries:
- LinearAlgebra
- Layers
- NeuralNetwork
1. Linear Algebra is a library made specifically for Linear Algebra operations and has nothing to do with the logic of neural networks and stuff
2. Layers is a library which contains all your layers and everything pertaining to them. As such, it contains the classes Dense and Loss as well as some activation functions etc.
3. NeuralNetwork is the meat of the project - it contains the logic for creating the network and training it.