A Neural Network written using only the Golang standard library.
- Learns by Stochastic Gradient Descent
- L2 Regularisation
- Cross Entropy or Quadratic Cost Function
- Sigmoid neuron activation
- Clone this repo
- Download the MNIST data into the assets folder
Run go run main.go -test
from cmd/train directory to load the dataset and begin training a network from scratch.
The test flag will evaluate the network against a separate set of data.
- Standalone 'deployable' network
This repo is heavily inspired by the below online book.
Michael A. Nielsen, "Neural Networks and Deep Learning", Determination Press, 2015 http://neuralnetworksanddeeplearning.com/index.html
Mnist import code is based on the Gorgonia example. https://gorgonia.org/tutorials/mnist/