Skip to content
Last Dictionary

algorithm

nounAlso: algorithmic, the algorithm

In plain wordsA precise, step-by-step procedure for solving a problem or doing a task, like a recipe a computer can follow. In the news, 'the algorithm' often means software that ranks what you see online.

  1. 1

    Computer science

    A procedure specified precisely enough to be carried out mechanically, step by step, that takes inputs, produces outputs and halts after finitely many steps: for example a sorting routine or gradient descentgradient descent, n.: A method for training models by repeatedly nudging every setting a small step in whichever direction most reduces the error, like a hiker who cannot see the valley but keeps stepping wherever the ground tilts down.. Algorithms are analyzed for correctness and for how their time and memory costs grow with input size. In machine learningmachine learning, n.: A way of building software that learns from examples instead of following rules written by a programmer. Shown thousands of labeled photos, for instance, a program can learn to recognize cats. it helps to separate the learning algorithm (the procedure that fits a model, such as backpropagationbackpropagation, n.: The method neural networks use to learn from mistakes: it works backward from the error to figure out how much each internal connection contributed, so every connection can be adjusted in the right direction. with an optimizer) from the resulting modelmodel, n.: A simplified working version of something. In AI it usually means the trained program, a big set of learned numbers, that takes an input and produces an answer, prediction or piece of content. (the learned function), whose behavior no programmer wrote down step by step.

    The training algorithm is twenty lines of code; the model it produces has 70 billion parameters.

  2. 2

    Society and mediainformal

    Loosely, an automated system that makes or shapes decisions about people, such as ranking social-media feeds, setting prices or screening job applicants. This sense, often 'the algorithm', usually refers to a whole deployed system including its data and business rules, and is central to debates about algorithmic biasalgorithmic bias, n.: Unfairness in software that judges or serves people: it consistently produces worse results for some groups, such as women, older people or ethnic minorities, often because it learned from skewed or incomplete records., algorithmic accountabilityalgorithmic accountability, n.: The idea that the people and organizations behind automated decision systems must be able to explain and justify those systems' effects, answer for the harm they cause, and fix it. and engagement optimizationengagement optimization, n.: Designing apps and AI to keep people clicking, watching or chatting for as long as possible because that earns money, even when it is not what is good for them..

Origin

From the name of the 9th-century Persian scholar Muhammad ibn Musa al-Khwarizmi, whose treatise on Hindu–Arabic numerals circulated in Latin as 'Algoritmi de numero Indorum'. Medieval 'algorism' meant decimal arithmetic; the later spelling, influenced by Greek arithmos ('number'), acquired the general sense of a mechanical procedure, which Alan Turing and Alonzo Church formalized in 1936.

Usage note

Public debate often blames 'the algorithm' for outcomes that stem from data, design objectives or human policy. Distinguish an algorithm (a procedure) from a modelmodel, n.: A simplified working version of something. In AI it usually means the trained program, a big set of learned numbers, that takes an input and produces an answer, prediction or piece of content. (what a learning algorithm produces) and from an AI systemAI system, n.: A complete piece of technology that uses AI to do something, such as screening loan applications, driving a car or chatting with customers, including the AI model and the software around it..

Related

See also
  • modelmodel, n.: A simplified working version of something. In AI it usually means the trained program, a big set of learned numbers, that takes an input and produces an answer, prediction or piece of content.
  • machine learningmachine learning, n.: A way of building software that learns from examples instead of following rules written by a programmer. Shown thousands of labeled photos, for instance, a program can learn to recognize cats.
  • algorithmic biasalgorithmic bias, n.: Unfairness in software that judges or serves people: it consistently produces worse results for some groups, such as women, older people or ethnic minorities, often because it learned from skewed or incomplete records.
  • algorithmic accountabilityalgorithmic accountability, n.: The idea that the people and organizations behind automated decision systems must be able to explain and justify those systems' effects, answer for the harm they cause, and fix it.
  • heuristicheuristic, n.: A rule of thumb: a quick, usually good-enough way to make a decision or to estimate how close you are to a goal, without any guarantee of finding the best answer.
  • gradient descentgradient descent, n.: A method for training models by repeatedly nudging every setting a small step in whichever direction most reduces the error, like a hiker who cannot see the valley but keeps stepping wherever the ground tilts down.
  • algorithm aversionalgorithm aversion, n.: Losing faith in a computer's predictions after watching it slip up once or twice, and turning back to human judgment even though the machine remains the better forecaster.
Contrast with
  • modelmodel, n.: A simplified working version of something. In AI it usually means the trained program, a big set of learned numbers, that takes an input and produces an answer, prediction or piece of content.
  • heuristicheuristic, n.: A rule of thumb: a quick, usually good-enough way to make a decision or to estimate how close you are to a goal, without any guarantee of finding the best answer.

Sources

  1. Knuth, D. E. (1968). The Art of Computer Programming, Vol. 1: Fundamental Algorithms. Addison-Wesley.

Mentioned in

machine learningmachine learning, n.: A way of building software that learns from examples instead of following rules written by a programmer. Shown thousands of labeled photos, for instance, a program can learn to recognize cats., modelmodel, n.: A simplified working version of something. In AI it usually means the trained program, a big set of learned numbers, that takes an input and produces an answer, prediction or piece of content., Ada LovelaceAda Lovelace, prop. n.: A 19th-century English mathematician who published the first program written for a planned mechanical computer, and who argued that such a machine could only do what it was told., AI modelAI model, n.: The trained core of an AI: a large file of learned numbers plus the recipe for using them, which turns an input such as a question or a photo into an output.