Bayesian Belief and Decision Networks |
|
This tutorial gives a short introduction to the concepts of conditional independence and d-separation. For more in-depth information about these subjects, try some of the links listed at the end of this tutorial. The applet has been loaded with an example graph.
A Bayesian network is a graphical representation of conditional independence and conditional probabilities. Informally, a variable is conditionally independent of another, if your belief in the value of the latter wouldn't influence your belief in the value of the former. By the same token, a variable is conditionally independent of another, given some information, if your belief in the value of the second variable wouldn't influence your belief in the value of the first, given that you have the information. For example, my belief in whether or not my cat has knocked over a plant on the balcony is independent of my belief in whether or not it is windy today. However, my belief in whether or not a plant on the balcony has been knocked over is not conditionally independent of either of these two factors, since either could be a cause of a plant being knocked over. Additionally, if I happen to know that a plant on my balcony has been knocked over, my belief in whether or not my cat has done it is no longer independent of my belief in whether or not it is windy. If it is windy, that gives me a reason to believe that the plant's being knocked over is a result of the wind. In other words, knowing that it is windy can explain away a reason for my plant's being knocked over.
More formally, random variable X is independent of random variable Y given random variable Z, if P( X | Y & Z ) = P( X | Z ). One of the most important independence assumptions in a belief network is that each random variable is independent of its nondescendents given its parents. A broader formalisation is given by d-separation. The definition below is from [Pearl, 2000]:
A path p is said to be d-separated (or blocked) by a set of nodes Z if and only if
1. p contains a chain i->m->j or a fork i<-m->j such that the middle node m is in Z, or
2. p contains an inverted fork (or collider) i->m<-j such that the middle node m is not in Z and such that no
descendent of m is in Z.
A set Z is said to d-separate X from Y if and only if Z blocks every path from a node in X to a node in Y.
The algorithm used to determine irrelevant variables in Verbose Query Mode is the same algorithm used by the Quiz to determine the answers to conditional independence questions. Click on the link named 'Start the Quiz' to open the Quiz window with a copy of the graph. In the full applet, you will have to enable advanced controls in order to see the button that opens the Quiz Window. From the options menu, select 'Show Advanced Controls'. A button labelled 'Independence Quiz' will appear on the left hand side of the window when in 'Solve' mode. Click that button to start the quiz.
When the quiz window opens, you will see two buttons on the right, one labelled 'Ask new question' and the other labelled 'Answer new question'. Below them will be some disabled options. There is also a text area at the bottom of the screen, where the questions you ask and answer will appear.
First, try asking a new question. If you click the button labelled 'Ask new question', the words just beneath the dotted line will read 'Select a node' instead of 'Ask or answer a new question'. Click on a node, and it will become outlined in red. You should now see the instructions reading 'Select another node'. Notice that the question you are building appears in the text area as you select different nodes. When you select another node, it will be outlined in pink, and the instructions should read 'Now start selecting other nodes or click 'Get Answer''. Whenever you click 'Get Answer', which it should now be possible to do, the question you've been building will be asked. Selecting other nodes at this point will add more nodes to the set that can block the dependence between the two nodes originally selected. This is equivalent to claiming that these new nodes have observed values. As you select them, they will be highlighted in blue. Click 'Get Answer' whenever you're ready, and you will see the answer to the question appear just after it in the text area at the bottom of the window.
Next, try answering a new question. If you click the button labelled 'Answer new question', the question will be built for you, with the nodes outlined according to the scheme given above. The question will appear in the text area at the bottom, where the question you built yourself was. You will now be able to answer 'True' or 'False' by clicking on the corresponding buttons. If you answer correctly, your score will increase.
Judea Pearl, Causality: Models, Reasoning, and Inference, (Cambridge: Cambridge University Press, 2000)