# Bayesian network

*34,142*pages on

this wiki

## Redirected from Bayesian networks

Assessment |
Biopsychology |
Comparative |
Cognitive |
Developmental |
Language |
Individual differences |
Personality |
Philosophy |
Social |

Methods |
Statistics |
Clinical |
Educational |
Industrial |
Professional items |
World psychology |

**Statistics:**
Scientific method ·
Research methods ·
Experimental design ·
Undergraduate statistics courses ·
Statistical tests ·
Game theory ·
Decision theory

A **Bayesian network** (or a **belief network**) is a probabilistic graphical model that represents a set of variables and their probabilistic independencies. For example, a Bayesian network could represent the probabilistic relationships between diseases and symptoms. Given symptoms, the network can be used to compute the probabilities of the presence of various diseases. The term "Bayesian networks" was coined by Pearl (1985) to emphasize three aspects:

- The often subjective nature of the input information.
- The reliance on Bayes's conditioning as the basis for updating information.
- The distinction between causal and evidential modes of reasoning, which underscores Thomas Bayes's posthumous paper of 1763.
^{[1]}

Formally, Bayesian networks are directed acyclic graphs whose nodes represent variables, and whose arcs encode conditional independencies between the variables. Nodes can represent any kind of variable, be it a measured parameter, a latent variable or a hypothesis. They are not restricted to representing random variables, which represents another "Bayesian" aspect of a Bayesian network. Efficient algorithms exist that perform inference and learning in Bayesian networks. Bayesian networks that model sequences of variables (such as for example speech signals or protein sequences) are called dynamic Bayesian networks. Generalizations of Bayesian networks that can represent and solve decision problems under uncertainty are called influence diagrams.

## Contents

[show]## Definitions and conceptsEdit

If there is an arc from node *A* to another node *B*, *A* is called a *parent* of *B*, and *B* is a *child* of *A*. The set of parent nodes of a node *X*_{i} is denoted by parents(*X*_{i}). A directed acyclic graph is a Bayesian Network relative to a set of variables if the joint distribution of the node values can be written as the product of the local distributions of each node and its parents:

If node has no parents, its local probability distribution is said to be *unconditional*, otherwise it is *conditional*. If the value of a node is *observed*, then the node is said to be an *evidence* node.

### Independencies and *d*-separationEdit

The graph encodes independencies between variables. Conditional independence can be determined by the graphical property of ** d-separation**. If two sets of nodes

*X*and

*Y*are

*d*-separated in the graph by a third set

*Z*, then the corresponding variable sets

*X*and

*Y*are independent given the variables in

*Z*. The minimal set of nodes which

*d*-separates node

*X*from all other nodes is given by

*X*s Markov blanket.

A path p (allowing paths that are not directed) is said to be d-separated (or blocked) by a set of nodes Z if and only if one of the following holds:

- p contains a
*chain*i -> m -> j such that the middle node m is in Z, - p contains a
*fork*i <- m -> j such that the middle node m is in Z, - p contains an
*inverted fork*(or*collider*) i -> m <- j such that the middle node m is not in Z and no descendant of m is in Z.

A set Z is said to d-separate x from y in a directed acyclic graph G if all paths from x to y in G are d-separated by Z. The 'd' in d-separation stands for 'directional', since the behavior of a three node link on a path depends on the direction of the arrows in the link.

Two nodes are (unconditionally) independent if the two nodes have no common ancestors (since this is equivalent to saying all paths between these nodes contain at least one *collider*, which is equivalent to saying that the two nodes are d-separated by the empty set).

### Causal Bayesian networksEdit

A Bayesian network is a carrier of the conditional independencies of a set of variables, not of their causal connections. However, causal relations can be modelled by the closely related causal Bayesian network. The additional semantics of the causal Bayesian networks specify that if a node *X* is actively caused to be in a given state *x* (an operation written as *do(x)*), then the probability density function changes to the one of the network obtained by cutting the links from *X'*s parents to *X*, and setting *X* to the caused value *x* (Pearl, 2000). Using this semantics, one can predict the impact of external interventions from data obtained prior to intervention.

## Example Edit

Suppose that there are two reasons which could cause grass to be wet: either the sprinkler is on or it's raining. Also, suppose that the rain has a direct effect on the use of the sprinkler (namely that when it rains, the sprinkler is usually not turned on.) Then the situation can be modelled with the adjacent Bayesian network. All three variables have two possible values T (for true) and F (for false).

The joint probability function is:

where the names of the variables have been abbreviated to *G = Grass wet*, *S = Sprinkler*, and *R = Rain*.

The model can answer questions like "What is the likelihood that it is raining, given the grass is wet?" by using the conditional probability formula and summing over all nuisance variables:

As in the example numerator is pointed out explicitly, the joint probability function is used to calculate each iteration of the summation function. In the numerator marginalizing over and in the denominator marginalizing over and .

If, on the other hand, we wish to answer an interventional question: "What is the likelihood that it would rain, given that we wet the grass?" the answer would be governed by the post-intervention joint distribution function obtained by removing the factor from the pre-intervention distribution. As expected, the likelihood of rain is unaffected by the action: .

Using a Bayesian network can save considerable amounts of memory, if the dependencies in the joint distribution are sparse. For example, a naive way of storing the conditional probabilities of 10 two-valued variables as a table requires storage space for values. If the local distributions of no variable depends on more than 3 parent variables, the Bayesian network representation only needs to store at most values.

One advantage of Bayesian networks is that it is intuitively easier for a human to understand (a sparse set of) direct dependencies and local distributions than complete joint distribution.

## Inference Edit

Because a Bayesian network is a complete model for the variables and their relationships, it can be used to answer probabilistic queries about them. For example, the network can be used to find out updated knowledge of the state of a subset of variables when other variables (the *evidence* variables) are observed. This process of computing the *posterior* distribution of variables given evidence is called probabilistic inference. The posterior gives a universal sufficient statistic for detection applications, when one wants to choose values for the variable subset which minimize some expected loss function, for instance the probability of decision error. A Bayesian network can thus be considered a mechanism for automatically applying Bayes' theorem to complex problems.

The most common exact inference methods are variable elimination, which eliminates (by integration or summation) the non-observed non-query variables one by one by distributing the sum over the product; clique tree propagation, which caches the computation so that many variables can be queried at one time and new evidence can be propagated quickly; and recursive conditioning, which allows for a space-time tradeoff and matches the efficiency of variable elimination when enough space is used. All of these methods have complexity that is exponential in the network's treewidth. The most common approximate inference algorithms are stochastic MCMC simulation, mini-bucket elimination which generalizes loopy belief propagation, and variational methods.

## Parameter learning Edit

In order to fully specify the Bayesian network and thus fully represent the joint probability distribution, it is necessary to specify for each node *X* the probability distribution for *X* conditional upon *X'*s parents. The distribution of *X* conditional upon its parents may have any form. It is common to work with discrete or Gaussian distributions since that simplifies calculations. Sometimes only constraints on a distribution are known; one can then use the principle of maximum entropy to determine a single distribution, the one with the greatest entropy given the constraints. (Analogously, in the specific context of a dynamic Bayesian network, one commonly specifies the conditional distribution for the hidden state's temporal evolution to maximize the entropy rate of the implied stochastic process.)

Often these conditional distributions include parameters which are unknown and must be estimated from data, sometimes using the maximum likelihood approach. Direct maximization of the likelihood (or of the posterior probability) is often complex when there are unobserved variables. A classical approach to this problem is the expectation-maximization algorithm which alternates computing expected values of the unobserved variables conditional on observed data, with maximizing the complete likelihood (or posterior) assuming that previously computed expected values are correct. Under mild regularity conditions this process converges on maximum likelihood (or maximum posterior) values for parameters. A more fully Bayesian approach to parameters is to treat parameters as additional unobserved variables and to compute a full posterior distribution over all nodes conditional upon observed data, then to integrate out the parameters. This approach can be expensive and lead to large dimension models, so in practise classical parameter-setting approaches are more common.

## Structure learning Edit

In the simplest case, a Bayesian network is specified by an expert and is then used to perform inference. In other applications the task of defining the network is too complex for humans. In this case the network structure and the parameters of the local distributions must be learned from data.

Learning the structure of a Bayesian network (i.e., the graph) is a challenge pursued within machine learning. The basic idea goes back to a recovery algorithm
developed by Rebane and Pearl (1987)^{[2]} and rests
on the distinction between the three possible types of
adjacent triplets allowed in a directed acyclic graph (DAG):

Type 1 and type 2 represent the same dependencies (i.e., and are independent given ) and are, therefore, indistinguishable. Type 3, however, can be uniquely identified, since and are marginally independent and all other pairs are dependent. Thus, while the *skeletons* (the graphs stripped of arrows) of these three triplets are identical, the directionality of the arrows is partially identifiable. The same distinction applies when and have common parents, except that one must first condition on those parents. Algorithms have been developed to systematically determine the skeleton of the underlying graph and, then, orient all arrows whose directionality is dictated by the conditional independencies observed.^{[3]}^{[4]}^{[5]}^{[6]}

An alternative method of structural learning uses optimization based search. It requires a scoring function and a search strategy. A common scoring function is posterior probability of the structure given the training data. The time requirement of an exhaustive search returning back a structure that maximizes the score is superexponential in the number of variables. A local search strategy makes incremental changes aimed at improving the score of the structure. A global search algorithm like Markov chain Monte Carlo can avoid getting trapped in local minima. Friedman et al.^{[How to reference and link to summary or text]} talk about using mutual information between variables and finding a structure that maximizes this. They do this by restricting the parent candidate set to *k* nodes and exhaustively searching therein.

## Applications Edit

Bayesian networks are used for modelling knowledge in bioinformatics (gene regulatory networks, protein structure), medicine, document classification, image processing, data fusion, decision support systems,^{[How to reference and link to summary or text]} engineering^{[7]} and law^{[8]}^{[7]}.

## History Edit

Informal variants of such networks were first used by legal scholar John Henry Wigmore, in the form of Wigmore charts, to analyse trial evidence in 1913.^{[9]} Another variant, called path diagrams was developed by the geneticist Sewall Wright^{[10]} and used in social and
behavioral sciences (mostly with linear parametric models).

## See alsoEdit

## External links Edit

- Tutorial on Learning with Bayesian Networks: http://research.microsoft.com/research/pubs/view.aspx?msr_tr_id=MSR-TR-95-06
- Association for Uncertainty in Artificial Intelligence: http://www.auai.org/
- Intro to Bayesian networks: http://www.niedermayer.ca/papers/bayesian/bayes.html
- On-line Tutorial on Bayesian nets and probability: http://www.dcs.qmw.ac.uk/%7Enorman/BBNs/BBNs.htm

**Software**

**Free and open source software**

- dlib C++ Library: http://dclib.sourceforge.net/
- Kevin Murphy's Bayesian Network Toolbox for MatLab: http://bnt.sourceforge.net/
- GeNIe & SMILE: http://genie.sis.pitt.edu
- OpenBayes: http://www.openbayes.org
- RISO: http://sourceforge.net/projects/riso/ (distributed belief networks)
- BANSY3 - Freeware. From the Non Linear Dynamics Laboratory. Mathematics Department, Science School, UNAM.
- SamIam: http://reasoning.cs.ucla.edu/samiam
- Ace, the Bayesian network compiler: http://reasoning.cs.ucla.edu/ace
- BN4R: http://bn4r.rubyforge.org/
- JavaBayes, Bayesian Networks in Java: http://www.pmr.poli.usp.br/ltd/Software/javabayes/

**Commercial software**

- AgenaRisk Bayesian network tool: http://www.agenarisk.com
- BayesBuilder: http://www.snn.ru.nl/nijmegen/index.php3?page=31
- Bayesian network application library: http://www.norsys.com/netlibrary/index.htm
- Bayesia: http://www.bayesia.com
- Hugin: http://www.hugin.com
- Netica: http://www.norsys.com
- BNet: http://www.cra.com/bnet
- Dezide: http://www.dezide.com
- Promedas (Bayesian medical decision support): http://www.promedas.nl
- ProBayes: http://www.probayes.com
- MSBNx: a component-centric toolkit for modeling and inference with Bayesian Network (from Microsoft Research): http://research.microsoft.com/adapt/MSBNx/
- dVelox: http://www.aparasw.com/en/index.php?option=com_content&task=view&id=65&Itemid=102
- Causeway: http://www.inet.saic.com/

## References Edit

- ↑ Thomas Bayes (1763). An Essay towards solving a Problem in the Doctrine of Chances. By the late Rev. Mr. Bayes, F.R.S., communicated by Mr. Price, in a letter to John Canton, A.M., F.R.S..
*Philosophical Transactions of the Royal Society of London***53**: 370–418. - ↑ Rebane, G. and Pearl, J., "The Recovery of Causal Poly-trees from Statistical Data,"
*Proceedings, 3rd Workshop on Uncertainty in AI,*(Seattle, WA) pp. 222-228,1987 - ↑ Pearl, Judea (2000).
*Causality: Models, Reasoning, and Inference*, Cambridge University Press. - ↑ P. Spirtes and C. Glymour, "An algorithm for fast recovery of sparse causal graphs",
*Social Science Computer Review,*Vol. 9, pp. 62-72, 1991. - ↑ P. Spirtes, C. Glymour, and R. Scheines,
*Causation, Prediction, and Search,*New York: Springer-Verlag, 1993 - ↑ T. Verma and J. Pearl, "Equivalence and Synthesis of Causal Models,"
*Proceedings of the Sixth Conference on Uncertainty in Artificial Intelligence,*(July, Cambridge, MA), pp. 220-227, 1990. Reprinted in P. Bonissone, M. Henrion, L. N. Kanal and J. F. Lemmer (editors),*Uncertainty in Artificial Intelligence 6,*Amsterdam: Elsevier Science Publishers, B.V., pp. 225-268, 1991 - ↑
^{7.0}^{7.1}Davis (2003) - ↑ Kadane & Schum (1996)
- ↑ Kadane & Schum (1996) 66-76
- ↑ Wright, S. (1921) "Correlation and Causation,"
*Journal of Agricultural Research*, 20:557-585.

- I. Ben-Gal (2007), Bayesian Networks, in F. Ruggeri, R. Kenett, and F. Faltin (editors), Encyclopedia of Statistics in Quality and Reliability, John Wiley & Sons.
- Enrique Castillo, José Manuel Gutiérrez, and Ali S. Hadi (1997).
*Expert Systems and Probabilistic Network Models*. New York: Springer-Verlag. ISBN 0-387-94858-9 - G. A. Davis (2003). Bayesian reconstruction of traffic accidents.
*Law, Probability and Risk***2**: 69-89. - N. E. Fenton, and M. Neil, "Combining evidence in risk analysis using Bayesian Networks". https://www.dcs.qmul.ac.uk/~norman/papers/Combining%20evidence%20in%20risk%20analysis%20using%20BNs.pdf
- Finn V. Jensen (2001).
*Bayesian Networks and Decision Graphs*, Springer. - J. B. Kadane and D. A. Schum (1996).
*A Probabilistic Analysis of the Sacco and Vanzetti Evidence*, New York: Wiley. ISBN 0-471-14182-8. - M. Neil, N. E. Fenton, and M. Tailor (2005), "Using Bayesian Networks to model Expected and Unexpected Operational Losses", Risk Analysis: An International Journal, Vol. 25(4), pp. 963-972. http://www.dcs.qmul.ac.uk/~norman/papers/oprisk.pdf
- Judea Pearl (1985). "Bayesian Networks: A Model of Self-Activated Memory for Evidential Reasoning". In Proceedings of the 7
^{th}Conference of the Cognitive Science Society, University of California, Irvine, CA, pp. 329-334, August 15-17. - Judea Pearl (1986), "Fusion, propagation, and structuring in belief networks".
*Artificial Intelligence***29**(3):241–288. - Judea Pearl (1988).
*Probabilistic Reasoning in Intelligent Systems*, Morgan Kaufmann. - Judea Pearl (2000).
*Causality: Models, Reasoning, and Inference*, Cambridge University Press. - Judea Pearl and Stuart Russell. Bayesian Networks, in M. A. Arbib (editor),
*Handbook of Brain Theory and Neural Networks*, pp. 157–160, Cambridge, MA: MIT Press, 2003, ISBN 0-262-01197-2. - J. W. Comley and D. L. Dowe, "Minimum Message Length, MDL and Generalised Bayesian Networks with Asymmetric Languages", chapter 11 (pp265–294) in P. Grunwald, M. A. Pitt and I. J. Myung (editors), Advances in Minimum Description Length: Theory and Applications, Cambridge, MA: MIT Press, April 2005, ISBN 0-262-07262-9. (This paper puts decision trees in internal nodes of Bayes networks using Minimum Message Length (MML). An earlier version is Comley and Dowe (2003), .pdf.)
- Christian Borgelt and Rudolf Kruse. Graphical Models – Methods for Data Analysis and Mining, Chichester, UK: Wiley, 2002, ISBN 0-470-84337-3
- Kevin B. Korb; Ann E. Nicholson (2004).
*Bayesian Artificial Intelligence*, CRC Press. - Nevin Lianwen Zhang and David Poole, A simple approach to Bayesian network computations, Proceedings of the Tenth Biennial Canadian Artificial Intelligence Conference (AI-94), Banff, AB, May 1994, 171-178. This paper presents variable elimination for belief networks.
- David Heckerman, A Tutorial on Learning with Bayesian Networks. In Learning in Graphical Models, M. Jordan, ed. MIT Press, Cambridge, MA, 1999. Also appears as Technical Report MSR-TR-95-06, Microsoft Research, March, 1995. An earlier version appears as Bayesian Networks for Data Mining, Data Mining and Knowledge Discovery, 1:79-119, 1997. The paper is about both parameter and structure learning in Bayesian networks.

This page uses Creative Commons Licensed content from Wikipedia (view authors). |