Skip to content

amitrajitbose/lstm-time-series-viz

Repository files navigation

Explore LSTM On Time Series Data (Without Any Code)

forthebadge made-with-python Generic badge


     drawing

PyPI version

PoweredByTF 2.0 Challenge!

More news on tensorflow.devpost.com

Purpose

The sole purpose for the development of this software was to make it easy for learners to understand how tuning several hyperparameters can effect the result of an LSTM (Long Short Term Memory) network on various types of time series data.

Dependencies

  • Python 3.x
  • Tensorflow
  • Matplotlib

Running the App

  • Install REQUIREMENTS.txt, by running pip install -r REQUIREMENTS.txt
  • Open app.py file
  • Set the hyperparameter values ( Dropout, Lag, Test Ratio, Max Epoch )
  • Select a preloaded dataset
  • Click Start
  • To reset the console click Reset

OS Support

The application has been tested on Windows and Linux platforms. In case of any issue, feel free to raise an issue.

Examples

   Increasing Sales dataset

     drawing

   Sinusoidal Curve Dataset

     drawing

Model Architecture

Model: "sequential"
_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
unified_lstm (UnifiedLSTM)   (None, LAG-1, 30)             3840      
_________________________________________________________________
dropout (Dropout)            (None, LAG-1, 30)             0         
_________________________________________________________________
unified_lstm_1 (UnifiedLSTM) (None, 30)                    7320      
_________________________________________________________________
dense (Dense)                (None, 1)                     31        
=================================================================
Total params: 11,191
Trainable params: 11,191
Non-trainable params: 0
_________________________________________________________________
None

Preloaded Datasets

Currently, the application supports 5 different datasets. We are going to add more datasets and probably improve the model in the next iteration of development. Contributions are welcomed.

  • Sine Wave
  • Cosine Wave
  • Increasing Sales
  • Decreasing Sales
  • Random Data

Developers

Amitrajit Bose + Anirban Mukherjee