/UniV-Forecasting

A general framework for univariate time series forecasting.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

UniV-Forecasting

An open source univariate time series forecasting framework that provides following features:

  • A general framework intergrated with data preprocess, hyper-parameters setting, hyper-parameters tuning, model training, model evaluation, and experiment logging.
  • An easy user-replaced model coding paradigm compatible with both statistical, stochastic, and training models.
  • Ready-to-use forecasting models, supported with both GPU acceleration or CPU only.

Main Dependence


  • python >= 3.6
  • pytorch = 1.9.1
  • CUDA (as required as pytorch, if using GPU)
  • ray = 1.6.0 (as requried by the specific optimizaiton algorithm, if using TaskTuner)
  • scikit-learn = 1.0.2

Provided models


  • Strong deep neural networks.
  • Classic statistical and machine learning models.
  • Promising neural networks with random weights.
  • Our proposed models.

The training models we implemented are referred to these papers.

Model Paper
DeepAR DeepAR: Probabilistic Forecasting with Autoregressive Recurrent Networks
ConvRNN Autoregressive Convolutional Recurrent Neural Network for Univariate and Multivariate Time
RNN (Elman, GRU, LSTM) Recurrent neural networks for time series forecasting: current status and future directions
CNN Convolutional neural networks for energy time series forecasting
MLP PSO-MISMO modeling strategy for MultiStep-ahead time series prediction

The stochastic models we implemented are referred to these papers.

Model Paper
RVFL A review on neural networks with random weights
IELM Extreme learning machine: theory and applications
SCN Stochastic configuration networks: fundamentals and algorithms
ESN Optimization and applications of echo state networks with leaky-integrator neurons
GESN Growing echo-state network with multiple subreservoirs
DESN Design of deep echo state networks
PSO-GESN PSO-based growing echo state network

Our proposed models are corresponding to these papers.

Model Paper
MSVR Multi-step-ahead time series prediction using multiple-output support vector regression
ESM-CNN Error-feedback stochastic modeling strategy for time series forecasting with convolutional neural networks
ETO-SDNN Growing stochastic deep neural network for time series forecasting with error-feedback triple-phase optimization

Acknowledgement


  • This framework is created by Xinze Zhang, Qi Sima, and Siyue Yang, supervised by Prof. Yukun Bao, in the school of Management, Huazhong university of Science and Technology (HUST).

Notice

  • The DeepAR provided in this repository is modified based on the work of TimeSeries. Yunkai Zhang, Qiao Jianga, and Xueying Ma are original authors of TimeSeries.
  • The ConvRNN provided in this repository is modified based on the work of ConvRNN. KurochkinAlexey, Fess13 are original authors of ConvRNN.
  • The PSO-GESN provided in this repository is modified based on the source code created by Qi Sima.