maxbalrog / laser-jitter

Helper data and model classes for time-series forecasting on temporal and STFT features

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Predict spatial laser jitter with NNs

The package provides with a number of helper classes for time-series data pre-processing and model training/inference. Currently supported data classes and models (find details in usage notebook):

  1. Temporal
  2. STFT

Temporal models

Given time-series (past time steps), predict a certain amount of future time steps. Preprocessing includes smoothing (optional) and scaling.

drawing

STFT models

Transform given time-series with Short Time Fourier Transform to spectrogram, filter non-dominant frequencies and scale them. Use NNs to predict future variation of real/imag part of each frequency band. Possible options: 1) one model to predict real/imag part for all frequency bands, 2) one model to predict real part for all frequency bands, another to predict imaginary part, 3) separate model for each frequency band.

drawing

Installation

Clone the repository

git clone https://github.com/maxbalrog/laser-jitter.git

Create conda environment and activate it, e.g.,

conda create -n laser-jitter python=3.10
conda activate laser-jitter

Install required packages

pip install -r requirements.txt

Install laser-jitter package

pip install git+https://github.com/maxbalrog/laser-jitter.git

Run tests to check everything runs as expected

python -m pytest laser-jitter/tests/

TODO

  • Add attention architecture
  • Add hyperparameter optimization module

Acknowledgements

Paper: in progress...

About

Helper data and model classes for time-series forecasting on temporal and STFT features

License:GNU General Public License v3.0


Languages

Language:Jupyter Notebook 98.1%Language:Python 1.9%