IP Library Granted Patent US 11,227,295
Granted Patent B2
US 11,227,295 · App. 16/223,717 · Granted Jan 18, 2022

Methods and systems for generating an aggregated data stream

Inventors: Benjamin Pickering (Southport, GB); Gareth Owen (Saddlesworth, GB)
Assignee: Kalibrate Technologies Limited
G06Q30/0201G06F17/18G06N7/00G06Q30/0206
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,227,295
App. No.
16/223,717
Granted
Jan 18, 2022
Kind
B2
Abstract

Methods and systems for data modelling. One method includes receiving a data stream including a first plurality of data points, aggregating the first plurality of data points to a second plurality of data points including values at a first frequency, and building, with at least one electronic processor, a first model based on the second plurality of data points, wherein the first model is configured to generate data values at the first frequency. The method also includes accessing a second model based on a third plurality of data points, wherein the second model is configured to generate data values at a second frequency shorter than the first frequency, generating a first data output using the first model, generating a second data output using the second model, multiplying the first data output by the second data output to generate a third data output, and outputting the third data output for display.

Claims (51)

1. A method of data modelling, the method comprising:

receiving, with at least one electronic processor, a data stream, wherein the data stream comprises a first plurality of data points, wherein the first plurality of data points includes values at varying intervals;

aggregating, with the at least one electronic processor, the first plurality of data points to a second plurality of data points, wherein the second plurality of data points include values at a first frequency, wherein the first frequency is a regular frequency;

storing, on a non-volatile storage medium, the second plurality of data points, wherein the second plurality of data points incurs a storage cost less than the first plurality of data points;

building, with the at least one electronic processor, a first model based on the second plurality of data points, the first model configured to generate data values at the first frequency;

accessing, with the at least one electronic processor, a second model based on a third plurality of data points, the second model configured to generate data values at a second frequency shorter than the first frequency, wherein the second frequency is an irregular frequency;

generating, with the at least one electronic processor, a first data output using the first model;

generating, with the at least one electronic processor, a second data output using the second model;

multiplying, with the at least one electronic processor, the first data output by the second data output to generate a third data output; and

outputting, with the at least one electronic processor, the third data output for display;

wherein aggregating the first plurality of data points includes calculating a weighted average of overlapping data points included in the first plurality of data points; and

wherein a weight for each data point is a length of time for which the data point overlaps an aggregated-level period.

2. The method of claim 1 , wherein the first plurality of data points includes item prices.

3. The method of claim 2 , wherein the second model represents demand for the item.

4. The method of claim 3 , wherein the first plurality of data points includes item prices for a first location.

5. The method of claim 4 , wherein the second model is generated based on demand for the item for the first location and a second location.

6. The method of claim 1 , wherein the first model is configured to generate a daily sales forecast for an item at a proposed price for a proposed day.

7. The method of claim 6 , wherein the second model is configured to generate an intra-day demand for the item at the proposed price.

8. The method of claim 7 , wherein the third data output includes an estimated sales volume at the proposed price value for a pricing period occurring within the proposed day.

9. The method of claim 1 , further comprising estimating the second frequency using a Gaussian-Uniform mixture model fitted to a set of data points using an expectation-maximisation algorithm.

10. The method of claim 1 , further comprising:

estimating the second model by pooling a set of transactional sales with associated intra-day timestamps and calculating an empirical cumulative distribution function of an amount of sales occurring within a 24-hour period.

11. A system for data modelling, the system comprising:

a non-volatile storage medium; and

at least one electronic processor configured to

receive a data stream, wherein the data stream comprises a first plurality of data points, wherein the first plurality of data points include values at varying intervals

aggregate the first plurality of data points to a second plurality of data points by averaging data points included in the first plurality of data points during each interval, wherein the second plurality of data points include values at a first frequency,

store, on the non-volatile storage medium, the second plurality of data points; wherein the second plurality of data points incurs a storage cost less than the first plurality of data points;

build a first model based on the second plurality of data points, the first model configured to generate data values at the first frequency,

access a second model based on a third plurality of data points, the second model configured to generate data values at a second frequency shorter than the first frequency,

generate a first data output using the first model,

generate a second data output using the second model,

multiply the first data output by the second data output to generate a third data output, and

output the third data output for display;

wherein aggregating the first plurality of data points includes calculating a weighted average of overlapping data points included in the first plurality of data points; and

wherein a weight for each data point is a length of time for which the data point overlaps an aggregated-level period.

12. The system of claim 11 , wherein the first plurality of data points includes item prices and the second model represents demand for the item.

13. The system of claim 12 , wherein the second model is generated based on demand for the item for the first location and a second location.

14. The system of claim 11 , further comprising estimating the second frequency using a Gaussian-Uniform mixture model fitted to a set of data points using an expectation-maximisation algorithm.

15. Non-transitory computer-readable medium storing instructions executable by at least one electronic processor to perform a set of functions, the set of functions comprising:

receiving a data stream, wherein the data stream comprises a first plurality of data points, the first plurality of data points includes values at varying intervals;

aggregating the first plurality of data points to a second plurality of data points, wherein the second plurality of data points include values at a first frequency, wherein the first frequency is a regular frequency;

storing, on a non-volatile storage medium, the second plurality of data points, wherein the second plurality of data points incurs a storage cost less than the first plurality of data points;

building a first model based on the second plurality of data points, the first model configured to generate data values at the first frequency;

accessing a second model based on a third plurality of data points, the second model configured to generate data values at a second frequency shorter than the first frequency, wherein the second frequency is an irregular frequency;

estimating the second model by pooling a set of transactional sales with associated intra-day timestamps and calculating an empirical cumulative distribution function of an amount of sales occurring within a 24-hour period;

generating a first data output using the first model; generating a second data output using the second model;

multiplying the first data output by the second data output to generate a third data output; and

outputting the third data output for display.

16. The non-transitory computer readable medium of claim 15 , wherein the first plurality of data points includes item prices and the second model represents demand for the item, the first model is configured to generate a daily sales forecast for the item at a proposed price for a proposed day, the second model is configured to generate an intra-day demand for the item at the proposed price, and the third data output includes an estimated sales volume at the proposed price value for a pricing period occurring within the proposed day.

17. The non-transitory computer readable medium of claim 15 , wherein the set of functions further comprises estimating the second frequency using a Gaussian-Uniform mixture model fitted to a set of data points using an expectation-maximisation algorithm.

Assignments (3)
PATENT SECURITY AGREEMENT Recorded Nov 17, 2022
From: KALIBRATE TECHNOLOGIES LIMITED
To: ALTER DOMUS TRUSTEES (UK) LIMITED
Reel/Frame 061958/0232 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SPELLING OF THE FIRST INVENTOR'S FIRST NAME PREVIOUSLY RECORDED AT REEL: 047806 FRAME: 0869. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 18, 2019
From: PICKERING, BENJAMIN; OWEN, GARETH
To: KALIBRATE TECHNOLOGIES LIMITED
Reel/Frame 051044/0257 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2018
From: PICKERING, BEMJAMIN; OWEN, GARETH
To: KALIBRATE TECHNOLOGIES LIMITED
Reel/Frame 047806/0869 →
Continuity (1)
Related Publication 20200193457A1 · Jun 18, 2020