Non-Intrusive Load Monitoring

From Climate Change AI Wiki
This is the approved revision of this page; it is not the most recent. View the most recent revision.

🌎 This article is a stub, and is currently under construction. You can help by adding to it!

This page is about the applications of machine learning (ML) in the context of non-intrusive load monitoring (NILM). For an overview of NILM more generally, please see the Wikipedia page on this topic.

A better understanding of the own energy consumption can lead to better energy efficiency by changing one's behavior or exchanging inefficient devices. Machine Learning can be applied to the Nonintrusive load monitoring (NILM) task (also referred to as energy or load disaggregation task), i.e., can help to disaggregate a household's smart meter data and attribute energy consumption to individual devices for increased transparency.

Background Readings


  • NILM Workshop: A series of workshop for researchers working on the topic of energy disaggregation in both academia and industry. Website here.

Libraries and Tools

  • NILMTK: An Open source NILM toolkit in Python that provides wrappers to popular datasets, has implemented several benchmark algorithms and provides standard interfaces for benchmarking NILM algorithms, available here.


  • List of NILM datasets: A curated list of public NILM datasets, available here.
  • Reference Energy Disaggregation Data Set (REDD): A benchmark dataset for the NILM task containing, containing several weeks of power data for 6 different homes, and high-frequency current/voltage data for the main power supply of two of these homes, available here and a NILMT wrapper here.
  • GREEND : Another benchmark dataset for the NILM task containing power measurements collected from multiple households in Austria and Italy with sampling rate of 1 Hz, available here and a NILMT wrapper here.
  • REFIT: Benchmark dataset for the NILM task containing cleaned electrical consumption data in Watts for 20 households at aggregate and appliance level, timestamped and sampled at 8 second intervals, available here and a NILMT wrapper here.

Future Directions