# Machine Learning Paradigms: Supervised, Unsupervised, and Reinforcement Learning

Machine learning can be applied to almost any problem, and it has been used to detect cancer, predict traffic patterns, match people up for dating, recognize faces (and facial expressions), caption images, and much, much more. Depending on the unique problem at hand, different machine learning techniques are used to deliver an effective solution.

Below, we will discuss the three primary methods of machine learning, what they are used for, and how they work. The three main paradigms in machine learning include *supervised learning*, *unsupervised learning*, and *reinforcement learning.*

**Learn More About Machine Learning Terminology and Notation**

## Supervised Machine Learning Algorithms

Broadly speaking, we utilize machine learning to determine an unknown function (*f*) by analyzing a specific set of data (*D*). In supervised learning, the example data set contains both input and output values. This means it is in the form:

*D* = { (x_{1}, *y _{1}*), (x

_{2},

*y*), …, (x

_{2}_{N},

*y*) }

_{N}Since we have the *y _{n}* values (the output), our learning algorithm is tasked with finding the best approximate function (

*g*) out of a group of potential functions within the hypothesis space (

*H*). The algorithm searches for

*g*∈

*H*that:

- Minimizes discrepancies between known
*g*(x_{n}) and*y*_{n} - Gives a good approximation of
*y*for data points x that are not part of the example set

Supervised learning is what most people understand machine learning to be, but machine learning can be applied to many other types of problems.

## Unsupervised Machine Learning Algorithms

When outputs do not exist within the example data, unsupervised learning techniques are used. Without outputs, the data set is in this form:

*D* = { x_{1}, x_{2}, …, x_{N }}

Since we do not have *y _{n}* values, it’s harder to find a suitable approximation for

*f*because we have no data about how the function

*f*behaves. In cases like this, machine learning can be used to determine a

*g*that finds nuanced patterns or trends in the data instead. For example, an unsupervised learning algorithm could look at population data to segment people into smaller groups that could be targeted with more relevant advertising, sent information about a program or benefits they could be eligible for, etc.

*f* could also be a function that distinguishes data points in some way. For example, *f* could detect anomalies in a data stream. If machine learning can find a *g* that somehow clusters the data, certain clusters could be designated as “good” and some could be “bad.” Then, given a new, arbitrary data point x, our approximate function could determine whether it’s likely to belong to a good cluster or a bad cluster.

Sometimes spotting patterns and/or clustering our data can help with supervised learning algorithm processing. The unsupervised learning algorithm can pre-process data so that subsequent analysis by a supervised learning algorithm will have a better chance of success. This technique is used in *Radial Basis Functions* (RBF), *RBF Networks*, and other applications*.*

But what if we don’t have *any* inputs or outputs? This is where reinforcement learning methods come in.

## Reinforcement Machine Learning Algorithms

Reinforcement learning approaches are used when we don’t even have an example set to begin with. Instead, our learning algorithm must construct *D* based on some set of rules. Then an iterative process is used to improve (or “reinforce”) *D* and the choice of *g* until *g* is good enough to meet our needs.

A well-known example of reinforcement learning is having computers learn to play zero-sum games such as chess, go, or backgammon. To come up with a chess-playing system, we would start with *D* being the set of all legal chess moves in a given position. As a first attempt (*g _{0}*), the machine learning algorithm would simply pick a legal move at random throughout the game.

The computer could then play millions of games against itself using this *g _{0}*. Based on whether the side to move ends up winning or losing a game, it can create an improved data set that labels each legal move with whether or not it ultimately resulted in a win. It can then use this updated

*D*to produce

*g*. And

_{1}*g*should be marginally better at playing chess than the pick-a-random-move

_{1}*g*version.

_{0}*D* can be improved again using the results of millions of games that *g _{1}* plays against itself to produce

*g*, and

_{2}*g*should play chess marginally better than

_{2}*g*. Continuing in this way, after many thousands of iterations, we’ll eventually get a

_{1}*g*that can play pretty good chess.

**Related Service: **Microsoft Dynamics AX Application Health Manager

## Stratus Innovations Group Can Put Machine Learning to Use for Your Business

Machine learning is mathematics-intensive, drawing from linear algebra, vector calculus, probability, and statistics to come up with useful algorithms and techniques. But it’s not all just theoretical.

At Stratus Innovations Group, our machine learning experts have years of experience applying complex math and programming to an incredibly diverse range of real business problems. Whether you’re trying to integrate your business IoT devices, protect your data, or develop custom applications for your organization, the experts at Stratus Innovations Group can help.

Call 844-561-6721 or fill out a quick contact form to let us know what you need help with. Our singular focus and purpose is helping your business become more profitable and efficient. We look forward to helping you bring the power of machine learning and cloud computing to your organization!