0

I think that I understand the fundamentals of a Bayesian network and am trying to put that into practice by making a sample one, its size being about 20 nodes. But I'm struggling to see how to assign probabilities to all the nodes in such a way that they all satisfy the Markov condition.

The actual probabilities I'd be assigning to my nodes have no importance beyond my requirement that they meet this condition - I'm not building this off of any particular data at the moment, I'm just trying to play around with a Bayesian network. Meaning can come later. So I have a great deal of flexibility. But I'm not sure how to come up with them in a way that meets the condition, without spending a dozen hours carefully checking each conditional probability. Could someone give me some insight? Am I missing something obvious that would make this trivial? Or is it genuinely extremely difficult to make Bayesian networks with more than a few nodes?

I'm at the end of Chapter 1 of Richard Neapolitan's "Learning Bayesian Networks", if that helps.

Thanks in advance to anyone who decides to respond!

  • You could use a discrete Markov random field to just construct a probability model which gives you whatever probabilities it gives you. It would be probably pretty hard to evaluate exactly the marginal probabilities. You can use belief propagation or variational approximations, but those are only exact in specific situations.

    I don't know why you would specify the marginal probabilities first, instead of specifying the conditional or joint probabilities, but maybe it's possible to check that in an efficient way.

    – Ryan Warnick Apr 09 '18 at 13:35
  • @RyanWarnick I'd really like to stick with Bayesian networks if possible. The data I'd like to play with is directed. How might I go about specifying the conditional or joint probabilities? Again, I can come up with fake data, I just want to make sure that it doesn't violate the Markov condition. – JohnDoeVsJoeSchmoe Apr 10 '18 at 03:18

0 Answers0