Giter Site home page Giter Site logo

michileo / gvar Goto Github PK

View Code? Open in Web Editor NEW

This project forked from i6092467/gvar

0.0 0.0 0.0 63.03 MB

An interpretable framework for inferring nonlinear multivariate Granger causality based on self-explaining neural networks.

Home Page: https://openreview.net/forum?id=DEa4JdMWRHp

Python 86.50% R 13.50%

gvar's Introduction

Interpretable Models for Granger Causality Using Self-explaining Neural Networks

Introduction

Exploratory analysis of time series data can yield a better understanding of complex dynamical systems. Granger causality is a practical framework for analysing interactions in sequential data, applied in a wide range of domains. We propose a novel framework for inferring multivariate Granger causality under nonlinear dynamics based on an extension of self-explaining neural networks. This framework is more interpretable than other neural-network-based techniques for inferring Granger causality, since in addition to relational inference, it also allows detecting signs of Granger-causal effects and inspecting their variability over time. In comprehensive experiments on simulated data, we show that our framework performs on par with several powerful baseline methods at inferring Granger causality and that it achieves better performance at inferring interaction signs. The results suggest that our framework is a viable and more interpretable alternative to sparse-input neural networks for inferring Granger causality.

Relational inference in time series:

relational inference

In addition to structure, our approach allows inferring Granger-causal effect signs:

interpretable relational inference

The overall summary of the proposed framework:

inference framework summary

This project iplements an autoregressive model for inferring Granger causality based on self-explaining neural networks – generalised vector autoregression (GVAR). The description of the model, inference framework, experiments, comparison to baselines, and ablations can be found in the ICLR 2021 paper. A short explanation of the method is provided in this talk. The poster is available here.

Requirements

All the libraries required are in the conda environment environment.yml. To install it, follow the instructions below:

conda env create -f environment.yml   # install dependencies
conda activate SENGC                  # activate environment

Note, that the current implementation of GVAR requires a GPU supported by CUDA 10.1.0.

Experiments

/bin folder contains shell scripts for the three simulation experiments described in the paper (all arguments are given in the scripts):

  • Lorenz 96: run_grid_search_lorenz96
  • fMRI: run_grid_search_fMRI
  • Lotka–Volterra: run_grid_search_lotka_volterra

The data used to generate results in the paper are stored in the folder datasets/experiment_data.

Further details are documented within the code.

Acknowledgements

Code for the baseline models, apart from VAR, is not included into this project and is available in the following repositories:

Authors

References

Below are some references helpful for understanding our method:

  • C. W. J. Granger. Investigating causal relations by econometric models and cross-spectral methods. Econometrica, 37(3):424–438, 1969.
  • A. Arnold, Y. Liu, and N. Abe. Temporal causal modeling with graphical Granger methods. In Proceedings of the 13th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD ’07, pages 66–75, 2007.
  • L. Song, M. Kolar, and E. Xing. Time-varying dynamic Bayesian networks. In Advances in Neural Information Processing Systems 22, pp. 1732–1740. Curran Associates, Inc., 2009.
  • A. Tank, I. Covert, N. Foti, A. Shojaie, and E. Fox. Neural Granger causality for nonlinear time series, 2018. arXiv:1802.05842.
  • D. Alvarez-Melis and T. Jaakkola. Towards robust interpretability with self-explaining neural networks. In Advances in Neural Information Processing Systems 31, pp. 7775–7784. Curran Associates, Inc., 2018.

Citation

@inproceedings{Marcinkevics2021,
  title={Interpretable Models for Granger Causality Using Self-explaining Neural Networks},
  author={Ri{\v{c}}ards Marcinkevi{\v{c}}s and Julia E Vogt},
  booktitle={International Conference on Learning Representations},
  year={2021},
}

gvar's People

Contributors

i6092467 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.