Tutorials References Exercises Menu
Paid Courses

Artificial Intelligence

Machine Learning (ML)

  • Supervised Machine Learning
  • Unsupervised Machine Learning

Classical programming uses programs (algorithms) to create results:

Traditional Computing

Data + Computer Algorithm = Result

Machine Learning uses results to create programs (algorithms):

Machine Learning

Data + Result = Computer Algorithm


Machine Learning

Machine Learning is often considered equivalent with Artificial Intelligence.

This is not correct. Machine learning is a subset of Artificial Intelligence.

Machine Learning is a discipline of AI that uses data to teach machines.

"Machine Learning is a field of study that gives computers the ability to learn without being programmed."

Arthur Samuel (1959)


Supervised Learning

Supervised learning uses labeled data (data with known answers) to train algoritms to:

  • Classify Data
  • Predict Outcomes

Supervised learning can classify data like "What is spam in an e-mail", based on known spam examples.

Supervised learning can predict outcomes like like predicting what kind of video you like, based on videos you have played.


Unsupervised Learning

Unsupervised learning is used to predict undefined relationships like meaningful patterns in data.

It is about creating computer algorithms than can improve themselves.

It is expected that machine learning will shift to unsupervised learning to allow programmers to solve problems without creating models.


Self-Supervised Learning

Self-supervised learning is similar to unsupervised learning because both work with data without human added labels.

The difference is that unsupervised learning uses clustering, grouping, and dimensionality reduction, while self-supervised learning draw its own conclusions for regression and classification tasks.


Machine Learning Terminology

Key Machine Learning terminologies are:

  • Labels
  • Features
  • Models
  • Training
  • Inference

Relationships

Machine learning systems uses Relationships between Inputs to produce Predictions.

In algebra, a relationship is often written as y = ax + b:

  • y is the label we want to predict
  • a is the slope of the line
  • x are the input values
  • b is the intercept

With ML, a relationship is written as y = b + wx:

  • y is the label we want to predict
  • w is the weight (the slope)
  • x are the features (input values)
  • b is the intercept

Machine Learning Labels

In Machine Learning terminology, the label is the thing we want to predict.

It is like the y in a linear graph:

Algebra Machine Learning
y = ax + b y = b + wx

Machine Learning Features

In Machine Learning terminology, the features are the input.

They are like the x values in a linear graph:

Algebra Machine Learning
y = ax + b y = b + wx

Sometimes there can be many features (input values) with different weights:

y = b + w1x1 + w2x2 + w3x3 + w4x4


Machine Learning Models

A Model defines the relationship between the label (y) and the features (x).

There are three phases in the life of a model:

  • Data Collection
  • Training
  • Inference

Machine Learning Training

The goal of training is to create a model that can answer a question. Like what is the expected price for a house?


Machine Learning Inference

Inference is when the trained model is used to infer (predict) values using live data. Like putting the model into production.