conny

Recurrent neural network implementation targeted towards evaluating new topologies


License
GPL-3.0
Install
pip install conny==0.1.0

Documentation

Code Climate Test Coverage

Conny

Conny is a neural network library. Instead of organizing networks into layers, it allows for arbitrary connections including recurrent ones. This makes it a good tool to experiment with new topologies.

Data Layout

All neurons are stores as a one-dimensional vector. This works since in backpropagation through time, gradients are only based on the previous activations. This allows for arbitrary connections between neurons. The network and its state are still stored in a compact way allowing for efficient algebra routines on the CPU and GPU.

Variable Type Dimensions Storage
Activation Function int8 N Dense
Current activation float32 N Dense
Previous activation float32 N Dense
Weights float32 N x N Sparse
Gradient float32 N x N Sparse

N refers to the total number of neurons.

The activation function is stored as an enumeration value.

Instructions

virtualenv .
source bin/activate
pip install -U pip
pip install -r requirements.txt
py.test test