What is the best supervised neural network package for python? I found that sci-kit package
only have unsupervised neural network.
-
3$\begingroup$ pybrain, theano, keras, lasagne $\endgroup$– 404pioMay 20, 2015 at 17:06
-
1$\begingroup$ Theano is cool, it will of course depend on your use case... $\endgroup$– RamalhoMay 23, 2015 at 0:23
2 Answers
Theano would be my personal preference while PyLearn2 is also very powerful.
For a more lower-level approach, you could use autograd a great work coming from HIPS lab (https://github.com/HIPS/autograd/). Autograd does automatic differentiation of numpy functions and has examples of NNs, RNNs etc.
If you are looking for something easier and scikit-style you can try I. Laradji's implementations of Multilayer Perceptron and Autoencoder https://github.com/IssamLaradji/NeuralNetworks.
Google's TensorFlow (https://www.tensorflow.org/) is also a great option. It works well with Python, and the syntax is fairly easy to follow. As of today (May 22, 2016) it has 228 contributors on GitHub, which indicates that it has a healthy community and should remain active and relevant for many years to come.
Size of the community should always be something to consider when picking a library. One of the biggest frustrations is investing a lot of time and effort learning a new library, only to hit a road block when you encounter a bug or idiosyncrasy and are not be able to find a solution anywhere online because few people still use the tool. Libraries built by Google tend to last a long time, and I would expect TensorFlow to be no different.