Data from Sense device to NN learning system?

I was reading some of the technical papers regarding the “Sense learning” technology, and it got me wondering about a few things.

  1. What ‘compression’, if any, is done within the Sense device installed in the building before it is transmitted out? (I’m not looking for technical details, just an overview of the amount of data gathered within the device vs. that transmitted).

  2. I noted that the neural network (NN) learning seems to have a “convolution” layer in it (at least one). I know that ‘convolution algorithms’ in general can greatly benefit from having “expanded data” fed into them – as long as that “expansion” (e.g. interpolation) does not introduce ‘artifacts’ into the data stream (and I do know of one such rational interpolation algorithm). Would an ‘expansion’ of the Sense device’s data stream by a factor of 10 (or more) improve the learning algorithms?

  3. Perhaps the opposite of #2: Would the learning algorithms benefit from a ‘smart compression’ of the data which provides only ‘changes’ in data as well as the ‘rate of change’ (i.e. tangent slope)? I know from my (many decades old!) knowledge of “wet” (brain) neural networks that often the best “detection and learning” comes from the ‘secondary’ data (i.e. rate of change).

Related to #1: I’d also like to ‘affirm’ the request made in the topic Access to log file/data ? Exporting history data to be able to access (download) the ‘rawest’ data available from the Sense device so that I might be able to help ‘explore’ the possibilities inherent in questions #2 & 3.

Dave Barnett added a post to this thread:

that analyzes Sense data transmission/reception in his home, which ran typically 8-24Kbps. There’s apparently a lot of compression / conditioning / data selection goin on in the probe since I’m guessing it samples 4-6 channels (depending on solar or no solar) at maybe 12 bit resolution (haven’t been able to get specs on TI part they are using) at 1MHz per channel. I would hazard that the probe only sends somewhat compressed data associated with relatively large or quick changes in power. It may also so some analysis during these deltas of the change in phase relationship between the voltage and current on that leg of the wiring.

Yes, I did see that post; thanks, @kevin1.

The ‘Now’ graphs of data update at 1-second intervals; the probes’ sampling intervals are, of course, much, much faster (a million times faster!) than that.

My question really is more directed to the data stream feeding into the “neural net” system (that which identifies new devices as well as events associated with “known” devices). I have been musing about how “improvements” to that incoming data stream (more data and/or ‘better’ data) might help.

You did mention one point I was thinking about since I post the original … the measurement error.

In order to have “high quality” 'smart compression (#3 above), it is very helpful to know the typical “error band” of the measurements. If one knows the bit-size of the analog-to-digital conversion (e.g. 12 bit), then that is certainly one factor in the error-band of the measurements. However, the actual “error-band” can be higher (or, possibly, with some sophisticated circuits with auto-ranging, lower) than what is implied by the A-D conversion size.

There are also ‘error-bands’ in the time-of-measurement, too, although those are very often MUCH smaller than the error-band of the value being measured, and can often be ignored … except when there are times of “missing data”, of course (as has been written about in a number of other topics).

FYI: By way of an example of where “expanding data” can improve the operation of a “convolution” algorithm, a some-what classic case is that of FFT’s (Fast Fourier Transform) for analyzing and identifying frequency spectrums.

The FFT convolution can identify, at best, a “highest” frequency which is 1/2 the size of the sampling rate; the sample size (the amount of data used in the FFT algorithm) also ‘defines’ the accuracy of the resulting frequencies which can be “seen” (identified).

If one ‘expands’ the original sampling size “smoothly” (without introducing too many ‘digital frequency artifacts’), the accuracy of the frequency identification can be improved … although it does not increase the “highest frequency” which can be identified based (which is solely dependent on the original sampling rate).

That is the basis for #2 in the original post above.

1 Like

re: #2
Think of this as going from an old 640x480 PC display scaled up to a 4K TV display … without the “jaggy” pixels of a simplistic “zoom”. It is a lot easier to identify what is happening.

Hi Dan,
More info. Someone has actually done a teardown on the Sense probe:

He confirms:

Still not enough to figure out everything you want to.

It does give a ‘lower limit’ on the precision (probably a solid 13 bits; the data sheet says +/-0.8 bit.)

Since there are two dual channel A/D converters, that does support a sampling rate of 1 Mhz for 4 channels (2 current probes, 2 voltage legs). It’d be interesting to know how the solar current probes are handled.

FYI: The CPLD is a “field programmable logic array” … very fast, compared to the ARM-A8 even, and can be re-programmed “in-place”. Of course, what it does is one of the things at the heart of their technology … although I doubt the “device detection” actually takes place there. It’s probably the front-end data ‘conditioning’ and compression, while the A8 chip handles all the communication and moving of data in & out of the device.

It looks like MAX V is the M160Z option which has only 192 equivalent macrocells. Nowhere near enough for any kind of neural network. Not sure it’s even enough for a 14x14 bit fixed point multiply. Secret sauce signal conditioning - probably flags high slope changes in current amplitude and fast changes in phase differential between voltage and current.

As for solar CTs, I’m betting that Sense somehow interleaves solar samples with voltage samples since voltages probably don’t have to be sampled as frequently since they don’t change as readily as currents. Either that or the Solar Sense has a 4 channel faster sampling part - can’t remember if the solar upgrade requires a new probe or just additional CTs. But Sense specs the probe at 4MSps, with no additional info on solar version.

After the Sense conf. call on Fri. I got to thinking about how different the data we see on our “power meter” view vs. the actual raw data. In the conference call, the R&D team was able to look at and display each leg’s power consumption individually, but I was also reminded how much goes on below even that:

  • The actual 60 Hz current and voltage waveforms for both legs plus solar
  • Some of the recognition features that they glean out of the raw current and voltage waveforms - phase angle
  • The raw power calculation at each sample in time
  • Some kind of single or multicycle windowing and time series analysis to support appropriate RMS results
  • Summing the power for both legs

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.