• Mike

What is Machine Learning

Updated: Mar 6

In order to understand machine learning you'll need to understand the machine learning hierarchy.


The umbrella for all things machine learning is artificial intelligence. Before defining AI take a look at a diagram of the hierarchy below. The top level container is Artificial Intelligence. Inside AI, is machine learning. Inside machine learning are deep learning models, often referred to as artificial neural networks and traditional models. Traditional models are those models that aren't deep learning models.


It's important to understand this hierarchy because it's one of the most basic conversations you can have about this space.

The difference between a artificial neural network and a deep learning models is the number of hidden layers. A deep learning model will have more than one hidden layer. I'll author a post about the technical minutia soon.


Each problem you're assigned will have models that do better than others in that space. Contrary to popular belief, most real world modeling isn't deep learning models. Most applied machine learning is done on highly structured datasets. A group of models that excel at highly structured datasets are called gradient boosters. These models live inside the traditional model space in the diagram.



Let's define artificial intelligence. While there are many definitions, Google’s is the most easily understood.


Google defines Artificial Intelligence as the intelligence exhibited by machines or software.

It is also the name of the academic field of study which studies how to create computers and computer software that are capable of intelligent behavior.


Within the AI umbrella are many sub-disciplines. The most famous of these disciplines is machine learning. It’s the most famous because most real-world data science is machine learning. Again, I believe Google’s definition of machine learning is spot on.


Google defines machine learning as the functionality that helps software perform a task without explicit programming or rules.

Within machine learning are two core types of algorithms or models. The first is deep learning. Deep learning is a form of machine learning that is loosely inspired by the structure of the human brain and is particularly effective in feature detection. You’ll often hear deep learning and artificial neural networks used as synonyms but there is a difference. The term artificial neural network has been around much longer.


A neural network passes data through interconnected layers of nodes, classifying information and characteristics of a layer before passing the results on to other nodes in subsequent layers.

The difference between a neural network and a deep learning network is contingent on the number of layers. A deep learning model has more hidden layers. The hidden layers' job is to transform the inputs into something that the output layer can use.


The next sub-discipline is another group of algorithms or models. These models are known as traditional models. With all the press deep learning models receive you might be tempted to believe that these traditional models are on the way out or aren’t used as often.


That simply isn’t the case. The model you choose often depends on the problem you are given. Deep learning models do excel at image and speech recognition. However, in the real-world, much of applied machine learning is based on highly structured data. When you think of highly structured data think of an excel spreadsheet or table in a relational database. There is a group of models known as gradient boosters that can be more effective on highly structured datasets than deep learning models are. XGBoost is a gradient booster.


In this post you learned about the AI Hierarchy. Artificial Intelligence and machine learning were defined. I'd recommend you write these down. These are excellent ice breakers for interviews. If you can't define machine learning then you certainly can't build production ready models. This could also be a great white boarding opportunity. If you are asked to define artificial intelligence then this post is all you'll need to communicate to them.


Start learning Python now!!