Major Types of Machine Learning Models
Machine Learning is termed as automatically learning for a task
without explicitly making it to do so. You can use machine
learning to take current and past data to make predictions about
future data. This has many real-world applications from anything
like recommending movies to watch to identifying types cancer
cells. The process of creating a machine learning model can be
complex, and must be done in a way that works for the particular
problem it is meant to deal with.
Where there is the data, machine learning can be used to solve a
problem, present insights, or what else you have in mind for it be
used for. However, for machine learning models, not just one kind
of algorithm can be applied to all cases. There are different classes
of algorithms designed for handling different data and solving
different problems with different approaches. The inputs
provided, the task performed, and the outputs obtained for each
class are quite different.
The major types of machine learning models can be broadly
categorized as follows:
Supervised Learning
Unsupervised Learning
Reinforcement Learning
Supervised Learning
To understand supervised learning algorithms, first consider the
following example:
Suppose that there are two ships, ships A and B, and both of them
are carrying a large number of cars. On ship A, the cars have all
been labelled in a database, however on ship B, they haven’t. Now
consider that it’s someone’s job to identify each car on the ship B
and label them in the database. The solution is that he can do this
is to develop a model based on ship A’s data and then apply it to
ship B’s data. For example, from ship A, he learns that cars with
four wheels and more than four seats are SUVs. He can tell the
model to use this information to identify such cars as SUVs on
ship B.
This model is what supervised learning is in a nutshell. It is a type
of machine learning that find a solution for the present problem
based on data that you already have.
To put it more technically, supervised learning is a type of
machine learning algorithm in which a model or a function is
developed based on input-output pairs in the training data to map
the input from the test data to their respective output. In this,
training data, also known as the training dataset, is a data bank of
labeled data, and the test data, or the testing dataset, is the set of
inputs with no labels. From this, one thing we can notice is that
supervised learning can be defined as a type of machine learning
that necessarily has a teacher, technically speaking training data.
Supervised learning can be further divided into two subtypes:
regression and classification supervised learning. Regression
refers to a model of supervised learning where all data is
numerical (or continuous) values. In contrast, classification
models use categorical values, which are usually binary values (0
or 1).
Two major problems in supervised learnings are:
Bias-variance tradeoff: These models are baked with biases and
variance parameters, which can lead to problems. Biases can
cause errors in the results because they are based on
assumptions about the data, rather than the data itself.
Variance, especially high variance can cause models to perform
well on training data but poor on testing data.
Noise in the data: Errors in the data can result in some
inconsistency in data.
Supervised learning algorithms that are widely used and include
the following:
Support Vector Machines
linear regression
logistic regression
naive Bayes
linear discriminant analysis
decision trees
k-nearest neighbor algorithm
Neural Networks (Multilayer perceptron)
Similarity learning
Unsupervised Learning
To learning understand unsupervised learning algorithms,
consider the following example:
Consider that instead of two ships, ships A and B, there is only but
one ship which is carrying several types of fruit, but you do not
know the types of fruit that it carries. The solution to this problem
is to divide the fruits on the ship into groups based on their
physical attributes. For example, you can first divide by color, then
by size, then shape, so on and so forth. This is essentially how
unsupervised learning models work.
To put it more technically, unsupervised learning is a type
of machine learning that uses inferences drawn about a dataset
that is devoid of labels. The most common type of unsupervised
learning is clustering which can be defined as the mechanism
where hidden patterns or groupings in data are found during the
process of exploratory data analysis. In other words, unsupervised
learning algorithms can be thought of as a model that learns from
the test data itself rather than one that learns from a teacher, or
training data.
Some of the most common algorithms that use an unsupervised
learning model are:
Clustering Models
Hierarchical Clustering
K-means
Mixture Models
DBSCAN
OPTICS Algorithms
Anomaly Detection Models
Local Outlier Factor (LOF)
Neural Network Models
Autoencoders
Deep Belief Nets
Hebbian Learning
Generative Adversarial Networks
Reinforcement Learning
Reinforcement learning models are very similar to how someone
trains a dog. That is, the way you train a dog is you give it a treat
whenever it performs a target task. In these algorithms, the dog is
represented by an agent, and the doggie treat represents the
reward. Next, there is the action or the target task you want the
dog to perform. Next, two important elements are the
enrvironment and the interpreter. They can be understood at the
are where the dog performs the target tasks and the person who
commands and rewards the dog with treats, respectively.
Technically speaking, reinforcement learning algorithms can be
explained as the type of machine learning model where tasks are
performed by an agent in a particular environment. In this model,
the agent either receives a reward or punishment for each task
performed. As the name suggests, it is a process of continuous
improvements based on some rules. Unlike other machine
learning approaches the algorithm is not told how to perform a
task but learns by itself.
Reinforcement learning models require a lot of data and therefore
work where data is readily available such as in gameplay and
robotics scenarios. Reinforcement learning has been applied to
board games, such as backgammon, checkers, and chess. The
results of reinforcement learning models can be tested by testing
the teaching efficient of the agent against a human being.
Some important reinforcement learning algorithms are:
Monte Carlo
Q-Learning
State Action Reward State Action (SARSA)
Deep Q Network (DQN)
Asynchronous Actor-Critic Agent (A3C)
Deep Deterministic Policy Gradient (DDPG)
NAF
Summary
Machine learning can be divided into three major types, which are
supervised learning, unsupervised learning, and reinforcement
learning. For supervised learning models, the labels of test data
can be predicted by training a model based on the labels of
training data. Supervised learning models can be subdivided into
regression and classification models based on the data type used.
Unsupervised learning models require that we find hidden
patterns and groupings in the data without the help of training
data. Last, reinforcement learning models can be defined as
involving an agent that performs tasks in an environment based
on rewards.