The Library
Help/Info
Current Release
Sourceforge









Get dlib C++ Library at SourceForge.net. Fast, secure and Free Open Source software downloads


Last Modified:
Mar 15, 2009

Bayesian Networks



This page documents all the tools within the dlib library that relate to the construction and evaluation of Bayesian networks. If you want a quick introduction to the tools then you should consult the Bayesian Net example program.

The library also comes with a graphical application to assist in the creation of bayesian networks. This application is one of the example programs, so to use it you have to compile it yourself or download one of the binaries from the sourceforge download page.


Tools
Node Utilities
[top]

assignment



This object models an assignment of random variables to particular values. It is used with the joint_probability_table and conditional_probability_table objects to represent assignments of various random variables to actual values.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_ex.cpp, bayes_net_gui_ex.cpp

[top]

bayesian_network_gibbs_sampler



This object performs Markov Chain Monte Carlo sampling of a bayesian network using the Gibbs sampling technique.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_ex.cpp

[top]

bayesian_network_join_tree



This object represents an implementation of the join tree algorithm (a.k.a. the junction tree algorithm) for inference in bayesian networks.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_ex.cpp, bayes_net_gui_ex.cpp, bayes_net_from_disk_ex.cpp

[top]

bayes_node



This object represents a node in a bayesian network. It is intended to be used inside the directed_graph object to represent bayesian networks.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_ex.cpp, bayes_net_gui_ex.cpp

[top]

conditional_probability_table



This object represents a conditional probability table.

#include <dlib/bayes_utils.h>
Detailed Documentation

[top]

joint_probability_table



This object represents a joint probability table.

#include <dlib/bayes_utils.h>
Detailed Documentation

[top]

node_cpt_filled_out



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily verify that a node in a bayesian network has its conditional_probability_table completely filled out.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_gui_ex.cpp

[top]

node_first_parent_assignment



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily obtain an assignment that contains all the parents of a node in a bayesian network.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_gui_ex.cpp

[top]

node_is_evidence



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily determine if a bayes_node is evidence when it is inside a directed_graph object.

#include <dlib/bayes_utils.h>
Detailed Documentation

[top]

node_next_parent_assignment



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily loop through all the parent assignments of a node in a bayesian network.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_gui_ex.cpp

[top]

node_num_values



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily obtain the number of values of a bayes_node when it is inside a directed_graph object.

#include <dlib/bayes_utils.h>
Detailed Documentation

[top]

node_probability



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily obtain the probability of a bayes_node given its parents when it is inside a directed_graph object.

#include <dlib/bayes_utils.h>
Detailed Documentation

[top]

node_value



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily obtain the value of a bayes_node when it is inside a directed_graph object.

#include <dlib/bayes_utils.h>
Detailed Documentation

[top]

set_node_as_evidence



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily set the evidence flag of a bayes_node when it is inside a directed_graph object.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_ex.cpp

[top]

set_node_as_nonevidence



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily remove the evidence flag of a bayes_node when it is inside a directed_graph object.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_ex.cpp

[top]

set_node_num_values



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily set the number of values of a bayes_node when it is inside a directed_graph object.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_ex.cpp

[top]

set_node_probability



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily set the probability of a bayes_node given its parents when it is inside a directed_graph object.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_ex.cpp

[top]

set_node_value



This is a function declared in the dlib::bayes_node_utils namespace. It is a convenience function that allows you to easily modify the value of a bayes_node when it is inside a directed_graph object.

#include <dlib/bayes_utils.h>
Detailed Documentation
C++ Example Programs: bayes_net_ex.cpp