How jhansudoapt/se-lstm-mcu works
This repository is a weather time-series forecasting research project: it cleans and normalizes temperature and humidity data, trains several neural forecasting architectures, compares their test performance, and prepares selected models for MCU use. The README documents the broad workflow and capabilities; sampled code confirms preprocessing, sequence-based training, metrics, and plots. Training scripts and data are duplicated across directories, so the exact handoff between processed splits and each training run is not fully established.
Main entry points: ModelsComparison Trained models · data Training splits · ProcessData.py Clean and split · LSTM.py LSTM forecaster
Components 17
Data preparation
- Raw weather data
Data/Raw - Clean and split
Scripts/ProcessData/ProcessData.py - Processed splits
Data/Processed - Training splits
Scripts/Code/data
Forecast models
- LSTM forecaster
Scripts/Code/LSTM.py - SE-LSTM forecaster
Scripts/Code/SE-LSTM.py - LMU forecaster
Scripts/Code/LMU.py - TCN forecaster
Scripts/Code/TCN_MCU.py - CNN-LSTM forecaster
Scripts/Code/CNN_LSTM.py - TPA-LSTM forecaster
Scripts/Code/TPA-LSTM.py - Embedding experiments
Scripts/Code/EvolutionEmb.py - Trained models
Models/ModelsComparison
Evaluation
- Comparison metrics
Results - Performance plots
Figures
MCU deployment
- MCU model files
Models/ModelsOnMCUs - Arduino implementation
Scripts/Implementation/RapidTest.ino
Other components
- Project user
Connections 28
- Project user → Clean and split: runs preprocessing
- Raw weather data → Clean and split: loads data
- Clean and split → Processed splits: writes splits
- Processed splits → Training splits: duplicated as
- Project user → LSTM forecaster: runs training
- Project user → SE-LSTM forecaster: runs training
- Project user → LMU forecaster: runs training
- Project user → TCN forecaster: runs training
- Project user → CNN-LSTM forecaster: runs training
- Project user → TPA-LSTM forecaster: runs training
- Project user → Embedding experiments: runs experiment
- Training splits → LSTM forecaster: loads splits
- Training splits → SE-LSTM forecaster: loads splits
- Training splits → LMU forecaster: loads splits
- Training splits → TCN forecaster: loads splits
- Training splits → CNN-LSTM forecaster: loads splits
- Training splits → TPA-LSTM forecaster: loads splits
- Training splits → Embedding experiments: loads splits
- LSTM forecaster → Trained models: saves model
- SE-LSTM forecaster → Trained models: saves model
- LMU forecaster → Trained models: saves model
- TCN forecaster → Trained models: saves model
- CNN-LSTM forecaster → Trained models: saves model
- TPA-LSTM forecaster → Trained models: saves model
- Trained models → Comparison metrics: evaluated in
- Trained models → Performance plots: compared in
- Trained models → MCU model files: converted for MCU
- MCU model files → Arduino implementation: used by