Crino is an open-source Python library aimed at building and training artificial neural-networks. It has been developed on top of Theano, by researchers from the LITIS laboratory.

Crino lets you "hand-craft" neural-network architectures, using a modular framework inspired by Torch. Our library also provides standard implementations as long as learning algorithms for :

auto-encoders (AE)

multi-layer perceptrons (MLP)

deep neural networks (DNN)

input-output deep architectures (IODA)

IODA is a novel DNN architecture, which is useful in cases where both input and output spaces are high-dimensional, and where there are strong interdependences between output labels. The input and output layers of a IODA are initialized with an unsupervised pre-training step, based on the stacked auto-encoder strategy, commonly used in DNN training algorithms. Then, the backpropagation algorithm performs the final supervised learning step.

If you use Crino and/or our IODA framework for academic research, you are highly encouraged (though not required) to cite the following paper: