Skip to content

Just another neural network library for the arduino platform

Notifications You must be signed in to change notification settings

gkosae/ArduinoNeuralNet

Repository files navigation

ArduinoNeuralNet

This is just a little something I created for my undergraduate final year project. It is a neural network library used for supervised learning. It uses backpropagation with gradient descent for learning and handles overfitting to some degree with L2 regularization.

This project is made up of two parts.

ArduinoNeuralNet (A minimized neural network library)

This is everything found in the ArduinoNeuralNet folder. It is meant be used on the arduino platform. Refer to this guide for installation instructions.

The rest

This is anything else not found in the ArduinoNeuralNet folder. With this, you can create and train a multilayered feed-forward neural network. For my convenience, it is able to generate arduino code containing the structure and content (weights and biases) of the network after training for use in arduino projects. Its been tried and tested on Linux (Ubuntu).

ArduinoNeuralNet depends on the awesome library, StandardCplusplus, by maniacbug. Install it alongside.

There is only one example at the moment, i.e. in main.cpp. But I'll add more really soon. :)

Build

To build this, run

make

in the root folder. It uses clang to build by default. But you can change this to another compiler by using the CXX option. E.g. to use g++ run

make CXX=g++

Use

make run

To try out the example that comes with this

About

Just another neural network library for the arduino platform

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published