Markov model

From Wikipedia, the free encyclopedia
Jump to: navigation, search

In probability theory, a Markov model is a stochastic model used to model randomly changing systems where it is assumed that future states depend only on the current state not on the events that occurred before it (that is, it assumes the Markov property). Generally, this assumption enables reasoning and computation with the model that would otherwise be intractable.


There are four common Markov models used in different situations, depending on whether every sequential state is observable or not, and whether the system is to be adjusted on the basis of observations made:

Markov models
System state is fully observable System state is partially observable
System is autonomous Markov chain Hidden Markov model
System is controlled Markov decision process Partially observable Markov decision process

Markov chain[edit]

Main article: Markov chain

The simplest Markov model is the Markov chain. It models the state of a system with a random variable that changes through time. In this context, the Markov property suggests that the distribution for this variable depends only on the distribution of the previous state. An example use of a Markov chain is Markov Chain Monte Carlo, which uses the Markov property to prove that a particular method for performing a random walk will sample from the joint distribution of a system.

Hidden Markov model[edit]

Main article: Hidden Markov model

A hidden Markov model is a Markov chain for which the state is only partially observable. In other words, observations are related to the state of the system, but they are typically insufficient to precisely determine the state. Several well-known algorithms for hidden Markov models exist. For example, given a sequence of observations, the Viterbi algorithm will compute the most-likely corresponding sequence of states, the forward algorithm will compute the probability of the sequence of observations, and the Baum–Welch algorithm will estimate the starting probabilities, the transition function, and the observation function of a hidden Markov model.

One common use is for speech recognition, where the observed data is the speech audio waveform and the hidden state is the spoken text. In this example, the Viterbi algorithm finds the most likely sequence of spoken words given the speech audio.

Markov decision process[edit]

A Markov decision process is a Markov chain in which state transitions depend on the current state and an action vector that is applied to the system. Typically, a Markov decision process is used to compute a policy of actions that will maximize some utility with respect to expected rewards. It is closely related to Reinforcement learning, and can be solved with value iteration and related methods.

Partially observable Markov decision process[edit]

A partially observable Markov decision process (POMDP) is a Markov decision process in which the state of the system is only partially observed. POMDPs are known to be NP complete, but recent approximation techniques have made them useful for a variety of applications, such as controlling simple agents or robots.[1]

Markov random field[edit]

A Markov random field, or Markov network, may be considered to be a generalization of a Markov chain in multiple dimensions. In a Markov chain, state depends only on the previous state in time, whereas in a Markov random field, each state depends on its neighbors in any of multiple directions. A Markov random field may be visualized as a field or graph of random variables, where the distribution of each random variable depends on the neighboring variables with which it is connected. More specifically, the joint distribution for any random variable in the graph can be computed as the product of the "clique potentials" of all the cliques in the graph that contain that random variable. Modeling a problem as a Markov random field is useful because it implies that the joint distributions at each vertex in the graph may be computed in this manner.

Hierarchical Markov Models[edit]

Hierarchical Markov Models can be applied to categorize human behavior at various levels of abstraction. For example, a series of simple observations, such as a person's location in a room, can be interpreted to determine more complex information, such as in what task or activity the person is performing. Two kinds of Hierarchical Markov Models are the Hierarchical hidden Markov model[2] and the Abstract Hidden Markov Model.[3] Both have been used for behavior recognition.[4] and certain conditional independence properties between different levels of abstraction in the model allow for faster learning and inference [3] [5]

See also[edit]


  1. ^ Leslie Pack Kaelbling; Michael L Littman & Anthony R Cassandra (1998). "Planning and acting in partially observable stochastic domains" (Abstract + full article). Artificial Intelligence (Elsevier) 101 (1–2): 99–134. doi:10.1016/S0004-3702(98)00023-X. ISSN 0004-3702. Retrieved 26 March 2013. 
  2. ^ S. Fine and Y. Singer The hierarchical hidden markov model: Analysis and applications. Journal of Machine Learning, vol. 32, 1998.
  3. ^ a b H. H. Bui, S. Venkatesh, and G. West Policy recognition in the abstract hidden markov model. Journal of Artificial Intelligence Research, vol. 17, p. 451–499, 2002.
  4. ^ G. Theocharous Hierarchical Learning and Planning in Partially Observable Markov Decision Processes. PhD thesis, 2002.
  5. ^ S. Luhr, H. H. Bui, S. Venkatesh, and G. A. W. West Recognition of Human Activity through Hierarchical Stochastic Learning. PERCOM '03 Proceedings of the First IEEE International Conference on Pervasive Computing and Communications, 2003.