Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ISCL: Identifiable Signed Causal Learning via Latent Stochastic Differential Equations

Python License

Official implementation of "Identifiable Signed Causal Learning via Latent Stochastic Differential Equations for Inferring Brain Dynamic Effective Connectivity".

ISCL models brain dynamics with a latent SDE and derives dynamic effective connectivity (dEC) through an observation-space causal influence operator. The operator is identifiable up to isometric latent transformations, and its signed output distinguishes excitatory from inhibitory influences.

Overview

ISCL framework

The observation-space causal influence operator is defined as

$$\mathbf{C}_{\tilde{\mathbf{x}}}(\mathbf{z}) = \Big(J_{\mathbf{f}}(\mathbf{z}),J_{\boldsymbol{\mu}}(\mathbf{z}) + (\nabla^2\mathbf{f})(\mathbf{z})[\boldsymbol{\mu}(\mathbf{z})]\Big) J_{\mathbf{f}}(\mathbf{z})^{+}$$

where $J_{\mathbf{f}}$ is the decoder Jacobian, $J_{\boldsymbol{\mu}}$ the drift Jacobian, and $(\nabla^2\mathbf{f})[\boldsymbol{\mu}]$ the Hessian contraction along the drift. The internal Python package is named iscl.

Quickstart

The lorenz96_single_run.ipynb notebook runs one Lorenz96 experiment end to end (data generation → training → causal operator estimation → metrics → C-matrix figure):

pip install -r requirements.txt
jupyter notebook examples/lorenz96_single_run.ipynb

Requires Python >=3.10. The notebook also runs without installation (sys.path points to src/).

Tests: PYTHONPATH=src pytest tests/.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages