Author Topic: How does the Learning Wizards handle missing values?  (Read 12284 times)

Offline Anders L Madsen

  • HUGIN Expert
  • Hero Member
  • *****
  • Posts: 2295
    • View Profile
How does the Learning Wizards handle missing values?
« on: July 23, 2009, 19:08:11 »
The structure learning algorithms (the PC and NPC algorithms) use the results of tests of the form "Is X and Y independent given S?", where S is a set of variables of size less than or equal to 3, to construct a directed graph.  In a specific test, we only use the cases that have values for all the variables involved (that is, X and Y and the variables in S). 

The EM algorithm uses inference to guess the values of the unobserved variables (that is, the conditional distribution for an unobserved variable given the observed variables of the case is used as the "guess" for the unobserved variable).  The initial distribution (formed from the priors specified for the variables of the network) is used in the first iteration of the EM algorithm.  As the final step of an iteration of the EM algorithm, new CPTs for all variables are computed, and these CPTs are used for inference in the next iteration.

This EM algorithm is also described in Cowell et al. The adaptation algorithm assumes Dirichlet priors formed from the prior distribution and the experience count.  Moreover, in order to avoid exponential growth in the number of terms of the updated distribution, an approximation is used: The approximation is a Dirichlet distribution with the same means and variance as the true distribution.  This means that the order in which the cases are processed affects the final distribution (because it affects the approximations performed).  [The actual order of the cases does not matter for the EM algorithm.]

For further information on Adaptation, see the book by Cowell et al (1999).  Or see the original paper by Spiegelhalter and Lauritzen from 1990.  [Full citation details can be found in the Hugin API Reference Manual.]
HUGIN EXPERT A/S