| CPC G06Q 30/0205 (2013.01) [G06F 18/211 (2023.01); G06F 18/217 (2023.01); G06F 18/22 (2023.01); G06F 18/251 (2023.01); G06F 18/285 (2023.01); G06N 20/00 (2019.01)] | 18 Claims |

|
1. A computer-implemented method, comprising:
receiving, by a processor, a first forecast request;
training, by the processor, a plurality of machine learning forecast models on a first portion of a data set;
validating, by the processor, a machine learning forecast model on a second portion of the data set; and
retraining, by the processor, the machine learning forecast model on a sum of the first portion and the second portion of the data set, the data set comprising processed historical data;
forecasting, by the processor, a forecast based on the first forecast request;
receiving, by the processor, a subsequent forecast request;
selecting, by the processor, a machine learning forecast model when:
i) the data set has been updated by a new class of relevant signal data since a previous forecast request; or
ii) the data set has been updated by an amount of new relevant signal data beyond a first threshold since the previous forecast request; or
iii) the machine learning forecast model has degraded;
and
retraining, by the processor, a previously-selected machine learning forecast model when a time interval between successive forecast requests is greater than a second threshold;
using one of the machine learning forecast model selected by the processor and the previously-selected machine learning forecast model for providing first forecast data for a first forecast window, the first forecast data for one or more store locations;
transmitting the first forecast data to a user;
receiving first sales data for the one or more store locations for a second time interval, the second time interval subsequent a first time interval;
determining an error in the first forecast data based on the first forecast data and the first sales data;
removing the error from the first forecast data for forming first adjusted forecast data, the first adjusted forecast data for the one or more store locations; and
transmitting the first adjusted forecast data to the user.
|