luyifanlu / NeuralCDE

Code for "Neural Controlled Differential Equations for Irregular Time Series"

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Neural Controlled Differential Equations
for Irregular Time Series
[arXiv]

Building on the well-understood mathematical theory of controlled differential equations, we demonstrate how to construct models that:

  • Act directly on irregularly-sampled partially-observed multivariate time series.
  • May be trained with memory-efficient adjoint backpropagation - even across observations.
  • Demonstrate state-of-the-art performance.

They are straightforward to implement and evaluate using existing tools, in particular PyTorch and the torchdiffeq library.

Code for reproducing experiments is provided, as well as a convenience library controldiffeq to make computing Neural CDEs easy.


Library

The library is in the controldiffeq folder, which may be imported as a Python module: import controldiffeq. Check the folder for details on how to use it.

Quick example

An example can be found here, which demonstrates how to train a Neural CDE to detect the chirality (clockwise/anticlockwise) of a spiral.

Reproducing experiments

Everything to reproduce the experiments of the paper can be found in the experiments folder. Check the folder for details.

Results

As an example (taken from the paper - have a look there for similar results on other datasets):

Citation

@article{kidger2020neuralcde,
    author={Kidger, Patrick and Morrill, James and Foster, James and Lyons, Terry},
    title={{Neural Controlled Differential Equations for Irregular Time Series}},
    year={2020},
    journal={arXiv:2005.08926}
}

About

Code for "Neural Controlled Differential Equations for Irregular Time Series"

License:Apache License 2.0


Languages

Language:Python 100.0%