Matsushima-lab / CLOUD

Python implementation of the Cloud (Code Length-based method for Unobserved factor in Discrete data) for causal discovery, from the 2022 paper "Detection of Unobserved Common Cause in Discrete Data Based on the MDL Principle" by Masatoshi Kobayashi.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CLOUD

This is an implementation of the following papers:
[1] Masatoshi Kobayashi, Kohei Miyaguchi, Shin Matsushima. (2024) Detection of Unobserved Common Causes based on NML Code in Discrete, Mixed, and Continuous Variables. Preprint available on arXiv.
[2] Masatoshi Kobayashi, Kohei Miyaguchi, Shin Matsushima, (2022) Detection of Unobserved Common Cause in Discrete Data Based on the MDL Principle. IEEE BigData 2022.

Requirement

  • Python 3.8+
  • Rye or pip

Setup

With Rye (Recommended)

After installing Rye, executing the following command(s):

$ rye sync
$ rye shell # optional

You can now import and use the CLOUD class:

from cloud import CLOUD

Without Rye

Create a new virtual environment and install the dependencies:

$ python -m venv .venv
$ source .venv/bin/activate
$ pip install -r requirements.lock

Run CLOUD

Sample Data

$ python -m unittest tests/test_cloud.py

If you are using Rye, you can also run the tests with:

$ rye run python -m unittest tests/test_cloud.py

Licence

MIT

About

Python implementation of the Cloud (Code Length-based method for Unobserved factor in Discrete data) for causal discovery, from the 2022 paper "Detection of Unobserved Common Cause in Discrete Data Based on the MDL Principle" by Masatoshi Kobayashi.

License:MIT License


Languages

Language:Python 100.0%