amoretti86 / PSVO

Implementation of Particle Smoothing Variational Objectives

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PSVO: Particle Smoothing Variational Objectives

This code provides a reference implementation of the Smoothing Variational Objectives (SVO) algorithms described in the publications:

SVO is written as an abstract class that reduces to two related variational inference methods for time series. As a reference, the AESMC and IWAE algorithms are implemented from the following publications:

Installation

The code is written in Python 3.6. The following dependencies are required:

  • Tensorflow
  • seaborn
  • numpy
  • scipy
  • matplotlib

To check out, run git@github.com:amoretti86/psvo.git

Usage

Running python runner_flags.py will find a two dimensional representation of the Fitzhugh-Nagumo dynamical system from one dimensional observations. The following figure provides the original dynamical system and trajectories along with the resulting inferred dynamics and trajectories from SVO.

Demo

Original Inferred
fhn fit

About

Implementation of Particle Smoothing Variational Objectives


Languages

Language:Python 53.6%Language:Jupyter Notebook 46.4%