A simple Bayesian network, with the associated conditional
probability tables
Expectation–maximization clustering of Old
Faithful eruption data starts from a random
guess but then successfully converges on
an accurate clustering of the two physically
distinct modes of eruption.
Bayesian networks[92] are a tool that can
be used for reasoning (using the Bayesian
inference algorithm),[g][94] learning (using
the expectation–maximization
algorithm),[h][96] planning (using decision
networks)[97] and perception (using
dynamic Bayesian networks).[90]
Probabilistic algorithms can also be used
for filtering, prediction, smoothing, and
finding explanations for streams of data,
thus helping perception systems analyze
processes that occur over time (e.g., hidden
Markov models or Kalman filters).[90]
The simplest AI applications can be divided into two types:
classifiers (e.g., "if shiny then diamond"), on one hand, and
controllers (e.g., "if diamond then pick up"), on the other
hand. Classifiers[98] are functions that use pattern matching
to determine the closest match. They can be fine-tuned
based on chosen examples using supervised learning. Each
pattern (also called an "observation") is labeled with a
certain predefined class. All the observations combined with
their class labels are known as a data set. When a new
observation is received, that observation is classified based
on previous experience.[45]
There are many kinds of classifiers in use.[99] The decision
tree is the simplest and most widely used symbolic machine
learning algorithm.[100] K-nearest neighbor algorithm was
the most widely used analogical AI until the mid-1990s, and Kernel methods such as the support vector
machine (SVM) displaced k-nearest neighbor in the 1990s.[101] The naive Bayes classifier is reportedly
the "most widely used learner"[102] at Google, due in part to its scalability.[103] Neural networks are also
used as classifiers.[104]
An artificial neural network is based on a collection of nodes also known as artificial neurons, which
loosely model the neurons in a biological brain. It is trained to recognise patterns; once trained, it can
recognise those patterns in fresh data. There is an input, at least one hidden layer of nodes and an output.
Each node applies a function and once the weight crosses its specified threshold, the data is transmitted to
the next layer. A network is typically called a deep neural network if it has at least 2 hidden layers.[104]
Classifiers and statistical learning methods
Artificial neural networks