scikit-learn compatible neural network library
nolearn contains a number of wrappers and abstractions around existing neural network libraries, most notably Lasagne, along with a few machine learning utility modules. All code is written to be compatible with scikit-learn.
To install the latest release of nolearn from the Python Package Index, do:
pip install nolearn
At the time of this writing, nolearn works with the latest versions of its dependencies, such as numpy, scipy, Theano, and Lasagne (the latter from Git). But we also maintain a list of known good versions of dependencies that we support and test. Should you run into hairy depdendency issues during installation or runtime, we recommend you try this same set of tested depdencencies instead:
pip install -r https://github.com/dnouri/nolearn/tree/0.6.0/requirements.txt pip install nolearn
If you want to install the latest development version of nolearn directly from Git, run:
pip install -r https://raw.githubusercontent.com/dnouri/nolearn/master/requirements.txt pip install git+https://github.com/dnouri/nolearn.git@master#egg=nolearn==0.7.git
If you’re looking for how to use nolearn.lasagne, then there’s two introductory tutorials that you can choose from:
- Using convolutional neural nets to detect facial keypoints tutorial with code
- Training convolutional neural networks with nolearn
For specifics around classes and functions out of the lasagne package, such as layers, updates, and nonlinearities, you’ll want to look at the Lasagne project’s documentation.
nolearn.lasagne comes with a number of tests that demonstrate some of the more advanced features, such as networks with merge layers, and networks with multiple inputs.
nolearn’s own documentation is somewhat out of date at this point. But there’s more resources online.
Finally, there’s a few presentations and examples from around the web. Note that some of these might need a specific version of nolearn and Lasange to run:
- Oliver Dürr’s Convolutional Neural Nets II Hands On with code
- Roelof Pieters’ presentation Python for Image Understanding comes with nolearn.lasagne code examples
- Benjamin Bossan’s Otto Group Product Classification Challenge using nolearn/lasagne
- Kaggle’s instructions on how to set up an AWS GPU instance to run nolearn.lasagne and the facial keypoint detection tutorial
- An example convolutional autoencoder
- Winners of the saliency prediction task in the 2015 LSUN Challenge have published their lasagne/nolearn-based code.
- The winners of the 2nd place in the Kaggle Diabetic Retinopathy Detection challenge have published their lasagne/nolearn-based code.
- The winner of the 2nd place in the Kaggle Right Whale Recognition challenge has published his lasagne/nolearn-based code.
If you’re seeing a bug with nolearn, please submit a bug report to the nolearn issue tracker. Make sure to include information such as:
- how to reproduce the error: show us how to trigger the bug using a minimal example
- what versions you are using: include the Git revision and/or version of nolearn (and possibly Lasagne) that you’re using
Please also make sure to search the issue tracker to see if your issue has been encountered before or fixed.
If you believe that you’re seeing an issue with Lasagne, which is a different software project, please use the Lasagne issue tracker instead.
There’s currently no user mailing list for nolearn. However, if you have a question related to Lasagne, you might want to try the Lasagne users list, or use Stack Overflow. Please refrain from contacting the authors for non-commercial support requests directly; public forums are the right place for these.
Citations are welcome:
Daniel Nouri. 2014. nolearn: scikit-learn compatible neural network library https://github.com/dnouri/nolearn
See the LICENSE.txt file for license rights and limitations (MIT).