Noisy-MAX model

<< Click to Display Table of Contents >>

Navigation:  Building blocks of GeNIe > Components of GeNIe models > Canonical models >

Noisy-MAX model

The Noisy-OR model, a precursor of the Noisy-MAX model, was introduced for binary variables by Pearl (1988) and extended to binary leaky Noisy-OR gates by Henrion (1989). Generalizations to multi-valued Noisy-OR gates were proposed independently by Diez (1993) and Srinivas (1993). GeNIe implementation allows using two parametrizations, proposed by Diez (1993) and Henrion (1989) respectively. This section assumes a basic knowledge of the canonical gates. To those readers, who would like to understand them better, we recommend the original paper by Henrion (1989), an introductory paper of Heckerman & Breese (1996), and the review paper by Diez & Druzdzel (2006).

Both, Noisy-OR and Noisy-AND types of nodes can be modeled using Noisy-MAX nodes implemented in GeNIe. Noisy-MAX nodes can be created in two ways: (1) by CTRL-clicking in the Graph View, and (2) by changing the node type to NoisyMAX. To change the type of a node from general to Noisy-MAX, right-click on a node, select Change Type and then NoisyMAX.

change_node_type

Noisy-MAX is a generalization of a popular canonical gate Noisy-OR and is capable of modeling interactions among variables with multiple states. If all the nodes in question are binary, a Noisy-MAX node reduces to a Noisy-OR node. The Noisy-MAX, as implemented in GeNIe, includes an equivalent of negation. By DeMorgan's laws, the OR function (or its generalization, the MAX function) along with a negation, is capable of expressing any logical relationship, including the AND (and its generalization, MIN). This means that GeNIe's Noisy-MAX can be used to model the Noisy-AND/MIN functions, as well as other logical relationships.

There are two different (but mathematically equivalent) parameterizations of the Noisy-OR/MAX gates. They are often referred to by names of the researchers who proposed them, Henrion (1989) and Diez (1993). The two parameterizations are in the forms of P(Y|Xi) and P(Y|~X1,...,Xi,...,~Xn,XL). The latter parametrization (Diez's) is called in GeNIe the net representation, while the former (Henrion's) is called compound. GeNIe gives the user the freedom to specify Noisy-MAX gates using any of the two representations.

To examine the node definition of a Noisy-Max gate, open the Definition tab among the node's Node Properties.

noisy_max_definition_tab_native

The default definition format for Noisy-MAX nodes in GeNIe is net. Net probabilities in a Noisy-MAX node for a parent Xi express the probability of the effect happening when the cause Xi is present and none of the other causes of the effect, whether modeled or unmodeled is present. It is possible to examine the compound parameters that correspond to the net parameters show above. To see the compound parameters, click on the Show compound parameters (compound_parameters_button) button.

noisy_max_definition_tab_compound

You can examine the CPT that corresponds to the Noisy-MAX definition at any time by clicking on the Show CPT (cpt_button) button.

noisy_max_definition_tab_cpt

By default GeNIe hides those columns of the Noisy-MAX definition that correspond to designated parent states. You can view these columns by pressing the Show constrained columns (show_constrained_columns_button) button.

noisy_max_definition_tab_native_show

The regions shown with a gray background denote constraints on the Noisy-MAX parametrization - the last state of each parent is assumed to have distribution {0.0, 0.0, ..., 0.0,1.0}. States of the node and of its parents can be ordered, which amounts to a negation. Noisy-MAX implementation in GeNIe allows the user to control the order of states of the parent nodes, as they enter the relation with the child. Noisy-MAX table always follows the order of strengths - this means, that the first column for each parent is assigned to the outcome of the greatest strength, the second column to the outcome of the second strength end so on. The distinguished state is always assigned to the last column, which is by default hidden. To move states around and, by this, change the order of states within any parent or child node, drag and drop the states to their desired position.

Whenever there is at least one node among the parent nodes that has more than two states, the Show constrained columns (show_constrained_columns_button) button is pressed by default and grayed out. This is to allow for easy rearrangement of the order of their states. When all parent nodes are binary and the Show constrained columns button is depressed, it is still possible to change the order of states of the parents by right-clicking on the state and choosing the active state of the node.

noisy_max_definition_tab_native2

In the screen shot above, the user right-clicked on the state Present of the node Liver Cancer and selected Present.

In order for the Noisy-MAX model to be applicable in practice, the following conditions have to be fulfilled (see also Diez & Druzdzel 2006).

There should be a causal mechanism for each parent such that the parent is able to impact the child variable in the absence of the other anomalies. If co-occurrence of two or more parents is necessary to impact the child, the model may not be suitable.

Are the causal mechanisms independent? This is quite likely the hardest condition to verify, because our knowledge of the domain may not be precise enough to verify that the causal mechanisms in question do not interact with one another. In practice, however, unless there are known interactions, it is not unreasonable to assume that independence of causal influences (also known as the ICI condition) holds and the model can be applied. Should this condition not hold, it is typically possible to restructure the model in such a way that the ICI condition is approximately satisfied.

In case of existence of other, unmodeled causes (a non-zero Leak parameter), are these unmodeled causes independent of all parents of the effect variable? Typically, we assume that this condition holds unless there is evidence against it. In statistical modeling, this condition is often referred to as "independence of error terms."

We should keep in mind that the above conditions have to be satisfied approximately, as the modeling effort involving GeNIe graphs is an attempt to approximate reality and the methodology is robust to minor violations of assumptions.

 

Noisy-MAX example

Consider the following Bayesian network modeling the interaction of various liver disorders (Liver Cancer, Hepatitis A, Hepatitis B and Hepatitis C) in in producing Jaundice. We start by creating the structure of the network as follows.

noisy_max_network

We create the node Jaundice as a general Chance node and subsequently change its type into a Noisy-MAX node. To this effect, we right click on the node, and choose Change Type, from the Node Context Menu, then Chance - NoisyMax and click OK. It can be reasonably assumed that each of the four causes of Jaundice works independently of the other causes. They are capable of causing Jaundice in separation and they do not interfere in each other's ability to cause Jaundice. Jaundice can also occur even if none of the four causes is active.

The definition tab of a Noisy-MAX node is similar to that of the definition of a conditional probability table.

noisy_max_example_definition

The probability numbers in the table are specified for each non-distinguished state of the causes (here, for each of the causes, the distinguished state is Absent and for the Jaundice the distinguished state is None). Distinguished states of the causes do not have any influence on Jaundice. The numbers in the table are net parameters, which means that they express the probability that Jaundice takes Severe or Moderate state when of all possible causes of jaundice, only the current state of the current cause is present. For example, if the outcome of the node Liver Cancer is Present (i.e., cancer is present) and all other possible causes of Jaundice (including the dummy LEAK node) are absent, then the probability of Severe Jaundice is 0.3. When none of the four explicitly modeled causes of Jaundice are present, there is still 0.01 chance of Severe and 0.05 chance of Moderate Jaundice (because of all possible unmodeled causes of Jaundice), as specified in the last (LEAK) column.

It is important that the outcomes of the node Jaundice are ordered from the highest to the lowest. The outcomes of the parent nodes should also be ordered from the highest to the lowest (in terms of strength of the causal influence on the child node), i.e., from the one that influences the child most to the one that influences it least. To change the order of outcomes, drag and drop them at their desired places. To change the order of the states of any of the parents, click on the Show constrained columns (show_constrained_columns_button) button or, if all parent nodes are binary, right-click on the state of the node in question to choose a non-distinguished state.

 

Noisy-AND example (Modeling Noisy-AND nodes with Noisy-MAX)

Consider the following Bayesian network modeling the interaction of two causes of an Accident: Equipment Failure and Human Error. These two causes are both needed for an accident to happen and it seems that we are dealing with an AND-type interaction. We start by creating the structure of the model.

noisy_min_example

We create the node Accident as a general Chance node and subsequently change its type into a Noisy-MAX node. To this effect, we right click on the node, and choose Change Type, from the Node Context Menu, then Chance - NoisyMax and click OK. It can be reasonably assumed that each of the two causes of Accident works independently of the other causes. They are both needed for an Accident to happen but Accident can happen if just one of them or neither of them is present.

Noisy-MAX implementation in GeNIe does not require a separate implementation of Noisy-AND/MIN nodes. This is because a Noisy-AND node can be modeled by a Noisy-OR node and negation, based on DeMorgan’s laws (we mean here, in particular X Y = ¬(¬X ¬Y)). Hence, having a Noisy-OR model and the ability to negate its inputs and its output, one can implement Noisy-AND gate. Negation corresponds to reversing the order of outcomes (or causal strengths), which can be easily done in GeNIe.

Noisy-AND nodes work in a similar way to Noisy-OR nodes, but the parameters correspond to the probability of the effect being active even if the cause in question is inactive, given that all other causes are active (please note that we are dealing with a negation of every parent!). Each parameter is defined as the probability that the Noisy-AND node is in the designated state given that the specified parent node is in a certain inactive state but all other parent nodes, causes of the effect, are in designated state, which usually corresponds to Active or Present. For example, when there is no Equipment Failure (i.e., the state of that variable is NoFailure) but the other cause of accident, Human Error is present (state Error), we have the probability of 0.9 that there will still be no accident. When there is no Human Error (i.e., the state of that variable is NoError) but the other cause of accident, Equipment Failure is present (state Failure), we have the probability of 0.8 that there will still be no accident. When both of the causes are active (states Failure and Error respectively), the probability that the accident will not happen is 0.01, which is the leak probability here. The following table shows the parametrization of the node Accident for this case.

noisy_min_definition_net

The resulting CPT will take the following form:

noisy_min_definition_cpt

Please note that the CPT corresponds to our intuition: An accident is most likely to happen when both Equipment Failure and Human Error take place.