Here is an exhaustive list of the 4 free Artificial Neural Network Libraries for use with your Python code. In the coming weeks I’m going to try out a few of them and update this post. I’d love to hear anyone’s experiences with any of these. If you’ve used them please leave us a comment.
Here they are listed in the order of my perception of their overall quality:
1. First we have the Fast Artificial Neural Network Library (FANN). It is written in C but says it has Python bindings. The bindings for Python look hard to set up but on the plus side it looks well maintained and claims to be extremely fast.
2. Next there is the bpnn.py neural network code by Neil Schemenauer. It’s just a lone .py file sitting out in the middle of the internet. What looks good about this is that it’s written in pure Python, and it’s really short. This makes me think it will be easy to understand and verify. It’s also public domain which is nice. I’m also encouraged by the fact that this fancy IBM type article used this module. Perhaps that article will serve as a de facto documentation for the module?
3. The Pyro Python Robotics project seems to have some neural network stuff but on a cursory glance it appears to be more a tutorial than something you can download and use.
4. Finally, NEURObjects is a set of C++ library classes for neural networks development. I only include it here because I always hear that it’s easy to make a Python wrapper for C++ code. Of course I’ve never been able to figure out how myself, but it might work as a last resort. (Python experts, please give us a tutorial on this wrapper stuff!)
I’m surpsised I didn’t find more free Python neural network libraries. If you know of any I’ve left out, please leave a comment. I would especially think that something would have been done with numpy since that would make for a fast running neural network.
And just in case you want to use a neural network but can’t think of a good excuse, here are a couple of good (financial) ideas to get you started.
[tags]ANN, MLP, Artificial Neural Network, Multilayer Perceptron, Backpropagation, weights, Python Neural network, Python Neural networks, neural network, neural networks, machine learning, data mining[/tags]