Skip to content

bermanlabemory/Temporal-Autoencoders-For-Causal-Inference-TACI

 
 

Repository files navigation

Temporal Autoencoders for Causal Inference (TACI)

Description

In this project, we introduce an approach named Temporal Autoencoders for Causal Inference (TACI). Our methodology uses a two-headed Temporal Convolutional Network (TCN) autoencoder architecture to encode time series data x(t) and y(t). A third TCN is used for decoding a future trajectory of y(t) (shifted by a time, τ) from a compact latent space derived from the outputs of the first two autoencoders. This approach allows for the training of four distinct versions of the network, tailored to predict the future states of x(t) and y(t), incorporating both original and surrogate data. The ultimate goal is to utilize the variance explained (R² values) over a moving window to compute metrics (XX→Y and XY→X) for assessing causal inference between the two variables.

Installation Instructions

To use TACI, you will need to have Python installed on your system, along with the following packages: numpy, matplotlib, scikit-learn, pandas, scipy, h5py, statsmodels, tensorflow, and keras-tcn. You can install these packages using pip. Here's how you can set up your environment:

Using Conda

# Create a new conda environment
conda create --name taci-env python=3.10

# Activate the environment
conda activate taci-env

# Install the required packages using conda
conda install ipython h5py matplotlib scikit-learn pandas scipy statsmodels

# Install TensorFlow with CUDA support
pip install tensorflow[and-cuda]==2.14

# Install keras-tcn without dependencies
pip install keras-tcn --no-dependencies

About

No description, website, or topics provided.

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Jupyter Notebook 96.3%
  • Python 3.7%