How I got started with Machine Learning & AI
Years ago, while my fascination for technology was appetizing me to work on something really cool, I stumbled upon this amazing technology that lets machines learn from examples and do things without explicitly being programmed to do so. It stood perfectly against my previous understanding of computers, and at that moment, I decided to start my journey of comprehending it, hoping that it would help me quench my thirst to effectively solve problems around me with technology.
While machine learning was not really a new idea, I learned that the recent advancement in computational efficiency opened the possibility of working with models that consisted of numerous layers of neurons and fed on humongous datasets. It seemed like, everything touched by “Deep Learning” became better: speech recognition, image recognition, translations, natural language processing. It even enabled computers do things we (people familiar with how programs are written) never imagined: image captioning, music synthesis, generating serious artwork, the list goes on.
Though my determination to master this technology was solid, it took me a while to get started (longer than I thought), not because of the lack of resources that anyone can Google in seconds, but because of the difficulty in locating appropriate resources that fit my level of understanding. In short, had I been given a perfect “pathway” to follow to learn, I could have saved a whole lot of time. Despite the fact that I still am in my “learning stage”, I felt like I’ve made considerable progress from where I started, and thought that sharing my journey would help others wanting to get started with ML and AI from absolute zero. So here goes my “Pathway to get started with ML & AI”:
Step one: Math foundations
Even though “Machine Learning” sounds very techy, it happens to be more of a mathematical discipline. Before getting started, it's recommended that you are comfortable with linear algebra, probability, statistics, and calculus.
Step two: Machine Learning algorithms and concepts:
Here is a great course on coursera created by Stanford University, and taught by Andrew Ng (Former VP & Chief Scientist at Baidu, Co-Founder of Coursera, Lead the Google Brain Team).
It covers many essential topics like linear regression, logistic regression, regularization, support vector machines and explains how all these fits into picture with real world examples.
Once you are comfortable with classic ML concepts, and ready to dive into the world of Neural Networks and Deep Learning, there is another great course, again by Andrew Ng, through his initiative-deeplearning.ai
This course will introduce you to the world of Neural Networks and talk about popular classes of neural networks — Convolutional Neural Networks (most commonly applied to analyzing visual imagery), Recurrent Neural Networks (deals with sequential data like text, audio), and gives you an intuition as to how to choose the right models to solve different problems.
Step three: Applying into real-world systems
Enough theory. By the time you reach here, you should be having a solid foundation of the math that goes behind ML, and must have an intuition for the working of different model architectures. In order to get yourself motivated with results, as well as to enable yourself contribute to this world with your own projects, it is essential to learn to work with computing libraries like tensorflow, and specific neural network libraries like keras. Its more of a personal choice as to where to start from. I was very much inclined towards tensorflow, maybe because of all the hype Google was able to build around it, or maybe because it is really cool.
Here is another great specialization course — Machine Learning with TensorFlow on Google Cloud Platform Specialization
This course is extremely useful for anyone looking to get started with machine learning. It takes you through significant (but sometimes underrated) data preprocessing steps, feature engineering, and best practices in the industry.
You will also be introduced to tools like DataFlow on Google Cloud Platform that will let you scale your model and automate data processing pipelines in real-time.
Final Step: Continuously learn
Being on a continuous lookout for — new research papers, new methods of solving problems and new tools that let us solve problems efficiently — is very important. Here are some blogs and youtube channels to follow to keep yourself updated:
OpenAI is a non-profit AI research company, discovering and enacting the path to safe artificial general intelligence.blog.openai.com
MacArthur "geniuses" in machine learning and synthetic biology to serve as faculty co-leads; Nobel laureate to chair…news.mit.edu
This post is authored by Anusua Trivedi, Senior Data Scientist at Microsoft. This post builds on the MRC Blog where we…blogs.technet.microsoft.com
Co-located in Silicon Valley, Seattle and Beijing, Baidu Research brings together top talents from around the world toresearch.baidu.com
I'm Siraj. I'm on a warpath to inspire and educate developers to build Artificial Intelligence. Games, music, chatbots…www.youtube.com
Amazon SageMaker built-in algorithms now support Pipe mode for fetching datasets in CSV format from Amazon Simple…aws.amazon.com
IBM Research has been exploring artificial intelligence and machine learning technologies and techniques for decades…www.research.ibm.com
The Scripps Research Translational Institute is partnering with NVIDIA to develop AI and deep learning best practices…blogs.nvidia.com
Welcome to the official TensorFlow YouTube channel. Stay up to date with the latest TensorFlow news, tutorials, best…www.youtube.com
TensorFlow Reinforcement Learning represents an open source collection of key algorithmic components that we have used…deepmind.com