{"id":29022896,"url":"https://github.com/nahom32/energy-consumption-forecasting","last_synced_at":"2026-01-20T16:27:38.652Z","repository":{"id":300911731,"uuid":"1007525720","full_name":"Nahom32/Energy-Consumption-Forecasting","owner":"Nahom32","description":"This repository contains sequence modelling for energy consumption forecasting.","archived":false,"fork":false,"pushed_at":"2025-06-24T07:47:42.000Z","size":74,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-24T08:33:46.625Z","etag":null,"topics":["deep-learning","deep-neural-networks","rnn","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Nahom32.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-24T06:18:19.000Z","updated_at":"2025-06-24T07:47:45.000Z","dependencies_parsed_at":"2025-06-24T08:44:34.632Z","dependency_job_id":null,"html_url":"https://github.com/Nahom32/Energy-Consumption-Forecasting","commit_stats":null,"previous_names":["nahom32/energy-consumption-forecasting"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Nahom32/Energy-Consumption-Forecasting","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nahom32%2FEnergy-Consumption-Forecasting","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nahom32%2FEnergy-Consumption-Forecasting/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nahom32%2FEnergy-Consumption-Forecasting/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nahom32%2FEnergy-Consumption-Forecasting/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nahom32","download_url":"https://codeload.github.com/Nahom32/Energy-Consumption-Forecasting/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nahom32%2FEnergy-Consumption-Forecasting/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261990350,"owners_count":23241187,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deep-learning","deep-neural-networks","rnn","tensorflow"],"created_at":"2025-06-26T03:04:06.617Z","updated_at":"2026-01-20T16:27:38.622Z","avatar_url":"https://github.com/Nahom32.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🔮 Future Forecasting with Autoregressive LSTM/GRU\n\nThis Streamlit web app allows you to upload a preprocessed time series CSV dataset with 11 specific features and generate future forecasts using two deep learning models: LSTM and GRU. You can select which feature to predict and compare the forecasts visually and in tabular form.\n\nLink: https://energyconsumptionforecast.streamlit.app/\n---\n\n## Features\n\n- Upload a CSV file containing the required features.\n- Select the target feature to predict from the 11 available.\n- Configure the input sequence length (window size) and number of future steps to predict.\n- Autoregressive forecasting using pretrained LSTM and GRU PyTorch models.\n- Visualization of historical data alongside forecasts from both models.\n- Side-by-side comparison of forecasted values.\n\n---\n\n## Required Features in CSV\n\nYour uploaded CSV must contain these columns:\n\n- `Global_active_power`\n- `Global_reactive_power`\n- `Voltage`\n- `Global_intensity`\n- `Sub_metering_1`\n- `Sub_metering_2`\n- `Sub_metering_3`\n- `hour`\n- `dayofweek`\n- `month`\n- `is_weekend`\n\n---\n\n## Getting Started\n\n### Prerequisites\n\n- Python 3.8 or above\n- PyTorch\n- Streamlit\n- pandas\n- numpy\n- scikit-learn\n- matplotlib\n\nInstall dependencies via:\n\n```bash\npip install torch streamlit pandas numpy scikit-learn matplotlib\n````\n\n### Models\n\nPlace your pretrained model weights (`lstm_model.pt` and `gru_model.pt`) in the `../models/` directory relative to the app script.\n\n---\n\n## Running the App\n\nRun the Streamlit app with:\n\n```bash\nstreamlit run your_app_script.py\n```\n\n---\n\n## Usage\n\n1. Upload a CSV file with the required features.\n2. Select the data slice to use (start and end row indices).\n3. Choose the feature you want to predict.\n4. Set the input sequence length and number of future steps to predict.\n5. View the forecast plot comparing LSTM and GRU predictions.\n6. Review forecasted values in the comparison table.\n\n---\n\n## Notes\n\n* The app uses MinMaxScaler internally to scale features before prediction.\n* The forecasting is autoregressive: each predicted step is fed as input to predict the next.\n* Make sure your CSV contains no missing values for the required features.\n\n---\n\n## License\n\nThis project is open source under the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnahom32%2Fenergy-consumption-forecasting","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnahom32%2Fenergy-consumption-forecasting","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnahom32%2Fenergy-consumption-forecasting/lists"}