Machine learning techniques enable computers to do things without being told explicitly how to do them.
The essence of machine learning is the ability for computers to learn by analyzing data or through its own experience.
Traditional Computing Rules:
If an image has 4 legs, fur, pointy ears and whiskers, label it as a cat.
Machine Learning Rules:
We give the computer 1000 cat pictures and 1000 pictures that are not cats. After analyzing these 2000 pictures, the computer will be able to tell if a picture contains a cat.
Advantages of Machine Learning
- Being able to analyze large quantities of data without being explicitly told what to look for
- Being able to understand texts (in large quantities and different languages)
- Being able to interpret images
- Being able to come up with creative solutions
- Being able to analyze and output a prediction fast
Machine Learning Training Techniques
Machine learning techniques are essentially methods to train a computer. A computer has to be trained before it can perform on its own.
There are 3 main types of training techniques – 1) Supervised Learning, 2) Unsupervised Learning and 3) Reinforcement Learning
We train our computers with data that is labelled correctly.
The above cat example uses a supervised training method. The computer analyzes the labelled cat data and creates a set of rules on its own to decide what defines a cat.
The computer is given a set of data without labels, and it has to make sense of it.
Unsupervised learning is mainly used to find patterns and common traits between the data points.
For instance, a computer is given 1000 unlabeled pictures of horses and 1000 unlabeled pictures of dogs. It is then tasked to divide the pictures into 2 piles.
The computer is told what its objective is, then tries to figure out the best way to achieve it.
For example, we are trying to teach a robot with 2 legs to walk. The robot uses reinforcement learning to walk in many different ways until it finds the optimal way to move.
In 2019, Google’s DeepMind developed AlphaStar (a computer trained using reinforcement learning), a Starcraft 2 gaming robot. This robot defeated one of the world’s top Starcraft 2 players.
The common programming languages used to code machine learning techniques are:
Difference between Machine Learning (ML) and Artificial Intelligence (AI)
AI is a broad concept that covers the idea that machines can do tasks and behave in ways that we consider are smart and independent.
ML is concerned with getting machines to improve and learning through data or experience.
Examples of Machine Learning Use Cases
- ML enables your email system to differentiate spam and legitimate emails
- ML enables a computer to recognize your voice and understand your commands
- ML enables your surveillance cameras to recognize millions of faces a day
- ML helps social media companies identify what your likes and dislikes are
Examples of Popular ML Training Techniques/Algorithms
- Naïve Bayes Classifier Algorithm
- K Means Clustering Algorithm
- Support Vector Machine Algorithm
- Apriori Algorithm
- Linear Regression
- Logistic Regression
- Artificial Neural Networks
- Random Forests
- Decision Trees
- K Nearest Neighbors
- Convolution Neural Network
- Recurrent Neural Network
Links to Complicated Explanations
- Algorithmic Trading Strategies
- Deep Learning