Posts tagged Support Vector Machines

Machine Learning: A Brief Introduction

Whether it be through search, voice assistant, or spam filtering, the vast majority of people with an internet connection have interacted in some way with Artificial Intelligence. In fact, many leaders in the tech industry – including Elon Musk and others –  have expressed their concerns about the negative consequences of AI. 

In order to truly understand what AI is, let’s start by defining it. Merriam Webster defines AI as the capability of a machine to imitate intelligent human behavior. That manifests itself in an infinite number of ways, including everything from spam detection, self-driving cars, agriculture, to cancer research. 

Today, the most prominent region in AI is Machine Learning (ML). Machine Learning provides systems the ability to automatically learn and improve from experience without being explicitly programmed. In essence, Machine Learning allows machines to ‘learn’ from previous examples. 

With this type of approach, there are many types of problems we can tackle, one of which is classification. Imagine we needed to tell whether a fruit was an apple or an orange exclusively based on its relative bumpy-ness and its weight. 

We would start by plotting several examples of apples and oranges on a graph, with one axis for bumpy-ness and one axis for weight.

Given the relative bumpy-ness and weight of fruit, there are multiple ways we could assume the identity of the fruit. 

The simplest of the methods is called K-Nearest Neighbor; we would compute the closest fruit to the mystery fruit, (ie: using the Pythagorean distance) and assume that it belongs in the same category. Another method is the Logistic Regression; this is were a decision boundary is drawn and the fruit classified based on the boundary line. 

In the figure above we can see that in both cases (since the mystery fruit is both below the decision boundary and closest to an apple) it is fairly evident that the mystery fruit is most likely an apple. 

There are many other ways to solve this problem, including Support Vector Machines, decision trees, and similar algorithms.

In my next post, I hope to discuss what is considered the most successful of Machine Learning Algorithms: Deep Neural Networks aka Deep Learning.