A trained model for detecting the presence of a target device.
Patent Information
- Application Number
- JP2023576391
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-06-23
- Filing Date
- 2022-06-10
- Publication Date
- 2026-09-14
- Estimated Expiration
- 2042-06-10
Smart Images

Figure 0007920206000002 
Figure 0007920206000003 
Figure 0007920206000004
Abstract
Description
Technical Field
[0001] Field Embodiments of the present disclosure generally relate to utility metering devices, and more specifically to machine learning prediction for detecting the presence of target device energy usage within residential energy usage using a utility metering device.
Background Art
[0002] Background Disaggregation of various energy consuming devices at a given source location has proven to be a challenging problem. For example, considering a residential property, identifying device-specific and / or electric vehicle energy usage from within the overall monitored energy usage of the residence has been difficult to achieve, in part due to the wide variety of residential devices and / or electric vehicles (e.g., differing manufacturers, models, model years, etc.). While advances in metering devices have provided some opportunities, successful detection remains elusive. Techniques that can reliably detect energy usage from specific devices such as electric vehicles can create opportunities for improved grid planning, result in significant improvements in the technical field, and benefit organizations implementing these techniques.
Summary of Invention
[0003] Summary Embodiments of the present disclosure generally are directed to systems and methods for generating machine learning predictions that detect the presence of target device energy usage.
[0004] One or more trained machine learning models may be stored, configured to discover target device energy usage from source location energy usage. Multiple instances of source location energy usage over a period of time may be received for a given source location. Using the trained machine learning models, multiple discovery predictions may be generated for the received instances of source location energy usage, the discovery predictions include predictions about the presence of target device energy usage within the instances of source location energy usage. Based on the multiple discovery predictions, an overall prediction about the presence of target device energy usage within the energy usage of a given source location over a period of time may be generated.
[0005] Features and benefits of the embodiments are described in the following description, will become apparent from the description, or can be learned through the implementation of this disclosure.
[0006] Further embodiments, details, advantages, and modifications will become apparent from the following detailed description of preferred embodiments, which should be read in conjunction with the accompanying drawings. [Brief explanation of the drawing]
[0007] [Figure 1] This figure shows a system for generating machine learning predictions to discover the energy usage of a target device according to an example embodiment. [Figure 2] This is a block diagram of computing devices operably coupled to a system according to an example embodiment. [Figure 3] This figure shows an architecture for using a machine learning model to discover the presence of energy use of a target device within household energy use according to an example embodiment. [Figure 4A] This figure shows a sample neural network according to an example embodiment. [Figure 4B] This figure shows a sample neural network according to an example embodiment. [Figure 4C] This figure shows a sample neural network according to an example embodiment. [Figure 5A] This is a sample graph showing the device-specific energy usage prediction results and accuracy rate according to the example embodiment. [Figure 5B] This is a sample graph showing the device-specific energy usage prediction results and accuracy rate according to the example embodiment. [Figure 6] This figure shows an architecture for using multiple machine learning models to discover the presence of energy use of a target device within household energy use according to an example embodiment. [Figure 7] This is a flowchart for training a machine learning model to detect the presence of target device energy usage according to the example embodiment. [Figure 8] This is a flowchart for generating machine learning predictions to discover the presence of target device energy usage according to an example embodiment. [Modes for carrying out the invention]
[0008] Detailed explanation Embodiments generate machine learning predictions to discover the presence of target device energy use. Non-intrusive load monitoring ("NILM") and / or disaggregation refers to taking overall energy use at a source location (e.g., energy use in a home provided by advanced metering infrastructure) as input and estimating energy use for one or more appliances, electric vehicles, and other devices that use energy at the source location. Embodiments leverage a trained machine learning model to generate predictions about the presence of target device energy use within the overall energy use at the source location. For example, the target device could be a large appliance or an electric vehicle, the source location could be a home, and the trained machine learning model could take home energy use as input and be configured to predict whether the home energy use includes target device energy use.
[0009] In some embodiments, instances of household energy use are received over a period of time. For example, household energy use may be received at a specific level of granularity (e.g., every 15 minutes, every 30 minutes, every hour, and so on) over a period of time (e.g., one week, two weeks, one month, and so on). In some embodiments, a trained machine learning model can generate multiple prediction instances for each instance of household energy use data (e.g., four weekly predictions over one month). An overall prediction may then be generated based on the multiple prediction instances. For example, analysis can be performed on the prediction instances to arrive at an overall prediction regarding the presence of target energy use within household energy use over the period.
[0010] Here, examples of these are referenced in detail to embodiments of the present disclosure shown in the accompanying drawings. In the following detailed description, numerous specific details are stated to provide a complete understanding of the present disclosure. However, it will be apparent to those skilled in the art that the present disclosure can be carried out without these specific details. In other instances, well-known methods, procedures, components, and circuits are not described in detail so as not to unnecessarily obscure aspects of the embodiments. Wherever possible, similar reference figures will be used for similar elements.
[0011] Figure 1 shows a system for generating machine learning predictions to discover target device energy usage according to an example embodiment. System 100 includes source location 102, meter 104, source location 106, meter 108, devices 110, 112, and 114, and network node 116. Source location 102 can be any suitable location that includes or otherwise relates to devices that consume or produce energy, such as a home having devices 110, 112, and 114. In some embodiments, devices 110, 112, and 114 can be energy-consuming electrical appliances and / or electric vehicles, such as washing machines, dryers, air conditioners, heaters, refrigerators, televisions, computing devices, and similar. For example, source location 102 may be supplied with power (e.g., electricity), and devices 110, 112, and 114 may draw power from the power supplied to source location 102. In some embodiments, source location 102 is a home, and power to the home is supplied from the power grid, a local power source (e.g., solar panels), a combination of these, or any other suitable source.
[0012] In some embodiments, the meter 104 may be used to monitor energy use (e.g., electricity use) at a source location 102. For example, the meter 104 may be a smart meter, an advanced metering infrastructure ("AMI") meter, an automatic meter reading ("AMR") meter, a simple energy use meter, and similar. In some embodiments, the meter 104 may transmit information about energy use at source location 102 to a central power system, a supplier, a third party, or any other suitable entity. For example, the meter 104 may perform two-way communication with an entity to communicate energy use at source location 102. In some embodiments, the meter 104 may perform one-way communication with an entity, and the meter reading is transmitted to the entity.
[0013] In some embodiments, the meter 104 can communicate via wired and / or wireless communication links and can utilize wireless communication protocols (e.g., cellular technology), WiFi, wireless ad-hoc networks via WiFi, wireless mesh networks, low-power long-range wireless ("LoRa"), ZigBee, Wi-SUN, wireless local area networks, wired local area networks, and similar technologies. Devices 110, 112, and 114 (as well as other devices not shown) can use energy at source location 102, and the meter 104 can monitor energy usage for source location 102 and report corresponding data (e.g., to network node 116).
[0014] In some embodiments, source location 106 and meter 108 can be the same as source location 102 and meter 104. For example, network node 116 can receive energy usage information about source location 102 and source location 106 from meter 104 and meter 108. In some embodiments, network node 116 can be part of a central power system, a supplier, a power grid, an analytics service provider, a third-party entity, or any other suitable entity.
[0015] The following description includes an enumeration of one or more criteria. These terms are used interchangeably throughout this disclosure, and the scope of multiple criteria is intended to encompass the scope of one criterion, and the scope of one criterion is intended to encompass the scope of multiple criteria.
[0016] The embodiment uses total energy use from a home, provided by metering infrastructure (e.g., advanced metering infrastructure (AMI), simple metering infrastructure, and similar), to accurately predict the presence of target device energy use within home energy use. The domains of non-intrusive load monitoring ("NILM") and other types of energy use detection have attracted considerable interest. Accurate device-specific energy use discovery (e.g., by NILM or NILM-like techniques) offers numerous benefits, including opportunities for energy savings, personalization, and improved electricity grid planning.
[0017] Embodiments utilize a deep learning scheme that can accurately predict the presence of target device energy usage, such as energy usage from electric vehicles or household electrical appliances, based on a limited training set. Accurate detection can be challenging due to various energy-consuming devices, such as common household energy-consuming devices (e.g., large electrical appliances and electric vehicles), and their corresponding usage states. Furthermore, in the NILM domain, the availability of training data may be limited. Therefore, a learning scheme that can maximize the benefit of a training dataset can be particularly effective. In embodiments, training data may be used to train a learning model designed to effectively learn in these difficult situations. Input to the learning model may be provided via AMI or non-AMI (e.g., simple infrastructure), along with other types of input. Embodiments can accurately predict the presence of target device energy usage from aggregate energy usage at various granularities (e.g., 15 minutes, 30 minutes, 1 hour, and the like, or over periods such as one day, one week, one month, and the like).
[0018] Conventional NILM implementations using existing learning schemes have their own drawbacks. Some of the previously proposed approaches are built on combinatorial optimization, Bayesian methods, hidden Markov models, or deep learning. However, many of these models are not useful in real-world scenarios due to various drawbacks. For example, some of these solutions have high computational costs and are therefore infeasible. Other solutions require high-resolution / granularity input (e.g., AMI data or training data) along with specific situations, which input is often unavailable or impracticable given a given deployed metering capability.
[0019] The embodiments achieve several advantages over these conventional approaches. For example, the embodiments support a higher level of accuracy that continues to improve over time using newer data. The embodiments similarly operate machine learning models with improved generalization. For example, some model embodiments are trained on a large and diverse set of energy usage data obtained from a variety of different locations, and improved results are obtained across various geographical locations for these embodiments.
[0020] The embodiments also improve resource and time efficiency for model training and implementation. For example, some deep learning models can have extensive resource requirements for training and implementation, and these requirements can amount to hundreds of thousands of dollars, and in some cases, millions of dollars. The embodiments achieve efficient resource and calculation time for model training and implementation. Furthermore, model scoring is similarly achieved under efficient timing requirements. For example, scoring can be achieved in milliseconds in some embodiments.
[0021] Figure 2 is a block diagram of a computer server / system 200 according to an embodiment. All or a predetermined part of the system 200 may be used to implement any of the elements shown in FIG. 1. As shown in FIG. 2, the system 200 includes a bus device 212 and / or other communication mechanism(s) configured to communicate information between various components of the system 200, such as a processor 222 and a memory 214. Further, the communication device 220 can enable connection between the processor 222 and other devices by encoding data to be sent from the processor 222 to another device through a network (not shown) and decoding data received from another system through the network for the processor 222.
[0022] For example, the communication device 220 may include a network interface card configured to provide wireless network communication. Various wireless communication technologies may be used, including infrared, radio, Bluetooth®, Wi-Fi, and / or cellular communication. Alternatively, the communication device 220 may be configured to provide wired network connectivity, such as Ethernet® connectivity.
[0023] The processor 222 may include one or more general-purpose or dedicated processors to perform the computational and control functions of the system 200. The processor 222 may include a single integrated circuit, such as a microprocessing device, or it may include multiple integrated circuit devices and / or circuit boards working together to accomplish the functions of the processor 222. Furthermore, the processor 222 may execute computer programs stored in memory 214, such as an operating system 215, a prediction tool 216, and other applications 218.
[0024] System 200 may include memory 214 for storing information and instructions for execution by processor 222. Memory 214 may include various components for retrieving, presenting, modifying, and storing data. For example, memory 214 may store software modules that provide functionality when executed by processor 222. The modules may include an operating system 215 that provides operating system functionality for system 200. The modules may include the operating system 215, a prediction tool 216 that performs the target device presence prediction function disclosed herein, and other application modules 218. The operating system 215 provides operating system functionality for system 200. In some cases, the prediction tool 216 may be implemented as an in-memory configuration. In some embodiments, when system 200 performs the functionality of the prediction tool 216, it implements an unconventional dedicated computer system that performs the functionality disclosed herein.
[0025] Non-temporary memory 214 may include various computer-readable media that can be accessed by the processor 222. For example, memory 214 may include any combination of random access memory ("RAM"), dynamic RAM ("DRAM"), static RAM ("SRAM"), read-only memory ("ROM"), flash memory, cache memory, and / or any other type of non-temporary computer-readable media. The processor 222 is further coupled to a display 224, such as a liquid crystal display ("LCD"), via bus 212. A cursor control device 228, such as a keyboard 226 and a computer mouse, is further coupled to a communication device 212 to enable the user to interface with the system 200.
[0026] In some embodiments, system 200 can be part of a larger system. Therefore, system 200 may include one or more additional functional modules 218 to include further functionality. Other application modules 218 may include, for example, various modules of Oracle® Utility Customer Cloud Services, Oracle® Cloud Infrastructure, Oracle® Cloud Platform, or Oracle® Cloud Applications. The prediction tool 216, other application modules 218, and any other suitable components of system 200 may include various modules of Oracle® Data Science Cloud Services, Oracle® Data Integration Services, or other suitable Oracle® products or services.
[0027] Database 217 is coupled to bus 212 to provide centralized storage for modules 216 and 218, storing data received by, for example, the forecasting tool 216 or other data sources. Database 217 can store data in an integrated collection of logically related records or files. Database 217 can be an operational database, analytical database, data warehouse, distributed database, end-user database, external database, navigational database, in-memory database, document-oriented database, real-time database, relational database, object-oriented database, non-relational database, NoSQL database, Hadoop® distributed file system ("HFDS": Hadoop® distributed file system), or any other database known in the art.
[0028] Although presented as a single system, the functionality of system 200 may be implemented as a distributed system. For example, the memory 214 and processor 222 may be distributed across multiple different computers that collectively represent system 200. In one embodiment, system 200 may be part of a device (e.g., a smartphone, tablet, or computer). In another embodiment, system 200 may be separate from the device and remotely provide the disclosed functionality for the device. Furthermore, one or more components of system 200 may be omitted. For example, for function as a user or consumer device, system 200 may be a smartphone or another wireless device including a processor, memory, and display, and may not include one or more of the other components shown in Figure 2, but may include further components not shown in Figure 2, such as an antenna, transceiver, or any other suitable wireless device component.
[0029] Figure 3 shows an architecture for using a machine learning model to discover the presence of target device energy use within household energy use according to an example embodiment. The system 300 includes input data 302, a processing module 304, a prediction module 306, training data 308, an analysis module 310, and output data 312. In some embodiments, the input data 302 may include energy use from source locations, and the data may be processed by the processing module 304. For example, the processing module 304 may process the input data 302 to generate features based on the input data.
[0030] In some embodiments, the prediction module 306 may be a machine learning module (e.g., a neural network) trained with training data 308. For example, the training data 308 may include labeled data, such as energy usage data values from multiple source locations (e.g., source locations 102 and 106 from Figure 1) with labels indicating the presence of target device energy usage. In some embodiments, the output from the processing module 304, such as processed input, may be fed as input to the prediction module 306. The prediction module 306 may generate instances of target device presence prediction, such as multiple predictions over a period of time regarding the presence of target device energy usage in the total source location energy usage.
[0031] In some embodiments, the analysis module 310 can analyze multiple instances of target device presence predictions. For example, a mathematical function may be used to combine instances of presence predictions to generate an overall prediction of whether source energy usage data measured over a period of time includes the presence of target device energy usage. In some embodiments, the overall prediction may be output data 312. For example, input data 302 may be source location energy usage data, and output data 312 may be predictions (e.g., confidence values) regarding the presence of target device energy usage (e.g., over a period of time) within the source location energy usage data.
[0032] The embodiment uses a machine learning model, such as a neural network, to predict the presence of energy use for a target device. A neural network can contain multiple nodes called neurons, which are connected to other neurons via links or synapses. Some embodiments of neural networks may be intended for classification tasks and / or may be trained under supervised learning techniques. Often, labeled data can include features that help achieve prediction tasks (e.g., energy use classification / prediction). In some embodiments, neurons in a trained neural network can perform small mathematical operations on given input data, and the corresponding weights (or associations) of the neurons may be used to generate operands (e.g., partially generated by applying nonlinearity) that are further passed within the network or given as outputs. Synapses can connect two neurons using their corresponding weights / associations. In some embodiments, the prediction module 306 from Figure 3 can be a neural network.
[0033] In some embodiments, a neural network may be used to learn trends in labeled (or surveyed) energy use data (e.g., household energy use data values over a period of time, labeled with either device-specific energy use or general device labels). For example, the training data may include features that can be used by the neural network (or other learning model) to identify trends from the overall source-location energy use and predict the presence of target device energy use. In some embodiments, the model may be deployed once it is trained / ready. Embodiments may be implemented by a number of products or services (e.g., Oracle® products or services).
[0034] In some embodiments, the design of the prediction module 306 can include any suitable machine learning model component (e.g., neural networks, support vector machines, dedicated regression models, and similar). For example, a neural network can be implemented with a given cost function (e.g., for training / gradient calculation). The neural network can include any number of hidden layers (e.g., 0, 1, 2, 3, or more) and can include feedforward neural networks, recurrent neural networks, convolutional neural networks, modular neural networks, and any other suitable type.
[0035] Figures 4A-4C show sample neural networks according to example embodiments. The neural network 400 in Figure 4A includes layers 402, 404, 406, 408, and 410. In some embodiments, the neural network 400 can be a convolutional neural network having one or more kernels 412, 414, 416, 418, 420, and 422. For example, in a given layer of the convolutional neural network, one or more filters or kernels may be applied to the input data of the layer. Kernels 412, 414, and 416 are shown as one-dimensional kernels (e.g., 1 × n), and kernels 418, 420, and 422 are shown as two-dimensional kernels (e.g., n × m), but any other suitable shape may be implemented.
[0036] In some embodiments, layers 402, 404, and 406 are convolutional layers, kernel 412 is applied in layer 402, kernel 414 is applied in layer 404, and kernel 416 is applied in layer 406. In some embodiments, layers 402, 404, and 406 are convolutional layers, kernel 418 is applied in layer 402, kernel 420 is applied in layer 404, and kernel 422 is applied in layer 406. The shape of the data and the underlying data values can change from input to output depending on the shape of the filter or kernel applied (e.g., 1×1, 1×2, 1×3, 1×4, 2×1, 2×2, 2×3, 3×2, and similar), how the filter or kernel is applied (e.g., mathematical application), and other parameters (e.g., stride). In an embodiment, kernels 412, 414, and 416 may have one consistent shape, two different shapes, or three different shapes (for example, all kernels being different sizes), and / or kernels 418, 420, and 422 may have one consistent shape, two different shapes, or three different shapes.
[0037] In some cases, the layers of a convolutional neural network can be heterogeneous and may include different mixtures / sequences of convolutional layers, pooling layers, fully connected layers (e.g., similar to applying a 1x1 filter), and similar ones. In some embodiments, layers 408 and 410 may be fully connected layers. Thus, an embodiment of neural network 400 represents a feedforward convolutional neural network having a number of convolutional layers (e.g., implementing one-dimensional or multi-dimensional filters or kernels) followed by fully connected layers. The embodiment can implement any other suitable convolutional neural network.
[0038] The neural network 430 in Figure 4B includes layers 432, 434, 436, 438, 440, and 442, as well as kernels 444, 446, 448, 450, 452, and 454. The neural network 430 can be similar to the neural network 400 in Figure 4A, however, layers 432, 434, and 436 can be convolutional layers having parallel orientation in some embodiments, and layer 438 can be a concatenation layer that combines the outputs of layers 432, 434, and 436. For example, inputs from the input layers can be fed to layers 432, 434, and 436, respectively, and the outputs from these layers are combined in layer 438.
[0039] In some embodiments, kernels 444, 446, and 448 may be similar to kernels 412, 414, and 416 in Figure 4A, and kernels 450, 452, and 454 may be similar to kernels 418, 420, and 422 in Figure 4A. For example, kernels 444, 446, and 448 are shown as one-dimensional kernels, and kernels 450, 452, and 454 are shown as two-dimensional kernels, but any other suitable shape may be implemented. In embodiments, kernels 444, 446, and 448 may have one consistent shape, two different shapes, or three different shapes (e.g., all kernels are different sizes), and / or kernels 450, 452, and 454 may have one consistent shape, two different shapes, or three different shapes. .
[0040] In some cases, the layers of a convolutional neural network can be heterogeneous and may include different mixtures / sequences of convolutional layers, pooling layers, fully connected parallel layers, concatenation layers, and similar ones. For example, layers 432, 434, and 436 may represent three parallel layers; however, a larger or smaller number of parallel layers may be implemented. Similarly, the outputs from each of layers 432, 434, and 436 are shown as inputs to layer 438, which is a concatenation layer in some embodiments. However, one or more of layers 432, 434, and 436 may include further convolutions or other layers prior to the concatenation layer. For example, one or more convolutions or other layers may exist between layer 432 (e.g., a convolutional layer) and layer 438 (e.g., a concatenation layer). In some embodiments, another convolutional layer (having a different kernel) may be implemented between layers 432 and 438, while such an intervening layer is not implemented for layer 434. In other words, in this example, the input to layer 432 can pass through another convolutional layer before being input to layer 438 (e.g., a concatenation layer), while the input to layer 434 is output directly to layer 438 (without another convolutional layer).
[0041] In some embodiments, layers 432, 434, 436, and 438 (e.g., three parallel convolutional layers and one concatenation layer) can represent blocks within the neural network 430, and one or more further blocks may be implemented before or after the indicated block. For example, a block may feature at least two parallel convolutional layers followed by a concatenation layer. In some embodiments, a number of further convolutional layers (e.g., three or more) having various parallel structures can be implemented as blocks. The neural network 430 illustrates an embodiment of a feedforward convolutional neural network having a number of convolutional layers having parallel orientation (e.g., implementing one-dimensional and / or two-dimensional filters or kernels) followed by a fully connected layer. The embodiment can implement any other suitable convolutional neural network.
[0042] In some embodiments, the layers of neural networks 400 and 430 can be any other suitable neural network layers (e.g., layers that do not implement convolutional kernels). For example, a mixture of layers may be implemented in the neural network in some embodiments, and convolutional layers and / or convolutional neural networks and / or convolutional blocks may be implemented using other layers, networks, or blocks.
[0043] Figure 4C shows a neural network 460 that may include blocks 462, 464, 466, and 468. In some embodiments, the neural network 460 may be a recurrent neural network ("RNN"). For example, inputs 470, 472, 474, and 476 may represent input sequences into the neural network 460 (e.g., energy usage data as a sequence over time), and outputs 478, 480, 482, and 484 may represent output sequences. In some embodiments, blocks 462, 464, 466, and 468 can be any suitable recurrent neural network block, e.g., a Long Short-Term Memory (LSTM) block, a Gated Recurrent Unit (GRU) block, a quadratic RNN block, a simple recurrent network block, a block with a suitable weight matrix (e.g., a weight matrix for input, a weight matrix for calculating hidden states, and a weight matrix for calculating outputs), a block with any suitable combination of weight matrices, activation functions, and / or gates, and so on.
[0044] In some embodiments, blocks of the neural network 460 pass hidden states (or multiple hidden state values) as they process a sequence of inputs. For example, block 462 can compute hidden states that are passed to output 478 and block 464. Similarly, block 464 can compute hidden states that are passed to output 480 and block 466, and so on. In some embodiments, the neural network 460 may include several more blocks (e.g., six or more) and several more layers (e.g., two or more layers of blocks). In some embodiments, the neural network 460 may be a bidirectional neural network (e.g., hidden states are passed forward and backward between blocks).
[0045] The embodiments implement neural networks that include heterogeneous mixtures of architectures. For example, the implemented neural network may include layers of a CNN combined with layers of an RNN. In some embodiments, a CNN architecture (e.g., serial convolutional layers, parallel convolutional layers, and / or concatenation layers, pooling layers, fully connected layers, and so on) is combined with an RNN architecture (e.g., a block of an RNN neural network), so that the output from the CNN architecture serves as input to the RNN architecture. For example, input data (e.g., energy usage data as a sequence over time) may be processed by a CNN architecture, the output from the CNN architecture may be input to an RNN architecture, and the RNN architecture can process its input data to generate prediction results. In some embodiments, one or more fully connected layers (with appropriate activation functions) may follow a CNN architecture, an RNN architecture, or both. Other embodiments may include a neural network architecture, other stacks of layers, and / or other appropriate orientations of neural network components.
[0046] In some embodiments, a neural network may be configured for deep learning, for example, based on the number of neural network layers implemented. In some examples, Bayesian networks or other types of supervised learning models may be implemented similarly. For example, a support vector machine may be implemented in some cases with one or more kernels (e.g., a Gaussian kernel, a linear kernel, and similar).
[0047] In some embodiments, a test instance can be given to the model and its accuracy can be calculated. For example, referring again to Figure 3, a portion of the training data 308 / labeled or investigated energy usage data may be reserved for testing a trained model (e.g., rather than training the model). The accuracy measurement may be used to tune the prediction module 306. In some embodiments, the accuracy evaluation may be based on a subset of the training data / processed data. For example, a subset of the data may be used to evaluate the accuracy of the trained model (75% to 25% ratio for training versus testing, and so on). In some embodiments, the data may be randomly selected for test and training segments across various iterations of the test.
[0048] In some embodiments, when tested, the trained model can output a prediction (e.g., a confidence value, such as a number between 0 and 1) indicating the presence of target device energy usage within a given input (e.g., an instance of test data). For example, the instance of test data could be energy usage data for a given source location (e.g., a home) over a period of time, and the energy usage data includes labels indicating whether or not target device energy usage exists. Since the presence of target device energy usage is known for a given input / test instance, the predicted value can be compared to the known value to generate an accuracy metric. The accuracy of the trained model can be evaluated based on testing the trained model with multiple instances of test data.
[0049] In some embodiments, the design of the prediction module 306 may be tuned based on accuracy calculations during training, retraining, and / or updated training. For example, tuning may include adjusting a number of hidden layers in a neural network, adjusting kernel computations (e.g., those used to implement a support vector machine or neural network), and so on. This tuning may also include adjusting / selecting features used by the machine learning model, adjusting the processing of input data, and so on. Embodiments include implementing various tuning configurations (e.g., different versions of the machine learning model and features) while training / calculating accuracy to arrive at a configuration for the prediction module 306 that, once trained, achieves desired performance (e.g., performs predictions with a desired level of accuracy, performs according to a desired resource utilization / time metric, and does the same). In some embodiments, the trained model may be saved or stored to maintain its state for further use. For example, training of the prediction module 306 may be performed "offline," and the trained model may then be stored and used as needed to achieve time and resource-efficient data predictions.
[0050] Embodiments of the prediction module 306 are trained to identify the presence of target device energy usage in integrated source location (e.g., home) energy usage data based on processed training data. Examples of energy usage data that may be processed to generate training data 308 are included in Table 1.
[0051] [Table 1]
[0052] The sample rows of data in this example include columns: Identifier, Timestamp, Total (Energy Usage), and labeled device-specific energy usage (e.g., air conditioner, electric vehicle, refrigerator, and similar). This example includes a 15-minute granularity, but other appropriate granularities (e.g., 1 minute, 5 minutes, 30 minutes, 1 hour, several hours, 1 day, several days, 1 week, several weeks, 1 month, and similar) can be implemented as well. In some embodiments, processing the energy usage data (e.g., to generate training data 308) may include reducing the data granularity so that it can be used to generate a training corpus with consistent granularity (e.g., 1 hour, 1 day, 1 week, 1 month, etc.). Such granularity reduction may be achieved by summing the data usage values across components that make up a unit of time (e.g., summing the data usage values across four 15-minute intervals that make up an hour).
[0053] The embodiment includes a target device (e.g., an electric vehicle) and / or a set of target devices included in the training data 308. For example, training of the prediction module 306 may be configured to identify the presence of target device energy usage within total energy usage, and the training data may include labeled data usage for a single (sole) target device or multiple target devices.
[0054] The embodiments include a set of devices contained within the training data 308. For example, training of the prediction module 306 may be configured to generate target device discovery predictions; however, the training may utilize labeled data usage for a set of other devices in addition to the target device. In some embodiments, the set of other devices may be based on energy usage data and / or device-specific labeled data values available for training. The training data is often limited, and therefore, training techniques that leverage the available training data are often beneficial. In some embodiments, the set of other devices used within the training technique may be based on device diversity in the available training data, different combinations of devices at a given source location, and / or the frequency of occurrence for different combinations of devices in the available training data.
[0055] In some embodiments, data preprocessing may include selecting a subset of columns, a subset of rows, a collection of data (or some other mathematical / combinatorial function) from Table 1, and other appropriate processing. For example, data cleaning, normalization, scaling, or other processing used to make the data suitable for machine learning may be performed. In some embodiments, training data may include labeled data (e.g., target device labeled data with measured energy usage) and surveyed data (e.g., target device labeled data without measured energy usage). For example, labeled data may include total energy usage data at source locations as well as labeled energy usage data for target devices.
[0056] Surveyed data may include indications of the presence of a target device (e.g., at a source location), as shown through surveys on a particular day. In some embodiments, survey responses regarding a target device may be related to temporal characteristics (e.g., response data to surveys) and a given source location (e.g., a home), thereby the surveyed data is indicated by the total energy usage at a given source location closest to the temporal characteristics, using a general label (rather than using specific target device energy usage values) that includes the target device's energy usage. In certain embodiments, labeled energy usage data is highly useful but rare. Therefore, surveyed energy usage data can be combined with labeled energy usage data to augment the performance of a training machine learning model. For example, augmenting labeled energy usage data with surveyed energy usage data may improve the overall performance of the model and lead to more accurate results.
[0057] In some embodiments, input 302 and / or training data 308 may include information other than energy usage information. For example, weather information for energy usage data (e.g., precipitation, temperature, and similar, as of when the energy usage was measured), calendar information for energy usage data (e.g., month, day, day of the week, and similar, as of when the energy usage was measured), timestamps for energy usage data, and other relevant information may be included in input 302 and / or training data 308. For example, other relevant information relating to an instance of source location energy usage data (e.g., energy usage data over a day, week, month, or any other predetermined period) may include mean temperature, minimum temperature, maximum temperature, mean dew point temperature, minimum dew point temperature, and / or maximum dew point temperature.
[0058] The embodiment processes energy usage data from a source location (e.g., a home) to generate training data 308 used to train a prediction module 306. For example, a combined source location energy usage data value may be combined with labeled energy usage data values (and, in some embodiments, surveyed energy usage data) for one or more target devices, and this resulting combination may be processed to arrive at training data 308. In some embodiments, energy usage data for a source location may be obtained by measurement (e.g., metering). Furthermore, measurement, metering, or any other technique for receiving / monitoring energy usage for a particular device within a source location may be performed to generate device-specific labeled energy usage data for training. In other examples, energy usage data, including source location energy usage and energy specific to disassembled target devices within a source location, may be obtained from a third party. For example, training data may be obtained by any suitable means, for example, by monitoring source locations (e.g., a home) in a known environment, by obtaining publicly (or otherwise) available datasets, by developing a joint venture or partnership that brings the training data, and through any other suitable means.
[0059] In some embodiments, multiple instances of source location energy usage data (e.g., each covering a predetermined duration) may be input to a trained prediction module 306, thereby generating multiple predictions (e.g., predictions for each instance). For example, an instance of input data fed to the trained prediction module 306 may be weekly (or monthly) source location energy usage data (along with other relevant information such as weather, calendar, and similar), and a prediction (e.g., a confidence data value between 0 and 1 or any other suitable numerical range) indicating the presence of target device energy usage (e.g., over a week or other suitable duration) within the source location energy usage may be generated. In some embodiments, an instance of source location energy usage data may be decomposed over a duration (e.g., a week or a month) into a given granularity (e.g., 15 minutes, 30 minutes, 1 hour, several hours, 1 day, several days, 1 week, 1 month, and so on). In other embodiments, an instance of source location energy usage data may have a single data value (or a number of data values) for the entire duration (for example, an energy usage data value corresponding to a monthly invoice issuance).
[0060] In some embodiments, the prediction module 306 may be fed multiple instances of the input data (e.g., multiple weeks or months), thereby generating multiple instances of existence predictions (confidence data values). For example, the analysis module 310 combines instances of existence predictions to generate a comprehensive prediction about whether source location energy usage data measured over a certain period (e.g., a period spanning multiple instances of the input data used to generate instances of existence predictions, or otherwise related thereto) includes the presence of target device energy usage. In some embodiments, mathematical functions may be used to combine instances of existence predictions to generate a comprehensive prediction about whether source location energy usage data measured over a period includes the presence of target device energy usage. For example, instances of existence predictions can be data values within a given range (e.g., between 0 and 1), and the combinations can include mean, minimum, maximum, k-max mean, combinations thereof, and any other suitable combination techniques.
[0061] In some embodiments, the combined data values can represent an overall prediction (using values within a predetermined range, e.g., 0 to 1) about the presence of target device energy use over a period of time, and can be output as output data 312. For example, the input data 302 may be multiple instances of source location energy use data over a period of time (e.g., data from multiple weeks over two or three months or several months), and the output data 312 may be an overall prediction (e.g., confidence data values) that combines multiple instances of presence predictions, and the overall prediction indicates the presence of target device energy use in the source location energy use data over the period of time.
[0062] In some embodiments, the output data 312 can be compared to a criterion or threshold (e.g., a configurable threshold) to determine whether the overall prediction is positive (e.g., source location energy use data includes target device energy use) or negative (e.g., source location energy use data does not include target device energy use). Figures 5A-5B show sample graphs illustrating the prediction results of device-specific energy use presence according to example embodiments. The data shown in the sample graphs illustrates tested embodiments disclosed herein for predicting the presence of target device energy from overall energy use at an unseen source location (e.g., a home). Figure 5A shows a graphical representation of predicted confidence data values for the presence of overall energy use data and target device energy use according to some embodiments. In graph 502, time is shown on the x-axis, while energy use (in kWh) is shown on the y-axis.
[0063] Referring to Figure 5A, a trained prediction model can receive (as input) a total energy usage data value (e.g., processed input data) and generate a graphically represented prediction (e.g., a confidence value that the energy usage data includes the energy usage of the target device). The total energy usage data value that serves as input data may include energy from multiple devices, which may sometimes include the target device(s). In some embodiments, the presence prediction shown in Graph 502 may be an instance of presence prediction based on an instance of input data (e.g., energy usage data over a predetermined period, such as one week).
[0064] Graph 502 shows that the trained predictive model begins to predict high confidence values around June 2019. In other words, around June 2019 (and thereafter), the trained predictive model positively detects the presence of target device energy use within the overall source-location energy use. Some embodiments of the predicted confidence values for the target device achieve high accuracy over multiple weeks, depending on the granularity of the input / training data, for example, while other embodiments achieve high accuracy over multiple months. Any other suitable data granularity, time period, or other suitable parameters can be implemented.
[0065] The embodiments implement threshold confidence data values that indicate the presence of target device energy use. For example, Figure 5A illustrates a first output confidence data value before June 2019 and a second output confidence data value after June 2019, where the first output confidence data value does not indicate the presence of target device energy use, and the second output confidence data value indicates the presence of target device energy use. Several embodiments utilize a criterion or threshold, where any confidence data value greater than the threshold indicates a positive prediction of the presence of target device energy use.
[0066] Figure 5B shows graphical output data generated by trained predictive models according to several embodiments. For example, Graph 504 is the precision-recall curve for the output from the trained predictive model, and Graph 506 is the receiver operator characteristic (ROC) curve for the output from the trained predictive model. Graphs 504 and 506 show the accuracy of these outputs based on true positives (TP), false positives (FP), true negatives (TN), and / or false negatives (FN). Graph 504 plots recall (e.g., TP / (TP+FN)) on the x-axis and precision (e.g., TP / (TP+FP)) on the y-axis, while Graph 506 plots the false positive rate (e.g., FP / (FP+TN)) on the x-axis and the true positive rate (e.g., TP / (TP+FN)) on the y-axis. In some embodiments, the threshold may be constructed based on the accuracy relationships shown in Graphs 504 and / or 506.
[0067] Several embodiments implement flexible criteria that can include multiple thresholds based on objectives and use cases. For example, a “high precision” use case might have a relatively high threshold calculated empirically (e.g., based on output data from a trained model that achieves high precision), while a “high reach” use case might have a relatively low threshold calculated empirically (e.g., based on output data from a trained model that balances precision with the number of source locations captured by the threshold). Other objectives and / or use cases, as well as corresponding thresholds aimed at optimizing these objectives / use cases, can be implemented similarly. In some embodiments, thresholds may be derived using precision-recall values for a trained model, ROC values for a trained model, or a combination thereof, or any other suitable technique may be used to compute one (or more) thresholds.
[0068] In some embodiments, multiple machine learning models may be trained, and the outputs of these models can be combined to achieve target device presence prediction. Figure 6 shows an architecture for using multiple machine learning models to detect the presence of target device energy use within household energy use according to an example embodiment.
[0069] The system 600 includes input data 602, a processing module 604, prediction modules 606 and 610, training data 608 and 612, an analysis module 614, and an output 616. In some embodiments, the input data 602 may include energy usage from source locations, and the data may be processed by the processing module 604. For example, the processing module 604 may process the input data 602 to generate features based on the input data. In some embodiments, the input data 602 and the processing module 604 may be similar to the input data 302 and processing module 304 in Figure 3.
[0070] In some embodiments, prediction modules 606 and 610 can be machine learning modules (e.g., neural networks) trained, respectively, with training data 608 and 612. For example, training data 608 and 612 may include energy usage data values from multiple source locations (e.g., source locations 102 and 106 from Figure 1), including labeled data, e.g., energy usage data values specific to a labeled target device and / or energy usage data investigated for the target device. Outputs from processing module 604, such as processed inputs, can be fed as inputs to prediction modules 606 and 610. Embodiments of prediction modules 606 and 610 can be similar to prediction module 306 in Figure 3.
[0071] In some embodiments, training data 608 and 612 can be used to train prediction modules 606 and 610 to predict the presence of target device energy usage from overall source location energy usage. Once trained, prediction modules 606 and 610 can be configured for different types of target device presence predictions. For example, training data 608 can be used to train prediction module 606 to discover the presence of a target device by considering a first set of input data, e.g., source location energy usage data with a first granularity (e.g., hourly granularity within weekly chunks), while training data 612 can be used to train prediction module 610 to discover the presence of a target device by considering a second set of input data, e.g., source location energy usage data with a second granularity (e.g., monthly granularity with single or a small number of data values). In some embodiments, prediction module 606 may be configured to discover a first type of target device energy usage (e.g., one or a set of target devices, target devices with a particular type of energy usage, and so on), and prediction module 610 may be configured to discover a second type of target device energy usage.
[0072] In some embodiments, the prediction module 606 can generate multiple instances of a first target device presence prediction based on input data 602, and / or the prediction module 610 can generate multiple instances of a second target device presence prediction based on input data 602. These predictions from prediction modules 606 and 610 can be input to an analysis module 614, which can generate one or more target device predictions as output data 616.
[0073] In some embodiments, the analysis module 614 can be similar to the analysis module 310. For example, the analysis module 614 can combine multiple instances of presence predictions from one or both of the prediction modules 606 and 610 to generate an overall presence prediction. In some embodiments, the prediction module 606 is trained to predict the presence of a first type of target device, the prediction module 610 is trained to predict the presence of a second type of target device, and the analysis module 614 combines these predictions from each module to arrive at an overall presence prediction. For example, the input data 602 may be total energy usage data from source locations, which is processed by the processing module 604 and fed to the trained prediction module 606 and the trained prediction module 610.
[0074] In some embodiments, each prediction module can generate multiple instances of existence predictions (e.g., confidence data values) that are combined by the analysis module 614. The output 616 can be a single confidence data value indicating the existence of one target device or multiple confidence data values indicating the existence of different target devices. For example, instances of existence predictions from prediction module 606 can be combined by the analysis module 614 to arrive at a confidence data value for a first target device, and instances of existence predictions from prediction module 610 can be combined by the analysis module 614 to arrive at a confidence data value for a second target device. In some embodiments, instances of existence predictions from prediction modules 606 and 610 can be combined together by the analysis module 614 to arrive at a confidence data value for a target device.
[0075] The embodiments realize several next-level advantages that provide further improvements to target device presence prediction. For example, embodiments that implement flexible thresholds can be optimized for precision, reach, a combination thereof, or for any other suitable use case. Several embodiments can accept various different types of input / training data. For example, a given trained predictive model may be configured to utilize energy usage data at a first granularity (e.g., hourly granularity using weekly chunks), while another trained predictive model may be configured to utilize energy usage data at a second granularity (e.g., monthly chunks of data with monthly or weekly granularity). These embodiments may be configured to use high-resolution data when available, and thus optimize predictions using the best available data, and to utilize lower-resolution data when high-resolution data is not available, and thus provide a robust solution that works under various conditions.
[0076] The embodiment may also be configured to detect the presence of energy use from various target devices. For example, using one or more trained predictive models, the embodiment may detect the following target devices: • Battery-powered electric vehicles (L1 standard and L2 fast charging: 120V and 240V) • Plug-in hybrid electric vehicles (L1 standard and L2 fast charging: 120V and 240V) • Water heater ·washing machine ·Dryer • Pool pump • Electric heating devices • Electrical cooling devices • Heating, ventilation, and air conditioning (HVAC) devices • Photovoltaic / Solar Panels Regarding this, the presence of energy use (within integrated source-location energy use) can be detected.
[0077] The embodiment is equally scalable, with various additional target devices supported by relevant training data, and is highly scalable in modern cloud computing environments. The implemented embodiment was used to predict the presence of target devices in millions of source locations, yielding expected results.
[0078] The embodiment also supports improvements to the electric grid infrastructure. In practice, demand for electricity experiences peak loads that can result in high costs for utilities implementing the electric grid, as well as high environmental costs. To address this problem, utilities aim to better distribute electricity demand and reduce the risk of peak loads. The embodiment can identify target device energy consumption from household energy consumption, so utilities can target customers with specific target devices to achieve this load balancing. For example, electric vehicle charging may be identified as a factor that exacerbates or mitigates peak loads. The embodiment supports the discovery of utility customers with electric vehicles, and utilities can then target these customers in load balancing campaigns.
[0079] For example, to better serve customers while balancing the load on the electric grid, time-of-use (TOU) rates may be used to reduce demand on the grid by shifting some of the load to off-peak hours. TOU rates may include incentives for customers to charge their electric vehicles off-peak, such as a "Residential EV Rate," which is priced to encourage customers to practice more efficient energy consumption behavior. Furthermore, the discovery of the presence of electric vehicles on utility customer premises can be a factor in grid planning. For example, the burden that electric vehicle charging places on the electric grid can be better understood when the number of utility customers with electric vehicles can be reliably estimated. Then, when planning future electric grid infrastructure, utilities can better take into account the expected increase in the number of electric vehicles (and other high-capacity battery devices).
[0080] Embodiments can also support utility companies' efforts to transition customers from natural resource (e.g., gas or oil) appliances to electric appliances. For example, embodiments can detect the presence of target devices such as electric appliances, and thus can also reliably detect the absence of such electric appliances. Once it is understood that customers lack electric appliances, utilities can target these customers with campaigns to transition them from gas appliances (e.g., clothes dryers or water heaters) to electric appliances. Often, natural resource appliances (especially those that are aging) are less energy efficient than their corresponding electric appliances, and therefore such campaigns can improve overall energy efficiency over a certain area.
[0081] Figure 7 shows a flowchart for training a machine learning model to discover the presence of target device energy usage according to an example embodiment. In some embodiments, the functions in Figures 7 and 8 may be implemented by software stored in memory or other computer-readable or tangible media and executed by a processor. In other embodiments, each function may be implemented by hardware (e.g., through the use of application-specific integrated circuits ("ASICs"), programmable gate arrays ("PGAs"), field-programmable gate arrays ("FPGAs")), or any combination of hardware and software. In some embodiments, the functions in Figures 7 and 8 may be implemented by one or more elements of the system 200 in Figure 2.
[0082] In 702, energy usage data is received from multiple source locations, and the energy usage data includes energy usage by the target device and one or more other devices. For example, the energy usage data may be similar to the data shown in Table 1 above, or may include a subset of columns from Table 1. In some embodiments, the received data may include a timestamp, total energy usage at the source location (e.g., a home), and labeled energy usage data values for the target device or investigated indications of target device energy usage (e.g., a general label without data values specific to target device energy usage). Energy usage data may be received by a third party, based on a joint venture, or through any other appropriate channel or entity by monitoring energy usage.
[0083] In 704, a machine learning model can be constructed. For example, a machine learning model such as a neural network, CNN, RNN, Bayesian network, support vector machine, any combination of these, or any other suitable machine learning model can be constructed. Parameters such as the number of layers (e.g., the number of hidden layers), input shape, output shape, width, depth, direction (e.g., feedforward or bidirectional), activation function, certain types of layers or units (e.g., gated recursive units, long- and short-term memory, and similar), or other suitable parameters for the machine learning model can be selected. In some embodiments, these constructed parameters can be tuned (e.g., adjusted, completely changed, added, or removed) when training the model.
[0084] In some embodiments, the machine learning model may include a CNN. In this case, parameters such as the layer type (e.g., convolutional, pooling, fully connected, and similar), kernel size and type, stride, and other parameters may also be configured. In some embodiments, the machine learning model may include an RNN. In this case, parameters such as the unit type (e.g., simple RNN, GRU, LSTM, and similar), direction, sequence size, depth, and other parameters may also be configured. In some embodiments, the machine learning model may include one or more CNN layers and one or more RNN layers. The parameters configured by the CNN and / or RNN may also be tuned when training the model.
[0085] In 706, energy usage data may be processed to generate training data. For example, energy usage data from source locations may be cleaned, normalized, and otherwise processed to generate consistent training data (e.g., energy usage data of a given granularity, such as hourly). In some embodiments, chunks of training data may be generated to cover a predetermined duration (e.g., one week, one month), and the chunks of training data include source location energy usage data of a given granularity over the duration. In some embodiments, the target device may be at least one of an electric vehicle, a water heater, a washing machine, a dryer, a pool pump, an electric heating device, an electric cooling device, a heating, ventilation, and air conditioning (HVAC) device, and a photovoltaic device, and the training data may include features of the target device's energy usage.
[0086] In 708, a machine learning model can be trained using generated training data to predict the presence of target device energy usage. Training may include generating predictions, calculating losses (based on a loss function), and gradient propagation (e.g., through layers / neurons of the machine learning model). As discussed herein, labeled energy usage and / or investigated target device energy usage for a target device may be used to train a machine learning model.
[0087] In some embodiments, a trained machine learning model is trained using energy usage data from multiple source locations (e.g., homes), and the training can be optimized for predicting the presence of energy usage from a target device. In some embodiments, the training data, which in some cases includes labeled energy usage data from the target device(s), has a substantially hourly granularity. Other suitable granularities (e.g., 1 minute, 15 minutes, 30 minutes, 45 minutes, and similar) can be implemented as well.
[0088] In some embodiments, the training data may have a low-resolution granularity (e.g., monthly or invoice-issuance granularity), and one or more models may be trained using this low-resolution granularity data. For example, a first machine learning model may be trained using a first granularity (e.g., hourly and weekly chunks), while a second machine learning model may be trained using a second granularity (e.g., monthly chunks with single or a small number of energy usage data values). In some embodiments, a single machine learning model may be trained on the first granularity, the second granularity, or a combination thereof.
[0089] In some embodiments, one or more trained machine learning models include one or more recurrent neural network layers and one or more convolutional neural network layers. Embodiments of machine learning models and / or training data used can be tuned based on the training results. For example, a test of the trained model may indicate the accuracy of the trained model, and various tuning adjustments may be made based on the test accuracy.
[0090] At 710, one or more trained machine learning models may be stored. For example, one or more trained models that generate predictions satisfying a criterion (e.g., accuracy criterion or threshold) may be stored, and the stored models may be used to predict the presence of target device energy usage.
[0091] Figure 8 shows a flowchart for generating machine learning predictions to discover the presence of target device energy usage according to an example embodiment. For example, one or more machine learning models trained based on the functionality of Figure 7 may be used to perform the functionality of Figure 8.
[0092] In 802, multiple instances of source location energy use may be received for a given source location over a period of time. For example, source location (e.g., home) energy use data may be broken down into multiple time intervals (e.g., with a granularity of substantially hourly) based on timestamps over a period of time such as a day, a week, a month, or similar. Other appropriate granularities may be implemented. In some embodiments, low-resolution energy use data is received for a source location. For example, energy use data over a month may be received, and the granularity for the data may include one or a few values (e.g., daily, monthly, or weekly).
[0093] In some embodiments, source-location energy use data can be processed. For example, the processing can be similar to that of the training data (described with reference to Figure 7). In such examples, the processing can be modified so that the household energy use input data is similar to the training data, and thus the trained machine learning model can achieve improved predictive results. The processing can include achieving a given granularity for the energy use data (e.g., hourly), normalization, other forms of scaling, segmentation (e.g., into weekly or monthly chunks), and any other appropriate processing.
[0094] In 804, a trained machine learning model can be used to generate multiple discovery predictions for received instances of source-location energy usage, where the discovery predictions indicate the presence of target device energy usage within the source-location energy usage instance. For example, processed data (e.g., multiple instances of source-location energy usage of a given granularity) can be provided as input data to a trained machine learning model, which can generate instances of target device discovery predictions corresponding to each instance of source-location energy usage data.
[0095] In some embodiments, the source location is a home, and the received source location energy usage has a granularity of at least one hour. For example, an instance of source location energy usage data may be home energy usage data with hourly granularity over a week, and the period may be at least four weeks. In some embodiments, the received source location energy usage data has a granularity of one of the following: monthly, weekly, and bi-weekly, over a month. For example, the period may be at least eight months, and an instance of source location energy usage data may be home energy usage data with monthly, weekly, or bi-weekly granularity over a month (e.g., each instance contains one or a small number of data values). In other examples, the period may be any of the following: four months, three months, two months, six weeks, and so on, and any appropriate granularity may be implemented.
[0096] In some embodiments, each instance of discovery prediction generated by the trained machine learning model is based on a corresponding instance of source-location energy use (e.g., hourly granularity over a week) and weather conditions associated with the corresponding instance of source-location energy use (e.g., weather conditions over a week). For example, the weather conditions are relative to the source location (e.g., home), include one or more of the mean temperature, maximum temperature, and minimum temperature, and are related to the duration associated with the corresponding instance of source-location energy use (e.g., calendar data). In some embodiments, the weather conditions may include dew point temperature, humidity, relative humidity, solar irradiance, and other appropriate weather data.
[0097] In 806, multiple discovery predictions may be analyzed, and in 808, based on the multiple discovery predictions, a comprehensive prediction may be generated regarding the presence of target device energy use within the energy use of a given source location over a period of time. For example, generating a comprehensive prediction may include combining the comprehensive confidence data values corresponding to multiple discovery predictions to generate a comprehensive confidence data value. In some embodiments, instances of presence predictions may be data values between a given range (e.g., between 0 and 1), and the combination may include mean, minimum, maximum, k-max mean, combinations thereof, and any other suitable combination techniques.
[0098] In some embodiments, a discovery prediction is a confidence data value indicating the presence of target device energy use within an instance of source location energy use, and a composite prediction is a composite confidence data value indicating the presence of target device energy use within a given source location energy use over a period of time. For example, generating a composite prediction may involve combining confidence data values corresponding to multiple discovery predictions to generate a composite confidence data value. In some embodiments, the composite confidence data value is compared to a criterion or threshold, and the presence of target device energy use is positively discovered when the composite confidence data value meets or exceeds the criterion or threshold.
[0099] In some embodiments, the target device is an electric vehicle, and the target device energy use is electric vehicle charging. For example, the target device energy use can be a first type of electric vehicle charging and / or a second type of electric vehicle charging, where the first type of electric vehicle charging is performed by a 120-volt charger and the second type of electric vehicle charging is performed by a 240-volt charger.
[0100] Embodiments generate machine learning predictions to discover the presence of target device energy use. Non-intrusive load monitoring ("NILM") and / or decomposition refers to taking overall energy use at a source location (e.g., energy use in a home provided by advanced metering infrastructure) as input and estimating energy use for one or more electrical appliances, electric vehicles, and other devices that use energy at the source location. Embodiments leverage a trained machine learning model to generate predictions about the presence of target device energy use within the overall energy use at the source location. For example, the target device could be a large electrical appliance or an electric vehicle, the source location could be a home, and the trained machine learning model could take home energy use as input and be configured to predict whether or not home energy use includes target device energy use.
[0101] In some embodiments, instances of household energy use may be received over a period of time. For example, household energy use may be received at a specific level of granularity (e.g., every 15 minutes, every 30 minutes, every hour, and so on) over a period of time (e.g., one week, two weeks, one month, and so on). In some embodiments, a trained machine learning model may generate multiple prediction instances for each instance of household energy use data (e.g., four weekly predictions over one month). An overall prediction may then be generated based on the multiple prediction instances. For example, analysis may be performed on the prediction instances to arrive at an overall prediction regarding the presence of target energy use within household energy use over a period of time.
[0102] The features, structures, or characteristics of this disclosure described throughout this specification may be combined in any suitable way in one or more embodiments. For example, the use of “one embodiment,” “some embodiments,” “certain embodiment,” “certain embodiments,” or other similar language throughout this specification means that certain features, structures, or characteristics described in relation to an embodiment may be included in at least one embodiment of this disclosure. Thus, the appearance of the phrases “one embodiment,” “some embodiments,” “certain embodiment,” “certain embodiments,” or other similar language throughout this specification does not necessarily refer to all embodiments of the same group, and the features, structures, or characteristics described may be combined in any suitable way in one or more embodiments.
[0103] Those skilled in the art will readily understand that the embodiments discussed above may be carried out using steps in a different order and / or using elements of different configurations than those disclosed. Therefore, while this disclosure considers the embodiments outlined, it will be apparent to those skilled in the art that certain modifications, variations, and alternative configurations will be revealed, while remaining within the spirit and scope of this disclosure. Accordingly, references should be made to the appended claims to determine the boundaries and bounds of this disclosure.
Claims
1. A method for generating machine learning predictions to discover target device energy usage, The processor stores one or more trained machine learning models configured to discover target device energy usage from source location energy usage, The processor receives multiple instances of source location energy usage over a certain period of time for a given source location, The processor includes generating a plurality of discovery predictions using the trained machine learning model, each of which corresponds to one of the plurality of instances of source-location energy usage, and each discovery prediction includes a prediction regarding the presence of target device energy usage within the instance of source-location energy usage. The method comprises the processor generating a comprehensive prediction of the presence of target device energy use within the energy use of the given source location over the period, based on the plurality of discovery predictions.
2. The method according to claim 1, wherein the discovery prediction includes confidence data values indicating the presence of target device energy use within the instance of source location energy use, and the overall prediction includes overall confidence data values indicating the presence of target device energy use within the given source location energy use over the period.
3. The method according to claim 2, wherein generating the comprehensive prediction includes combining the confidence data values corresponding to the plurality of discovery predictions in order to generate the comprehensive confidence data value.
4. The method according to claim 3, wherein the overall confidence data value is compared with a standard or threshold, and the presence of target device energy use is positively detected when the overall confidence data value satisfies or exceeds the standard or threshold.
5. The target device comprises at least one of an electric vehicle, a water heater, a washing machine, a dryer, a pool pump, an electric heating device, an electric cooling device, a heating, ventilation, and air conditioning (HVAC) device, and a photovoltaic device. The method according to claim 2, wherein the trained machine learning model is trained using data that includes the target device energy usage feature.
6. The method according to claim 5, wherein the target device comprises an electric vehicle, and the target device energy use comprises a first type of electric vehicle charging and a second type of electric vehicle charging, the first type of electric vehicle charging using a 120-volt standard charger and the second type of electric vehicle charging using a 240-volt fast charger.
7. The method according to claim 2, wherein the source location includes a home, and the instance of source location energy use includes home energy use at an hourly granularity over a week, and the period includes at least four weeks.
8. The method according to claim 2, wherein the source location includes a home, and the instance of source location energy use includes one of a monthly granularity, a weekly granularity, and a bi-weekly granularity.
9. The method according to claim 2, wherein the trained machine learning model includes one or more recurrent neural network layers and one or more convolutional neural network layers.
10. The method according to claim 2, wherein each discovery prediction generated by the trained machine learning model is based on a corresponding instance of source-location energy use and weather conditions associated with the corresponding instance of source-location energy use.
11. The method according to claim 10, wherein the weather conditions further include, with respect to the source location, one or more of the average temperature, maximum temperature, minimum temperature, dew point temperature, humidity value, and solar irradiance.
12. A system for generating machine learning predictions to discover target device energy usage, Processor and A system comprising a memory for storing instructions for execution by the processor, wherein the instructions configure the processor to perform the method according to any one of claims 1 to 11.
13. A program including instructions, wherein, when executed by a processor, the instructions cause the processor to generate machine learning predictions to discover target device energy usage, and when executed, the instructions cause the processor to perform the method according to any one of claims 1 to 11.
Citation Information
Patent Citations
Apparatus state detection device and apparatus state detection system
JP2012189526A
Method and system for detecting electrical appliances based on user feedback information
JP2013109742A
Electrical meter system for engery desegregation
US20180328967A1
Non-intrusive load monitoring using ensemble machine learning techniques
WO2021108010A1