Deep learning (DL) is a vast field with a developing research currently being implemented in the industry. From speech-to-text, and object detection, to image recognition and mastering video games like Dota or beating the world champion in AlphaGo, deep learning is used everywhere.
Solving deep learning or understanding it may seem difficult at first, but it is becoming easier by the day, thanks to a plethora of resources available online. If you want to land a job in DL you have to first understand and learn how to implement it by building applications. There’s a huge demand for engineers with this expertise.
Things To Do Before Beginning Your Deep Learning Journey
Basic knowledge of complex maths such as calculus, statistics, probability and linear algebra is a must. Maths is the base of DL, since programming is just a way of teaching the computer the advanced concepts.
Neural Network are complex models which have learnable weights, which tend to master a task or objective. They learn from the information which has been provided like speech, which converts it into text, based on the language, objects from the images, etc.
Deep learning has become very accessible for newcomers in this field for two primary reasons.
- Computing hardware is now fast and cheap enough to make it available for just about anyone with a decent graphics card in their PC.
- New open source deep learning platforms like TensorFlow, Theano and Caffe make spinning up your own deep neural network fairly easy, especially when compared to having to build one from scratch.
Head To These Blogs, MOOCs And Books To Polish Your Knowledge
- Brandon Rohrer’s YouTube videos is a place to start with, as he is a principal data scientist at Microsoft who makes interesting videos on basic neural networks like CNN, RNN etc, with real-life examples.
- Sentdex, aka Harrison Kinsley’s website know as Pythonprogramming.net is a diverse platforms for one to understand a broad range of concepts ranging from Python, deep learning, self-driving cars, robots, etc.
- Siraj Raval’s YouTube channel is definitely a place for one to understand the tech related to blockchain, AI, ML and DL. He has also made a lot of videos on developing basic deep learning models where one can understand and replicate them.
- Andrew Ng’s Stanford course on machine learning is very popular and generally well-reviewed. It’s considered one of the best introductory courses in machine learning and will give you some rigorous preparation for delving into DL.
- Udacity’s free ten-week course on Introduction to machine learning will help you to understand both the theory and application of ML concepts. Again, it’s beginner’s course to get started with deep learning.
- Andrej Karpathy’s course called CS231n: Convolutional Neural Networks for Visual Recognition at Stanford is challenging but well-done syllabus in deep neural networks, and the content as well as the detailed course notes are available online.
- Ian Goodfellow, Yoshua Bengio and Aaron Courville’s book, Deep Learning, published by MIT is another good resource. This book has been categorised into three parts — where one can start with basic maths and statistics concepts from Part 1, work their way towards machine learning algorithms and deep learning neural networks in Part 2 and then delve into advance deep learning concepts in Part 3.
Why It’s Important To Practice Deep Learning
Once you have gathered adequate knowledge of neural networks, you are ready to dive into building your own models and tweak them to master the task they have been designed for. You can find datasets here:
- Machinehack is a new platform designed by AIM, specially for the machine learning enthusiasts where one can participate in the online hackathons to compete with hundreds of data scientists.
- Kaggle also an online platform to compete with the data scientists, has a large set of datasets and also beginner kernels to understand and how to build models.
- UCI Machine learning repository is an open source platform where datasets are uploaded. One can make use of this to start right from cleaning, processing then training the models based on the data.
Where to Apply For Deep Learning Jobs And What Avoid
Almost every startup based on software wants to hire people who understand deep learning. The demand for these skills are very high. You can either look for these profiles on generic websites like AngelList or Linkedin or look into one of the few jobs boards that specialise in DL positions. Deeplearning.net as well as a more general machine learning jobs board on Analytics India Jobs will do the trick. Interestingly enough, most companies looking for DL/ML talent aren’t interested in setting up HR hoops for the applicant to jump through.
Also keep in mind that this field is more more skill-based. Companies look for the cool stuff that you have built and played with, which you may deem irrelevant to the educational degree you hold. For example, if you have build an object detection model with the help of Tensorflow Object detection API on a Raspberry Pi, you must flaunt these three features:
- The accuracy of the model
- Description of your project
- Your Github repo link
By giving the above description, you can get through the glass door. Then you can work around the questions fired at you based on the skills that you have acquired by coding and building these models.