cegpy: Modelling with Chain Event Graphs in Python
Gareth Walley, Aditi Shenvi, Peter Strong, Katarzyna Kobalczyk

TL;DR
cegpy is a Python package that enables modeling and analysis of complex probabilistic processes with structural asymmetries using Chain Event Graphs, filling a gap in available software tools.
Contribution
This paper introduces cegpy, the first Python library for learning and analyzing Chain Event Graphs that can handle both symmetric and asymmetric process structures.
Findings
cegpy successfully models asymmetric processes in real datasets.
It implements Bayesian model selection and probability propagation algorithms.
The package is the first of its kind in any programming language.
Abstract
Chain event graphs (CEGs) are a recent family of probabilistic graphical models that generalise the popular Bayesian networks (BNs) family. Crucially, unlike BNs, a CEG is able to embed, within its graph and its statistical model, asymmetries exhibited by a process. These asymmetries might be in the conditional independence relationships or in the structure of the graph and its underlying event space. Structural asymmetries are common in many domains, and can occur naturally (e.g. a defendant vs prosecutor's version of events) or by design (e.g. a public health intervention). However, there currently exists no software that allows a user to leverage the theoretical developments of the CEG model family in modelling processes with structural asymmetries. This paper introduces cegpy, the first Python package for learning and analysing complex processes using CEGs. The key feature of cegpy…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsBayesian Modeling and Causal Inference · Risk and Safety Analysis · Data Quality and Management
