Skip to content

stccenter/IoT-based-Temperature-Prediction

Repository files navigation

What is the software requirement?

  • Python 3.7 or above

What are the required python packages?

  • PyTorch 1.7.0 (code has GPU support, but can run without)
  • Pandas 1.0.1
  • scikit-learn
  • scipy
  • numpy
  • matplotlib
  • tqdm
  • pmdarima
  • xgboost

How to set up the project environment?

  • Clone the project by clicking on the download button
    clonerepo view
  • Open the project folder with your choice of python IDE
  • Execute below comment to install required python packages.
    pip install -r requirements.txt

Where to download the data?

  • Dataset can be downloaded here.

Note: Please contact the author Jingchao Yang ([email protected]) for direct access if link expires.

  • Place the dataset in the data folder before running the code

Note: All data has been preprocessed to csv format, raw data can be accessed from weather underground and GeoTab. Toolset for preprocessing raw data can be accessed upon request.

How to get the results?

Category of models

1. LSTM model:

To run our LSTM model, go to the directory and use the command:

python run_auto.py

LSTM was also developed to support transfer learning with command
python run_auto.py --transLearn

Note: Model training can take much longer time without GPU support. LA Dataset already includes trained models and ready for transfer learning, user can delete the content inside the LA/output to retrain.

Model output will be stored in the data/output folder.

2. Other models

Creat result folder under multistep_others for model output. ARIMA and XGBoost are for model comparison and were not developed for transfer learning.

2.1 ARIMA

To run our ARIMA model, go to multistep_others and use the command
python auto_arima_run.py

Note: ARIMA does not support any parallelization and can take a long time to finish. To help with the process, a Fast Mode has set to True as default here, and will only produce a result on randomly selected 3 stations. Change to False to test on the full dataset.

2.2 XGBoost

To run our XGBoost model, go to multistep_others and use the command
python xgboost_run.py

Useful links

Author

Jingchao Yang
Email: [email protected]

Validated by

Anusha Srirenganathan
Email: [email protected]

Tutorial video

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages