Skip to content

Implementation of Electric Load Forecasting Based on LSTM(BiLSTM). Including Univariate-SingleStep forecasting, Multivariate-SingleStep forecasting and Multivariate-MultiStep forecasting.

License

Notifications You must be signed in to change notification settings

ki-ljl/LSTM-Load-Forecasting

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LSTM-Load-Forecasting

Implementation of Electric Load Forecasting Based on LSTM(BiLSTM). Including Univariate-SingleStep forecasting, Multivariate-SingleStep forecasting and Multivariate-MultiStep forecasting.

Environment

pytorch==1.10.1+cu111

numpy==1.18.5

pandas==1.2.3

Tree

.
│  args.py
│  data_process.py
│  LICENSE
│  models.py
│  README.md
│  tree.txt
│  util.py
│          
├─data
│      data.csv
│      
├─LSTMs
│      multivariate_multi_step.py
│      multivariate_single_step.py
│      univariate_single_step.py
│      
└─models
        multivariate_multi_step.pkl
        multivariate_single_step.pkl
        univariate_single_step.pkl
  1. args.py is a parameter configuration file, where you can set model parameters and training parameters.
  2. data_process.py is the data processing file. If you need to use your own data, then you can modify the load_data function in data_process.py.
  3. Two models are defined in models.py, including LSTM and bidirectional LSTM.
  4. util.py defines the training and testing functions of the models in the three prediction methods.
  5. The trained model is saved in the models folder, which can be used directly for testing.
  6. Data files in csv format are saved under the data file.

Usage

First switch the working path:

cd LSTMs/

Then, execute in sequence:

python multivariate_multi_step.py --epochs 50 --batch_size 30
python multivariate_single_step.py --epochs 30 --batch_size 30
python univariate_single_step.py --epochs 30 --batch_size 30

If you need to change the parameters, please modify them manually in args.py.

Result

在这里插入图片描述

About

Implementation of Electric Load Forecasting Based on LSTM(BiLSTM). Including Univariate-SingleStep forecasting, Multivariate-SingleStep forecasting and Multivariate-MultiStep forecasting.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages