A Hybrid Time Series Forecasting Framework for Real-World Use Cases
ForecastForge is an extensible, research-inspired framework built to tackle complex forecasting problems found in industries like energy, finance, transportation, and meteorology. It integrates traditional machine learning and modern deep learning models, layered with powerful ensemble techniques, to deliver high-performance forecasts on real-world datasets.
Time series data is everywhere—from electricity consumption and traffic congestion to stock fluctuations and climate monitoring. Yet forecasting such data is inherently difficult due to non-linearity, noise, and abrupt pattern changes.
ForecastForge is built to address this challenge through:
- A modular architecture that supports classical, deep learning, and hybrid models.
- A comparative framework that evaluates model performance on diverse datasets.
- An emphasis on ensemble methods to combine strengths of individual models.
- Designed for capturing long-term dependencies in sequential data.
- Used as a baseline and ensemble input.
- Uses self-attention mechanisms for sequence modeling.
- Used as a baseline and ensemble input.
- A high-performance boosting algorithm effective on structured temporal data.
- Used as a baseline and ensemble input.
- Dynamic and adaptive in nature.
- Used as a baseline and ensemble input.
- Caruana’s Ensemble Selection ✅ (Best Performer – used in final evaluation)
- Others (archived under
Deprecated Ensembles/
):- Bayesian Model Averaging
- Weighted Voting
- Blending
- Median Ensemble
- Voting
- Stacked Ensemble
- Weighted Averaging
- Stacked Weighted Voting
ForecastForge uses pre-cleaned datasets reflecting real-world forecasting challenges:
AEP_hourly_processed.xlsx
: Hourly U.S. electricity consumption data.Tesla_Stock.xlsx
: Daily Tesla stock prices.jena_climate.xlsx
: Environmental sensor data from Jena, Germany.traffic.xlsx
: Hourly road traffic volume dataset.
➡ All datasets are stored under datasets/
in ready-to-use format.
ForecastForge evaluates all models using:
- Root Mean Square Error (RMSE): Primary metric for accuracy.
- Results are saved in individual
RMSE_*.json
files within each model’s subdirectory.
📊 Below is a comparative performance chart of all implemented models on the stock dataset:
Lower RMSE indicates better performance.
A clean Gradio-based web app allows users to:
-
Select the dataset.
-
Choose which models to incorporate in the ensemble
-
Clone the Repository
git clone https://github.com/NamanKr24/ForecastForge.git cd ForecastForge
-
Create a Virtual Environment
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install Dependencies
pip install -r requirements.txt
-
Run Jupyter Notebooks
jupyter notebook
Make sure Jupyter Notebook is installed in your environment.
-
✅ Model Modularity: Add or remove models without changing the core workflow.
-
✅ Ensemble Experimentation: 9 ensemble strategies implemented and evaluated.
-
✅ Real-World Readiness: Focused on robustness, not just benchmark datasets.
-
✅ Organized Repo: Clear directory structure and reproducible pipelines.
All four datasets were taken from Kaggle datasets.
Contributions are welcome! Please follow these steps:
-
Fork the repository.
-
Create a new branch:
git checkout -b feature/YourFeature
-
Commit your changes:
git commit -m "Add YourFeature"
-
Push to the branch:
git push origin feature/YourFeature
-
Open a pull request.
This project is licensed under the MIT License.
Naman Kumar
📧 Email: namankr24@gmail.com
🔗 GitHub: NamanKr24
Crafted with dedication to advance time series forecasting methodologies.