Deep Learning Applications: A hands-on approach
Submitted by Shubham Dokania (@shubhamdokania) on Saturday, 10 June 2017
Section: Workshop Technical level: Intermediate
Deep Learning, although a trending topic, appears as a challenging topic to beginners. There has been significant improvement in Deep Learning frameworks in the recent years, making it easier for everyone to hop-on the Machine Learning bandwagon. This workshop is aimed at giving participants a hands-on experience of a variety of deep learning techniques, while discussing about the underlying mathematical concepts involved.
While no prior deep learning background is assumed, participants are required to review a few mathematical concepts. Jupyter notebooks will be provided for the participants to tweak and run on their own laptops using VirtualBox.
This workshop shall be beneficial for those who seek to journey through the interesting applications of Deep Learning and get a kickstart into the field. Participants already familiar with Deep Learning will get to build exciting applications.
The workshop will start from the very basics of Neural Networks, building an intuitive thinking of how and why these techniques work, and quickly progress to getting hands-on using open source frameworks (Keras, Tensorflow) including the training of a deep network on simple problems to get ‘warmed up’.
This will be followed by more detailed discussions about large scale models, where participants will use several pre-trained models for the demonstration of applications such Knowledge transfer with deep neural networks. The applications to be discussed in depth include:
- Image Classification problems
- Text Processing with word vectors (GloVe)
- Transfer Learning with pre-trained models (Knowledge Transfer)
- Deep dream and Artistic style transfer (The algorithm powering Prisma)
- Reinforcement Learning with DQN (for simple games).
Jupyter notebooks with examples will be provided to participants for experimenting and gain a deep understanding of the techniques and the not-so-scary mathematics behind this all.
Participants will need a laptop with VirtualBox installed (if not running directly on your platform), with the following libraries installed:
- Tensorflow or Theano
- Numpy and Scipy stack
- OpenCV (optional, to use your camera for live demo of models)
Participants should have knowledge of basic Python scripting (functions, classes etc.), along with an understanding of some matrix mathematics, introductory calculus and statistics (Variances, Probability distributions etc.).
Shubham Dokania is currently a Machine Learning Instructor at Coding Blocks, while parallely working as a research intern at IIIT Delhi, supervised by Dr. Ganesh Bagler. Completed his B.Tech in Mathematics and Computing from Delhi Technological University (Formerly DCE). At Coding Blocks, he teaches undergrad/grad students and industry professionals about the techniques of Machine Learning with an inclination towards the research background of the methods discussed. Shubham has also spoken at local meetups including PyData Delhi Meetup, DTU workshop sessions and Bootcamps across New Delhi.