Slides and contents for pyconf: Artificial Neural Networks [WIP :-/ ]

Artificial Neural Networks: From zero to real world projects

Artificial Neural Networks (ANN henceforth) are so common today, and some consider it as a master key for almost all machine learning problems. There are many toolkits and libraries (tools henceforth) available, but I myself have never been comfortable with these until I understand (at least partially) what’s going on under the hood. I’m in no way saying that these tools are poorly documented or have a difficult learning curve, it’s just the way I tend to learn. Assuming that I am not alone in this regard, I would like to help others in their quest to understand and master ANN by giving my bit.

I am going to start with explaining (only a little) about ideas behind ANNs very very briefly, after which I’ll show some basic & trivial examples. The talk will mainly focus on (My main focus will be towards) two parts. Firstly, to show how to implement an ANN which practically ‘does something’, using only numpy (only for functionalities like np.dot, np.reshape which are not directly related to ANN) and core python. Second part, will consist of peeking (a little) inside tools like scikit-learn and TensorFlow and working with them.

Numerous interesting and notable projects using these (or any other like caffe) will be mentioned in the end to show capabilities of ANNs.

Bonus (if time permits):

Using PyCUDA for ANN computations
NLTK.
Theano.
Keras.
Torch.
Caffe.