This repository contains my implementation for Energy Disaggregation of appliances from mains consumption using stacked ensemble deep learning
This project is implemented in python 3.7 and tensorflow 2.0. Follow these steps to setup your environment:
-
After Anaconda has been installed, open up the terminal (Unix) or Anaconda prompt (Windows). Create a new environment where NILMTK and related dependencies are installed.
conda create --name nilmtk-env
-
Add conda-forge to list of channels to be searched for packages.
conda config --add channels conda-forge
-
Activate the new nilmtk-env environment.
conda activate nilmtk-env
-
Install the NILMTK package
conda install -c nilmtk nilmtk
-
Install the NILMTK package
conda install -c nilmtk nilmtk
-
Run your Python IDE from this environment, for example:
jupyter notebook
or
spyder
-
Download the REDD dataset from here using redd/disaggregatetheenergy as username/password. Unzip it in the same directory as RNN-example.ipynb.
-
Give path of the low_freq directory that you will get after the unzipping process above to the convert_redd function in the very first cell of notebook. Give appliance name that you want to run the disaggregation on and run the notebook. It might take some time to load data and convert into h5 format. After the notebook is run, you can see the actual vs predicted appliance consumption along with prediction metrics.