Explanation and analysis¶
This tools aimed to provide some different views on the Bayesian network in order to explore its qualitative and/or quantitave behaviours.
-
class
pyAgrum.JunctionTreeGenerator¶ JunctionTreeGenerator is use to generate junction tree or binary junction tree from bayesian networks.
- JunctionTreeGenerator() -> JunctionTreeGenerator
- default constructor
-
binaryJoinTree(JunctionTreeGenerator self, UndiGraph g, PyObject * partial_order=None)¶ binaryJoinTree(JunctionTreeGenerator self, DAG dag, PyObject * partial_order=None) -> CliqueGraph binaryJoinTree(JunctionTreeGenerator self, BayesNet bn, PyObject * partial_order=None) -> CliqueGraph
Computes the binary joint tree for its parameters. If the first parameter is a graph, the heurisitcs assume that all the node have the same domain size (2). If given, the heuristic takes into account the partial order for its elimination order.
Parameters: - g (pyAgrum.UndiGraph) – a undirected graph
- dag (pyAgrum.DAG) – a dag
- bn (pyAgrum.BayesNet) – a BayesianNetwork
- partial_order (List[List[int]]) – a partial order among the nodeIDs
Returns: the current binary joint tree
Return type:
-
eliminationOrder(JunctionTreeGenerator self, UndiGraph g, PyObject * partial_order=None)¶ eliminationOrder(JunctionTreeGenerator self, DAG dag, PyObject * partial_order=None) -> PyObject eliminationOrder(JunctionTreeGenerator self, BayesNet bn, PyObject * partial_order=None) -> PyObject
Computes the elimination for its parameters. If the first parameter is a graph, the heurisitcs assume that all the node have the same domain size (2). If given, the heuristic takes into account the partial order for its elimination order.
Parameters: - g (pyAgrum.UndiGraph) – a undirected graph
- dag (pyAgrum.DAG) – a dag
- bn (pyAgrum.BayesNet) – a BayesianNetwork
- partial_order (List[List[int]]) – a partial order among the nodeIDs
Returns: the current elimination order.
Return type:
-
junctionTree(JunctionTreeGenerator self, UndiGraph g, PyObject * partial_order=None)¶ junctionTree(JunctionTreeGenerator self, DAG dag, PyObject * partial_order=None) -> CliqueGraph junctionTree(JunctionTreeGenerator self, BayesNet bn, PyObject * partial_order=None) -> CliqueGraph
Computes the junction tree for its parameters. If the first parameter is a graph, the heurisitcs assume that all the node have the same domain size (2). If given, the heuristic takes into account the partial order for its elimination order.
Parameters: - g (pyAgrum.UndiGraph) – a undirected graph
- dag (pyAgrum.DAG) – a dag
- bn (pyAgrum.BayesNet) – a BayesianNetwork
- partial_order (List[List[int]]) – a partial order among the nodeIDs
Returns: the current junction tree.
Return type:
-
class
pyAgrum.EssentialGraph(*args)¶ Proxy of C++ pyAgrum.EssentialGraph class.
-
arcs(EssentialGraph self)¶ Returns: The lisf of arcs in the EssentialGraph Return type: list
-
children(EssentialGraph self, int id)¶ Parameters: id (int) – the id of the parent Returns: the set of all the children Return type: Set
-
connectedComponents()¶ connected components from a graph/BN
Compute the connected components of a pyAgrum’s graph or Bayesian Network (more generally an object that has nodes, children/parents or neighbours methods)
The firstly visited node for each component is called a ‘root’ and is used as a key for the component. This root has been arbitrarily chosen during the algorithm.
Parameters: graph (pyAgrum's graph) – A graph, a Bayesian network, more generally an object that has nodes, children/parents or neighbours methods in which the search will take place Returns: dict of connected components (as set of nodeIds (int)) with a nodeId (root) of each component as key. Return type: dict(int,Set[int])
-
edges(EssentialGraph self)¶ Returns: the list of the edges Return type: List
-
ids()¶ Deprecated method in pyAgrum>0.12.0. See nodes instead.
-
mixedGraph(EssentialGraph self)¶ Returns: the mixed graph Return type: pyAgrum.MixedGraph
-
neighbours(EssentialGraph self, int id)¶ Parameters: id (int) – the id of the checked node Returns: The set of edges adjacent to the given node Return type: Set
-
nodes(EssentialGraph self)¶
-
parents(EssentialGraph self, int id)¶ Parameters: id – The id of the child node Returns: the set of the parents ids. Return type: Set
-
size(EssentialGraph self)¶ Returns: the number of nodes in the graph Return type: int
-
sizeArcs(EssentialGraph self)¶ Returns: the number of arcs in the graph Return type: int
-
sizeEdges(EssentialGraph self)¶ Returns: the number of edges in the graph Return type: int
-
sizeNodes(EssentialGraph self)¶ Returns: the number of nodes in the graph Return type: int
-
skeleton(EssentialGraph self)¶
-
toDot(EssentialGraph self)¶ Returns: a friendly display of the graph in DOT format Return type: str
-
-
class
pyAgrum.MarkovBlanket(*args)¶ Proxy of C++ pyAgrum.MarkovBlanket class.
-
arcs(MarkovBlanket self)¶ Returns: the list of the arcs Return type: List
-
children(MarkovBlanket self, int id)¶ Parameters: id (int) – the id of the parent Returns: the set of all the children Return type: Set
-
connectedComponents()¶ connected components from a graph/BN
Compute the connected components of a pyAgrum’s graph or Bayesian Network (more generally an object that has nodes, children/parents or neighbours methods)
The firstly visited node for each component is called a ‘root’ and is used as a key for the component. This root has been arbitrarily chosen during the algorithm.
Parameters: graph (pyAgrum's graph) – A graph, a Bayesian network, more generally an object that has nodes, children/parents or neighbours methods in which the search will take place Returns: dict of connected components (as set of nodeIds (int)) with a nodeId (root) of each component as key. Return type: dict(int,Set[int])
-
dag(MarkovBlanket self)¶ Returns: a copy of the DAG Return type: pyAgrum.DAG
-
hasSameStructure(MarkovBlanket self, DAGmodel other)¶ Parameters: pyAgrum.DAGmodel – a direct acyclic model Returns: True if all the named node are the same and all the named arcs are the same Return type: bool
-
nodes(MarkovBlanket self)¶ Returns: the set of ids Return type: set
-
parents(MarkovBlanket self, int id)¶ Parameters: id – The id of the child node Returns: the set of the parents ids. Return type: Set
-
size(MarkovBlanket self)¶ Returns: the number of nodes in the graph Return type: int
-
sizeArcs(MarkovBlanket self)¶ Returns: the number of arcs in the graph Return type: int
-
sizeNodes(MarkovBlanket self)¶ Returns: the number of nodes in the graph Return type: int
-
toDot(MarkovBlanket self)¶ Returns: a friendly display of the graph in DOT format Return type: str
-