Recurrent Neural Networks on NILM and doubts about REDD

516 views
Skip to first unread message

Pedro Nascimento

unread,
Mar 1, 2015, 8:52:49 PM3/1/15
to energy-dis...@googlegroups.com
Hi everyone,
i'm a student from federal university of rio de janeiro and my masters thesis is on load disaggregation. I'm on initial stages, so i have some doubts. 

(1) There is some research applying recurrent neural networks on nilm?

(2) I was taking a look on low frequency data of the REDD and if we sum the mains power and subtract it from circuits power, it is "far" from zero. This problem is due to measurement errors? The power is the real power, right? I didn't see any place specifying the unit in the low frequency file.

Thanks,
Pedro Paulo Marques do Nascimento.

Jack Kelly

unread,
Mar 2, 2015, 6:23:44 AM3/2/15
to energy-dis...@googlegroups.com
Hi Pedro,

Welcome to the NILM community ;)


(1) There is some research applying recurrent neural networks on nilm?

I'm not aware of any published work applying RNNs to NILM.  There is some work on applying feed forward neural nets to NILM though (this is by no means an exhaustive list!):

And here are some papers on using NNs on building energy systems (not necessarily NILM):

  • M. Krarti, “An overview of artificial intelligence-based methods for building energy systems.” Journal of solar energy engineering. vol. 125, pp. 331-342, 2003

  • S. A. Kalogirou and M. Bojic, "Artificial neural networks for the prediction of the energy consumption of a passive solar building," Energy, vol. 25, pp. 479-491, 2000.

  • S. Karatasou, M. Santamouris, and V. Geros, "Modeling and predicting building's energy use with artificial neural networks: Methods and results," Energy and Buildings, vol. 38, pp. 949-958, 2006.


(2) I was taking a look on low frequency data of the REDD and if we sum the mains power and subtract it from circuits power, it is "far" from zero. This problem is due to measurement errors?

All six datasets we analysed in our NILMTK E-Energy paper had "percentage of energy submetered" values less than one (take a look at Table 2 in the paper).  The discrepancy between the sum of the appliances and the aggregate power is probably mostly due to some appliances not being separately metered.  In my dataset (UK-DALE), House 1 has 53 submeters, each of which draws about 1 Watt of active power (which isn't measured by the submeters), so this pulls down our "percentage of energy submetered".  You could also consider looking at the correlation of the sum of the submeters with the mains (sorry for the shameless plug but I should mention that NILMTK can do this using MeterGroup.correlation_of_sum_of_submeters_with_mains()).

The power is the real power, right?

In the NILMTK dataset converter for REDD, we specify REDD's aggregate meters as measuring apparent power and REDD's circuit-level monitors as measuring active power (take a look at meter_devices.yaml for the REDD dataset).  I don't think we were ever 100% certain of those specs though!

Good luck with your research!

Thanks,

Jack

Pedro Nascimento

unread,
Mar 2, 2015, 12:53:48 PM3/2/15
to energy-dis...@googlegroups.com
Thank you for the responses!!

About the measurements in REDD, if the aggregate power is apparent power and circuit-level is active power then i can't compare it directly. It makes sense, because in other case the difference is big (if they were in the same unity). My doubt appeared because of those statements in readme.txt (describing the low_freq file):

(1) "channel_{1..k}.dat -- time/wattage readings for each channel"

(2) "Each channel_i.dat file contains UTC timestamps (as integers) and power readings (recording the apparent power of the circuit) for the channel"

In (1) is said that it is real power and in (2) is said that it is apparent power.

Thanks again,
Pedro.

Jack Kelly

unread,
Sep 23, 2015, 3:11:55 PM9/23/15
to Energy Disaggregation
A quick update for this old thread on recurrent neural nets...

Back in January, I started applying recurrent neural nets to NILM.  I got mixed results.  RNNs appeared to work really well when applied to simple synthetic aggregate data (made of just three  appliances) but RNNs didn't do very well for more complex aggregate data or more complex appliance signatures.  So I tried two other deep learning approaches and got better results.  I was surprised that RNNs didn't appear to work as well as the other approaches.  I recently wrote up these experiments [1].

I must admit that I'm not at all sure as to why RNNs didn't work especially well in my experiments, although I mentioned a theory in the paper:

"Our LSTM results suggest that LSTMs work best for two-state appliances
but do not perform well on multi-state appliances such as the dish
washer and washing machine.  One possible reason is that, for these
appliances, informative `events' in the power signal can be many time
steps apart (e.g. for the washing machine there might be over 1,000
time steps between the first heater activation and the spin cycle).
In principal, LSTMs have an arbitrarily long memory. But these long
gaps between informative events may present a challenge for LSTMs.
Further work is required to understand exactly why LSTMs struggle on
multi-state appliances."

I'm certainly not saying that RNNs will never work well for NILM.  It's entirely possible that there are tricks to make them behave better for NILM.  And RNNs certainly still feel like the most natural fit to NILM.

I'd love to discuss the application of deep neural nets to NILM so do dive in if you have any thoughts or questions!  I'm especially interested in any theories as to why RNNs didn't work especially well in my experiments!

Thanks,
Jack

References
[1] Jack Kelly and William Knottenbelt. Neural NILM: Deep Neural Networks Applied to Energy Disaggregation. In 2nd ACM International Conference on Embedded Systems For Energy-Efficient Built Environments (BuildSys'15), Seoul, South Korea. November 4–5 2015. DOI:10.1145/2821650.2821672 (DOI will become active in late 2015)
Code: NeuralNILM, NeuralNILM_plots, NeuralNILM_Prototype
Other links: Data, GitXiv

Pedro Nascimento

unread,
Apr 1, 2016, 2:12:25 PM4/1/16
to Energy Disaggregation
The problem was in the metric you used. Quantizing the space and using a metric less sensible to spikes and outliers (not only because of this), like the cross-entropy you can obtain good results (like i did in my masters dissertation).

Best,
Pedro.

Diego Alonso

unread,
Aug 29, 2017, 4:38:37 AM8/29/17
to Energy Disaggregation
Hello everybody. 
I am Diego Alonso, a student from Universidad de Vigo (Spain). I am working with REDD dataset and I want to apply deep learning but I am a little bit lost. My main doubt is in the input of the CNN. You pass as input a window of the whole consumption with a specific length but, how do you do this? 

I am reading Pedro's dissertation and you make a space quantization. Do you make this for the input and the output? I don't understand completely what does space quantization mean so if you could explain a little i would be so gratefull. 

Hope you answer. 
Thanks



Reply all
Reply to author
Forward
0 new messages