How to Learn Machine Learning
by YOSS Community Writer, on September 13, 2019 at 11:00 AM
Machine learning is an applied field within artificial intelligence that allows a computer program to find patterns in data and model it without explicitly being told how to do it.
The term "machine learning" was coined by computer scientist Arthur Samuel in 1959. He did some of the earliest work on machine learning, and it was specifically related to games. He built a chess program that improved by playing games with itself, which is a form of reinforcement learning.
Before we discuss the ways to learn machine learning, let's explore exactly what it is.
What Is Machine Learning?
Machine learning is primarily involved with applying models to data. There are, broadly speaking, two kinds of learning models: supervised and unsupervised.
The main distinction between these two is whether the data is labeled. For example, let’s say that you have data on the tannin and acidity levels of a collection of wines but you have no labels—you don't know what each wine is. Let’s use this example to explore the differences between unsupervised and supervised machine learning.
In unsupervised learning, the program would look for patterns in the data. And it would find that they fall into roughly two groups: those wines with high tannin and low acidity levels, and those with low tannin and high acidity levels.
Based upon this, a human could determine that the first group is mostly made up of red wines and the second of white wines.
In supervised learning, each set of data would have its own label: red or white. Based on this, the computer program would create a model for the data that would allow it to predict the kind of wine based on the tannin and acidity levels (or vice versa).
Supervised learning is further broken down into two types: classification and regression. Our wine example is a classification problem because we are just trying to find out which category the wine goes in. If the labels for the wine were the price, however, we could use regression to create a model that predicts wine price based on its attributes.
Beyond the Basics
There is a lot more to machine learning, but models usually fall into these paradigms. For example, there is also “reinforcement learning” where the program is given more and more data to refine its model. However, it is still a form of supervised learning.
Additionally, there are hybrid models that combine elements of supervised and unsupervised learning.
Machine learning models aren't limited to simple mathematical models like linear fitting. They can be anything at all. Artificial neural networks, for example, are commonly used. This kind of work is called "deep learning." So too are those in particular industries like receptor models in air pollution monitoring.
How to Get Started With Machine Learning
There are three major prerequisites for machine learning: statistics, math, and computer science. These should be studied before you begin to tackle machine learning.
- Statistics: It is necessary to do statistics to determine how well a model fits the data.
- Math: Machine learning algorithms are coded in mathematics. It's important to be fluent in math up to at least the level of linear algebra.
- Computer science: Machine learning requires programming. It is done in a wide variety of languages, including Python, R, Java, and C/C++.
Even though various languages are used in machine learning, you should learn Python if you are just starting out. It's extremely popular and getting more popular all the time. The statistical language R is also widely used and good to know.
Most online boot camps focus on data science rather than machine learning. If that's what you are looking for, Switchup has a long list of boot camps with customer reviews.
There are also online machine learning courses for a few hundred dollars or less that are part of larger degree programs:
- ColumbiaX: A 12-week course that covers supervised and unsupervised learning.
- UCSanDiegoX: Part of the MicroMasters program in data science, this 10-week course teaches the fundamentals of machine learning.
- Microsoft: This slightly more advanced course on deep learning teaches the use of neural networks with machine learning.
There are a lot of free courses for those who just want to learn, too:
- Stanford: An 11-week course that covers everything from supervised and unsupervised learning through real-life machine learning applications.
- Microsoft: A 6-week course that goes into nonlinear models.
- Georgia Tech: A 4-month course broken down into sections on supervised, unsupervised, and reinforcement learning.
- CalTech: A 10-week computer science course focused on machine learning.
- Udacity: A 10-week course that starts at the very beginning and goes through regression and clustering models.
The right set of books can be all that you need to learn, and they provide a level of educational synergy when paired with online course. Here are the best machine learning books:
- Introduction to Machine Learning with Python (2016) by Müller and Guido: This is a course in the form of a book, and it takes you step-by-step through machine learning.
- Python Machine Learning (2017) by Raschka and Mirjalili: This is a more advanced, application-focused introduction.
- Fundamentals of Deep Learning (2017) by Nikhil Buduma: This is a more advanced book that starts with neural networks.
- Hands-On Machine Learning with Scikit-Learn and TensorFlow (2017) by Aurélien Géron: This book deals with advanced coding with machine learning and neural network libraries.
- Machine Learning (2019) by Steven Samelson: A high-level introduction to machine learning, this book goes well with other, more detailed reads.
There is a very active machine learning community online. Whether you’re just starting out or have years of experience, these are great places to continue learning, ask questions, and converse with members of the same field.
- StackOverflow: The "machine learning" tagged posts cover everything related to the industry, including beginner questions.
- Machine Learning Subreddit: This is a good place to ask advanced and project-oriented questions.
- Cross Validated: This is a more general, statistics-oriented forum on StackExchange.
- Quora: Go here to read through general machine learning Q&A posts—and ask and answer any questions you may have.
Machine learning is extremely powerful but not too difficult to learn as long as you’re committed and have a systematic approach. Use the resources we've discussed above to get started with your career or to continue learning about this exciting field.
Are you a great machine learning engineer? Sign up with YOSS to greatly expand your job opportunities.
Subscribe to the YOSS blog for more content on the Future of Work!