Physics Forums

Physics Forums (
-   Programming & Computer Science (
-   -   Bayes net inference (

0rthodontist Dec8-06 12:32 PM

Bayes net inference
I don't understand this simple algorithm from Russel & Norvig for computing a distribution of X given certain observed values e:


function Enumeration-Ask(X, e, bn) returns a distribution over X
        inputs: X, the query variable
                e, observed values for variables E
                bn, a Bayes net with variables {X} u E u Y /* Y = hidden variables */
        Q(X) <- a distribution over X, initially empty
        for each value xi of X do
                extend e with value xi for X
                Q(xi) <- Enumerate-All(Vars[bn], e)
        return Normalize(Q(X))
function Enumerate-All(vars, e) returns a real number
        if Empty?(vars) then return 1.0
        Y <- First(vars)
        if Y has value y in e
                then return P(y | parents(Y)) * Enumerate-All(Rest(vars), e)
                else return the sum over y of P(y | parents(Y)) * Enumerate-All(Rest(vars), ey)
                        where ey is e extended with Y = y

I am having trouble understanding exactly what Enumerate-All does. Specifically I do not understand how P(y | parents(Y)) is computed. We don't know the values that the parents of Y take, do we?

All times are GMT -5. The time now is 02:21 PM.

Powered by vBulletin Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
© 2014 Physics Forums