Image generated with DALLE-3
Machine learning is becoming increasingly popular in the data space. But there’s often a notion that to become a machine learning engineer you need to have an advanced degree. This, however, is not completely true. Because skills and experience trump degrees, always.
If you’re reading this, you’re probably new to the data field and want to start out as a machine learning engineer. Perhaps, you already work in data as a data analyst or a BI analyst and would like to switch to a machine learning role.
Whatever your career goals are, we’ve curated a list of machine learning courses—that are completely free—to help you gain proficiency in machine learning. We’ve included courses that’ll help you understand both the theory and building machine learning models.
Let’s begin!
If you’re looking for a machine learning course that is accessible, Machine Learning for Everybody is for you.
Taught by Kylie Ying, this course takes a code first approach building simple and interesting machine learning models in Google Colab. Spinning up your own notebooks and building models while learning just enough theory is a great way to familiarize yourself with machine learning.
This course makes machine learning concepts accessible and covers the following topics:
- Introduction to machine learning
- K-Nearest Neighbors
- Naive Bayes
- Logistic regression
- Linear regression
- K-Means clustering
- Principal Component Analysis (PCA)
Course link: Machine Learning for Everybody
Kaggle is a great platform to take part in real-world data challenges, build your data science portfolio, and hone your model building skills. In addition, Kaggle team also has a series of micro courses to get you up to speed on the fundamentals of machine learning.
You can check out the following (micro) courses. Each course will typically take a few hours to complete and work through the exercises:
- Intro to Machine Learning
- Intermediate Machine Learning
- Feature engineering
The Intro to Machine Learning course covers the following topics:
- How ML models work
- Data exploration
- Model validation
- Underfitting and overfitting
- Random forests
In the Intermediate Machine Learning course, you’ll learn:
- Handling missing values
- Working with categorical variables
- ML pipelines
- Cross-validation
- XGBoost
- Data leakage
The Feature Engineering course covers:
- Mutual information
- Creating features
- K-Means clustering
- Principal Component Analysis
- Target encoding
It’s recommended to take the courses in the above order so that you have the prerequisites covered when you move from one course to the next.
Courses link:
Machine Learning in Python with Scikit-Learn on the FUN MOOC platform is a free self-paced course created by the developers on the scikit-learn core team.
It covers a wide breadth of topics to help you learn building machine learning models with scikit-learn. Each module contains video tutorials and accompanying Jupyter notebooks. You need to have some familiarity with Python programming and Python data science libraries to make the most of the course.
The course contents include:
- Predictive modeling pipeline
- Evaluating model performance
- Hyperparameter tuning
- Selecting the best model
- Linear models
- Decision tree models
- Ensemble of models
Course Link: Machine Learning in Python with Scikit-Learn
Machine Learning Crash Course from Google is another good resource to learn machine learning. From the basics of building a model to feature engineering and more, this course will teach you how to build machine learning models using the TensorFlow framework.
This course is split into three main sections, with a majority of the course’s contents in the ML concepts section:
- ML Concepts
- ML Engineering
- ML Systems in the Real World
To take this course, you need to be familiar with high school math, Python programming, and the command line.
The ML concepts section includes the following:
- ML foundations
- Introduction to TensorFlow
- Feature engineering
- Logistic regression
- Regularization
- Neural networks
The ML Engineering section covers:
- Static vs. dynamic training
- Static vs. dynamic inference
- Data dependencies
- Fairness
And ML Systems in the Real World is a set of case studies to understand how machine learning is done in the real world.
Course link: Machine Learning Crash Course
So far, we’ve seen courses that give you a flavor of theoretical concepts while focusing on building models.
While this is a good start, you will have to understand the workings of machine learning algorithms in greater detail. This is important for cracking technical interviews, growing in your career, and getting into ML research.
CS229: Machine Learning at Stanford university is one of the most popular and highly recommended ML courses. This course will give you the same technical depth as a semester-long university course.
You can access the lectures and lecture notes online. This course covers the following broad topics:
- Supervised learning
- Unsupervised learning
- Deep learning
- Generalization and regularization
- Reinforcement learning and control
Course Link: CS229: Machine Learning
I hope you found helpful resources to help you in your machine learning journey! These courses will help you get a good balance of theoretical concepts and practical model building.
If you’re already familiar with machine learning and are limited by time, I recommend checking out Machine Learning in Python with scikit-learn for a scikit-learn deep dive and CS229 for essential theoretical foundations. Happy learning!
Bala Priya C is a developer and technical writer from India. She likes working at the intersection of math, programming, data science, and content creation. Her areas of interest and expertise include DevOps, data science, and natural language processing. She enjoys reading, writing, coding, and coffee! Currently, she’s working on learning and sharing her knowledge with the developer community by authoring tutorials, how-to guides, opinion pieces, and more.