VictorEijkhout / edudl

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

EduDL

Deep Learning library for educational purposes.

Initialize a new network using net.h. Building a dense network looks something like so:

Net bob(inputW); // Provide the input size here
bob.addDense(784, RELU); 
bob.addDense(64, RELU);
bob.addDense(10, RELU);
bob.train_vec(trainSet, testSet, learning_rate, epochs, optimizer, batchSize, momentum, learning_decay);

Currently supports

  • Basic linear algebra
  • Feedforward ANN
  • Stochastic, Mini-batch Training
  • Optimizers like Gradient Descent with Momentum, RMSprop
  • Nonlinearities like RELU, Sigmoid, SoftMax
  • Custom dataset operations like shuffling, splitting, batching, custom reader for MNIST, etc.
  • BLIS Support

About


Languages

Language:C++ 88.2%Language:CMake 4.3%Language:Python 4.0%Language:Batchfile 1.5%Language:Cuda 0.8%Language:Makefile 0.7%Language:C 0.4%Language:HTML 0.0%