# Difference Between Algorithm and Model in Machine Learning

Machine learning involves the use of machine learning algorithms and models .
For beginners, this is very confusing as often “ machine learning algorithm ” is used interchangeably with “ machine learning model .” Are they the same thing or something different?
As a developer, your intuition with “ algorithms ” like sort algorithms and search algorithms will help to clear up this confusion.
In this post, you will discover the difference between machine learning “ algorithms ” and “ models .”
After reading this post, you will know:

Machine learning algorithms are procedures that are implemented in code and are run on data.
Machine learning models are output by algorithms and are comprised of model data and a prediction algorithm.
Machine learning algorithms provide a type of automatic programming where machine learning models represent the program.

Let’s get started.

Difference Between Algorithm and Model in Machine Learning Photo by Adam Bautz , some rights reserved.

Overview
This tutorial is divided into four parts; they are:

What Is an Algorithm in Machine Learning
What Is a Model in Machine Learning
Algorithm vs. Model Framework
Machine Learning Is Automatic Programming

What Is an “ Algorithm ” in Machine Learning
An “ algorithm ” in machine learning is a procedure that is run on data to create a machine learning “ model .”
Machine learning algorithms perform “ pattern recognition .” Algorithms “ learn ” from data, or are “ fit ” on a dataset.
There are many machine learning algorithms.
For example, we have algorithms for classification, such as k-nearest neighbors. We have algorithms for regression, such as linear regression, and we have algorithms for clustering, such as k-means.
Examples of machine learning algorithms:

Linear Regression
Logistic Regression
Decision Tree
Artificial Neural Network
k-Nearest Neighbors
k-Means

You can think of a machine learning algorithm like any other algorithm in computer science.
For example, some other types of algorithms you might be familiar with include bubble sort for sorting data and best-first for searching.
As such, machine learning algorithms have a number of properties:

Machine learning algorithms can be described using math and pseudocode.
The efficiency of machine learning algorithms can be analyzed and described.
Machine learning algorithms can be implemented with any one of a range of modern programming languages.

For example, you may see machine learning algorithms described with pseudocode or linear algebra in research papers and textbooks. You may see the computational efficiency of a specific machine learning algorithm compared to another specific algorithm. 