Re-implementation of dynamic Bayesian networks.
Created by: hbuschme
The commits of this pull request implement dynamic Bayesian networks in PRIMO. The implementation is compatible to the one in primo-legacy. More specifically the pull request adds:
- Implementation for the structure of (2-TBN type) dynamic Bayesian networks.
- Implementation of a generic abstract class for DBN inference methods.
- Implementation of two similar inference mechanisms based on the “prior feedback” (Robert 1993, Computational, Statistics 8:279--294) principle, i.e., marginal posterior probabilities of transition variables at time-slice (t) become prior probabilities of transition variables at time-slice (t+1).
- A function for loading DBN-specifications, and a JSON-based DBN-specification format.
- A DBN example.
Furthermore, it contains:
- A module containing PRIMO-specific exception types, currently PrimoError and StructureError.
- A re-organisation of import statements (now relative imports are used where possible).
- Renaming of the module primo2.network to primo2.networks as it now contains two different kinds of networks.