Why do you want to learn Deep Learning?
Deep learning has been termed as one of the leading scientific breakthroughs in recent years, you can read an interesting article: MIT Technology Review. It has resulted in state of the art performance in a variety of areas, including computer vision, natural language processing, reinforcement learning, and speech recognition. It has attracted significant industrial investment with large groups at Google ( hired Geoff Hinton), Facebook ( hired Yann LeCun to head Facebook AI Lab), Baidu (hired Andrew Ng), IBM, Microsoft etc working on applications of deep learning. Most interestingly, we at Aindra are also making use of this cutting-edge technology to develop our products.
Do you want to learn about Deep Learning?
The best way is to take an online course. There are many online courses on Machine Learning but very few on Deep Learning. Here’s a list:
Deep Learning and Neural Networks: by Kevin Duh. It consists of only four lectures but provides an excellent foundational understanding at a level sufficient for anyone to start reading research papers in this exciting and growing area.
Neural Networks for Machine Learning: You could listen to the lectures here from one of the legend Geoffrey Hinton from the University of Toronto. This course emphasizes both on basic algorithms and the practical tricks needed to get them to work well in applications like speech and object recognition, image segmentation, modeling language and human motion, etc.
Material for the Deep Learning course: Here is all the course related materials by the legend Yann Lecun, NYU. It also has pointers to some of the tutorials conducted at various conferences.
Convolutional Neural Networks for Visual Recognition: at Stanford University. Though, video lectures are not available online but you can still get access to an excellent course notes and assignments.
Deep Learning seminar course: by Lorenzo Torresani at Dartmouth University. This might not be an extensive list of papers related to deep learning but definitely mentions some of the important deep learning papers and its well categorised.
Apart from these online courses you could also find some interesting tutorial talks at various conferences/workshop, here is a partial list:
Deep Learning methods for vision: This was one of the CVPR 2012 tutorial.
Software packages which support Deep Learning include
- Caffe: Caffe is a deep learning framework made with expression, speed, and modularity in mind. It is developed by the Berkeley Vision and Learning Center (BVLC) and by community contributors.Yangqing Jia created the project during his PhD at UC Berkeley. Caffe is released under the BSD 2-Clause license.
- Torch7: an extension of the LuaJIT language which includes an object-oriented package for deep learning and computer vision. It is easy to use and efficient, built using LuaJIT scripting language, and an underlying C/CUDA implementation.
- Theano + Pylearn2: Pylearn2 is a python wrapper that lets you use Theano’s symbolic differentiation and other capabilities with minimal overhead.
- cuda-convnet: High-performance C++/CUDA implementation of convolutional neural networks, based on Yann LeCun work written by Alex Krizhevsky.
For any further materials related to Deep Learning you can find them at http://deeplearning.net/
Please leave your comments or suggestions to include more sources related to deep learning (that we might have missed in this article).