Breaking into AI

Beginner-friendly resources for Machine Learning

Tejas Morkar
Towards Data Science
12 min readNov 11, 2020

--

Photo by Avel Chuklanov on Unsplash

A traditional program is a set of instructions that we provide to a machine in order to perform a specific task. On the other hand, Machine Learning is quite different and unique. Machine Learning is a subset of Artificial Intelligence where a machine has the ability to learn and improve itself from experience without being programmed explicitly by anyone. Machine Learning is in a stage of booming and there is a lot of interesting research work going on. Everyone wants to understand it and break into AI for utilizing its power. Unfortunately, it is often perceived as a miraculous black box that takes some input data and gives out magical predictions but it has got so much more to it than that. Students and developers from various traits and fields want to start using Machine Learning in their projects but the important question is,

“Where do I begin with Machine Learning?”

Photo by Jon Tyson on Unsplash

Breaking into this field is not a task of a few days but a lot of resources today have made it easier for beginners to get a head start. Today, you don’t need to be enrolled in a Ph.D. program or you don’t even need to be doing a Computer Science degree for being able to learn about this new technology. Regardless of the background, you have various options to get started with ML. In this article, we will go over some of the best beginner-friendly resources for Machine Learning.

Before getting straight into it, you should know that there are basically various paths that you can take to get into ML and AI. There is a top-down approach where you just learn high-level things in brief and focus on implementations using frameworks like TensorFlow and Pytorch[we will talk about these frameworks later in the article]. The other approach is that you focus on every algorithm and all the maths and statistics behind it. The latter approach is most beneficial for people who want to get into the research domain of AI and ML. Identify the one that suits you better.

According to me, a top-down approach is better for most of the beginners who want to break into AI and ML and start working on their projects. In this approach, you can learn the mathematics behind it as and when you need it. Here you can directly experience the practical working and this keeps you motivated to keep learning. Whereas one might lose their interest if they just keep learning the theory of ML and not use it anywhere. One important point to keep in mind is that in this approach, people tend to skip the perception part and just copy-paste some code from the internet or courses. The code will work but it is necessary to understand the intuition and reasoning behind it. You must know the reason for every line of code that you write.

If you want to start with a top-down approach, then there are many great resources available for free on the internet. The most common question that I get from people is, “I’ve done Python. Now, how do I start with ML?” My answer to that is a series of steps that I’ll go over in this article. If you have the knowledge of Python language then that is great because it has a great pool of Machine Learning libraries that makes it one of the best languages for ML. But if you don’t know anything about this language, don’t be demotivated. It is one of the simplest programming languages to learn.

Learning Python

1 - Python for Everybody Specialization by the University of Michigan on Coursera — Link
This is one of the best courses out there on Coursera for getting started with Python Programming Language. It covers all the topics like data structures, databases, and networked application program interfaces.

2 - Learn Python from scratch [Python Bootcamp] by Zero to Mastery on YouTube — Link
Andrei Neagoie is a great instructor and has a wonderful review on Udemy. I personally love all his courses. This is his course for people wanting to get started with Python.

3 - Learn Python — Full Course for Beginners [Tutorial] by freeCodeCamp on YouTube — Link
This is an approximately 4 hours 30 minutes long video where you’ll get everything you need to get started with Python language. This course is developed by Mike Dane.

Python for Machine Learning

After learning Python, it’s best to first get a good knowledge about libraries you’ll need to use while working on ML and AI projects like Pandas, Matplotlib, Numpy.

1 - Python for Data Science and AI by IBM on Coursera — Link
This covers some basics of python in the first week. And then it advances to data structures and playing with data using python. The last week consists of analyzing US economic data and building a dashboard.

2 - Applied Data Science with Python Specialization by the University of Michigan on Coursera — Link
This is a wonderful specialization for all the ML enthusiasts out there. If you complete this course, you’ll be very comfortable with python language for data visualization, mining, manipulation, and other stuff that is required in data science.

3 - Python for Data Science on upGrad — Link
Topics covered in this course are Intro to Python, Programming using python, libraries for data science, and data visualization.

The best resources for getting familiar with the libraries is to go through their official documentation. They are the best place to explore and get an in-depth understanding of it.

Numpy — https://numpy.org/doc/
Pandas — https://pandas.pydata.org/docs/
Matplotlib — https://matplotlib.org/3.3.2/contents.html

Basics of ML and AI

While learning python and the libraries, it is better to keep going through very basic courses of AI where you can gain an intuition of what actually it is.

1 - Elements of AI by Reaktor and the University of Helsinki — Link
Elements of AI is a free online course curated for all the beginners out there. You’ll get a basic concept of AI and their main goal is to demystify AI.

2 - AI For Everyone by deeplearning.ai on Coursera — Link
This is another wonderful course curated by Andrew Ng. It covers all points that anyone might want to know before dipping their toes into AI. This is meant for people from all traits and backgrounds.

3 - Machine Learning Recipes by Google Developers on YouTube — Link
Josh Gordon, in this series, nicely explains how anyone can get started with basic code in ML using the libraries like Scikit Learn and TensorFlow by Google.

4 - Introduction to Machine Learning Concepts on upGrad — Link
This is a 6 weeks course that covers ML topics like linear regression, logistic regression, clustering, and recommender systems.

Machine Learning in-depth

After going through the basics of AI and exactly understanding the concepts behind it, ML is no more a magical black box. Now, you should get deeper into it and learn how to use frameworks like TensorFlow and PyTorch to build your own ML models.

1 - Machine Learning by Stanford on Coursera — Link
If you ever want to get deep knowledge about all the types of Machine Learning algorithms out there, this is the go-to course for you. The course content is very amazing and nicely formed. You’ll see the regression, classification, neural networks, anomaly detection, recommender systems, and much more throughout this course. It is filled with great content.

2 - Machine Learning Crash Course by Google — Link
This crash course is a self-study guide for aspiring machine learning practitioners. It features a series of lessons with video lectures, real-world case studies, and hands-on practice exercises.

3 - MIT 6.S19: Introduction to Deep LearningLink
MIT’s official introductory course on deep learning methods with applications in robotics, gameplay, art, computer vision, language, medicine, and more! Students will gain foundational knowledge of deep learning algorithms and get practical experience in building neural networks in TensorFlow.

4 - DeepLearning.AI TensorFlow Developer Professional CertificateLink
TensorFlow is an open-source Machine Learning library by Google and it makes building deep learning models very easy. It is a very powerful, scalable, and flexible framework. This course will guide you through everything you should know about TensorFlow at a beginner to intermediate level.

5 - Intro to Deep Learning with PyTorch by Facebook Artificial Intelligence on Udacity — Link
PyTorch is another open-source Machine Learning library by Facebook’s AI Research lab. It is based on the Torch library. It allows users to modify and make changes on a lower lever easily so it is mainly popular in the research field. This course covers all the basics that anyone might require for getting started with PyTorch.

Tailored to domains

Once you get familiar with machine learning and all the fundamental algorithms from the previous course, you will want to explore the specific domains in Machine Learning like Deep Learning, Natural Language Processing, Computer Vision, and others. Here are some good courses which will cover these topics from ground zero.

1 - Deep Learning Specialization by deeplearning.ai on Coursera — Link
To get started with neural networks and deep learning, according to me, this is one of the most important courses. The project notebooks that they have are a great way of testing out how much we can apply the knowledge instantly.

2 - Natural Language Processing Specialization by deeplearning.ai on Coursera — Link
Another field that has boomed in deep learning is NLP. NLP requires a lot of preprocessing and has a different approach overall. You’ll be confident in this domain after going through this specialization.

3 - Practical Deep Learning for coders by fast.ai — Link
Fast.ai is another library with the intent to make it easier for everyone from any background to build ML models. This is based on PyTorch and has great features. Their course covers everything about this library and Jeremy, the founder of Fast.ai has also explained most of the important concepts of Machine Learning in a very understandable way.

4 - AI for Medicine Specialization by deeplearning.ai on Coursera — Link
AI for Medicine is not very similar to AI for other purposes. It requires higher precision, higher accuracy and the data available to us is very less. This course shows the power of data augmentation and other methods to build better models with lesser data.

5 - Reinforcement Learning by Georgia Tech on Udacity — Link

6 - The Deep RL courseLink
This course is a series of articles and videos where you’ll master the skills and architectures you need, to become a deep reinforcement learning expert. You’ll build a strong professional portfolio by implementing awesome agents with Tensorflow and PyTorch that learns to play Space invaders, Minecraft, Starcraft, Sonic the hedgehog, and more!

7 - Generative Adversarial Networks by deeplearning.ai on Coursera — Link
GANs are a relatively newer concept introduced by Ian Goodfellow in 2014. The GANs concept has made a tremendous change in the perception of deep learning. This is a good course that you might want to go through later on.

8 - Introduction to Deep Learning and Natural Language Processing on upGrad — Link
To know more about maths behind AI and ML this course includes 4 weeks of content for maths behind data analysis, intro to deep learning and intro to natural language processing.

9 - Advanced Certification in Machine Learning and Cloud by IIT Madras on upGrad — Link
In this course you will learn to deploy Machine Learning models using Cloud computing with India’s most advanced certification program, exclusively from IIT Madras & upGrad.

Interesting Podcasts

Podcasts are the best resources for being up to date with the Machine Learning domain as it is very active and keeps changing a lot. I’ve mentioned some of the best podcasts that I listen to.

1 - Linear DigressionsLink

2 - Lex Fridman PodcastLink

3 - Data SkepticLink

Best Books

Personally, I’ve found books to be the best source of knowledge after going through the courses. This is where you can strengthen your theoretical understanding of the concepts that you use in your ML projects.

1 - The Hundred-Page Machine Learning Book by Andriy Burkov
A very short book but with perfect knowledge. Andriy has compressed all the vital points in AI/ ML and put it in this 100 pages book[138 to be precise].

2 - Hands-on Machine Learning with Scikit-Learn, Keras and Tensorflow 2.0 Book by Aurelien Geron — O’Reilly
According to me, this book is an alternative to the Machine Learning and Deep Learning specializations by deeplearning.ai. I prefer this book as it has perfect explanations and every concept has a good code to try out side by side. You can also access the open-sourced code from this book at the following link — https://github.com/ageron/handson-ml2

3 - Deep Learning book by Ian Goodfellow
If you want to get deeper into the mathematical side of deep learning then this book has everything that you need. It was published in 2015, so it is relatively old but the content is great.

Bonus Book

Life 3.0 by Max Tegmark
Life 3.0 isn’t for learning AI and ML but it is a beautiful book that discusses the impact of Artificial Intelligence on the future of the human race and cosmic influence. The views of the author are interesting and it is indeed a great read.

Conclusion

Finally, we’ve reached the end of this entire list of resources. These are a lot and there are more! But don’t be overwhelmed. Once, you have gone through most of these resources, you’ll find it interesting to explore more and find new helpful resources on your own. The most important thing to know is that you shouldn’t get stuck in completing courses and books. Keep making projects every now and then. Make it a habit to build projects after every new skill you learn. According to me, that’s how you’ll know what you’ve learned and that’s how you keep yourself motivated — by building interesting projects.

Also, keep reading technical blogs and articles. Medium, Wired, TechCrunch are some of the great places for such technical blogs. Be up to date with recent research works. You’ll notice that in the start you won’t understand much of it but as you progress, everything starts making sense. It’s good to see recent progress in ML/ AI because everything keeps changing very quickly.

It’s a great journey ahead of you… Keep Learning!

--

--

Deep Learning Enthusiast | Exploring GANs | Pursuing Bachelors Degree in Computer Engineering