Dynamic Bayesian Network with virtual evidence

The front end.
Post Reply
AtiyehAtiyeh
Posts: 6
Joined: Mon Apr 26, 2021 10:46 pm

Dynamic Bayesian Network with virtual evidence

Post by AtiyehAtiyeh »

Hello,

I have a Dynamic Bayesian Network with 78-time steps and 59 nodes. I want to define virtual evidence for nodes in each time step. How can I do it? I can't describe each node in each time step manually. It takes too much time. Is there any way that I can prepare a text file and is readen by GeNie?

Thank you in advance for your help
shooltz[BayesFusion]
Site Admin
Posts: 1417
Joined: Mon Nov 26, 2007 5:51 pm

Re: Dynamic Bayesian Network with virtual evidence

Post by shooltz[BayesFusion] »

You can use SMILE (the library on which GeNIe is based) and program the repetitive tasks in C++, Python, Java, .NET or R.

For manuals and tutorials please visit http://support.bayesfusion.com/docs
AtiyehAtiyeh
Posts: 6
Joined: Mon Apr 26, 2021 10:46 pm

Re: Dynamic Bayesian Network with virtual evidence

Post by AtiyehAtiyeh »

Thank you for your response. I have one more question about the learning parameters of DBN.

I have a Dynamic Bayesian Network, which consists of 59 nodes and 78-time steps. I have data for each node for 78 months. So, my database is a table with 59 columns (nodes) and 78 rows (time steps). I want to learn this DBN with the database. In other words, I want to learn the DBN with part of the data and test it with the rest of the data.

(1) How can I learn this network? I should prepare a text file with 59 columns and 78 rows, or should I define each node in each time step (node, node_1, node_2,....,node-77)?

(2) How can I test this network? can I use the K-fold cross-validation?

Thank you in advance for your help
shooltz[BayesFusion]
Site Admin
Posts: 1417
Joined: Mon Nov 26, 2007 5:51 pm

Re: Dynamic Bayesian Network with virtual evidence

Post by shooltz[BayesFusion] »

For EM in the dynamic network you'll need the text file which, in each row, has the values for each node and each time step. To ensure the automatic matching between the network and the data in GeNIe's UI you need to follow the naming convention for the data columns - for the initial step you need the column name to be equal to node id, and for steps with t>=1 you need to add the time suffix with the underscore (so nodeX in step NN is "nodeX_NN").

GeNIe currently does not support the validation directly in the DBN - you'll need to unroll the network and run validation there.
AtiyehAtiyeh
Posts: 6
Joined: Mon Apr 26, 2021 10:46 pm

Re: Dynamic Bayesian Network with virtual evidence

Post by AtiyehAtiyeh »

Hi

As you explained, I prepared text files and performed Learn Parameters and Validate actions on the unrolled model. But I see a weird problem in the validation step. It cannot predict the value of any of the examples in the test set. "Rs", "Rsys", and "Rds" are the target nodes. I'll send you my model and data files in a private chat.
Would you please guide me on how I can fix the problem?

Also, I am unsure when should I use the "Update" (beliefs) function? When I define evidence? or after learning the parameters?

Your help is very much appreciated.
Post Reply