Skip to content

An object-oriented neural network toolkit built in Python using Theano, Numpy, OpenCV, and CUDA.

License

Notifications You must be signed in to change notification settings

imofftoseethewizard/nnkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NNKit

NNKit is the very beginnings of an object oriented neural network exploration kit. So far, it implements a few flavors of backprop and has some basic reporting. It is slow, for now, as no attempt has yet been made to optimize transfers to and from the GPU.

It is written in Python and built on primarily Theano, Numpy, and CUDA; it also uses matplotlib and OpenCV for some non-core tasks: charts, sample data set generation, etc.

To run the examples, clone this repo, cd to nnkit/src and type 'make'. Then cd to nnkit/build/nnkit/examples and type 'python ex01_classify.py' to run the input classification example, or 'python ex02_bestfit.py' to run the best fit example.

The output of the latter can be seen in the directory nnkit/build/nnkit/examples/ex02_images; in particular compare ex02_images/all/output_comparison.0.png (the initial output) with ex02_images/all/output_comparison.99.png (the last). The first column is the training input image, the second is the label, and the third is the network output.

There are lots of comments throughout the code, and I've tried to code this in a clear, clever-free style.

About

An object-oriented neural network toolkit built in Python using Theano, Numpy, OpenCV, and CUDA.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages