Methods and apparatus for self-adaptive time series forecasting engine
Abstract
An apparatus has a memory with processor-executable instructions and a processor operatively coupled to the memory. The apparatus receives datasets including time series data points that are descriptive of a feature of a given entity. The processor determines a time series characteristic based on the data content, and selects, based on the determined characteristic, a set of entrant forecasting models from a pool of forecasting models stored in the memory. Next, the processor trains each entrant forecasting model with the time series data points to produce a set of trained entrant forecasting models. The processor executes each trained entrant forecasting model to generate a set of forecasted values indicating estimations of the feature of the given entity. Thereafter the processor selects at least one forecasting model from the set of trained entrant forecasting models based on computed accuracy evaluations performed over the set of forecasted values.
Claims
exact text as granted — not AI-modified1 . An apparatus, comprising:
a processor; and a memory storing instructions which, when executed by the processor, causes the processors to:
receive a dataset, from a plurality of data sources, the dataset includes a data content indicative of a time series with descriptive values associated with a feature of an entity;
determine a time series characteristic based on the data content;
select a set of entrant forecasting models from a plurality of forecasting models stored in the memory, based on the time series characteristic;
train each entrant forecasting model from the set of entrant forecasting models using the data content indicative of the time series to produce a set of trained entrant forecasting models;
instantiate, in the memory, a data structure with a set of forecasted values generated by at least one execution of each trained entrant forecasting model from the set of trained entrant forecasting models, the set of forecasted values indicating estimations of the descriptive values associated with the feature of the entity; and
select at least one forecasting model from the set of trained entrant forecasting models based on an accuracy evaluation of each forecast value from the set of forecasted values.
2 . The apparatus of claim 0 , wherein the code to
determine the time series characteristic includes code to:
execute an autocorrelation analysis over the data content; and
determine at least one seasonality on the time series by the identification of at least one data set from the data content satisfying a predetermined statistically significant autocorrelation condition, the at least one seasonality used, at least in part, to select the set of entrant forecasting models.
3 . The apparatus of claim 0 , wherein the code to
determine the time series characteristic includes code to:
execute a partial autocorrelation analysis over the data content; and
determine at least one seasonality of the time series by an identification of at least one data set from the data content satisfying a predetermined statistically significant partial autocorrelation condition, the at least one seasonality used, at least in part, to select the set of entrant forecasting models.
4 . The apparatus of claim 0 , wherein the data content indicative of the time series is a first data content, the code to
determine the time series characteristic includes code to: extract from the dataset a second data content;
determine an exogenous variable value based on the second data content;
select a lag time period from the time series based on the exogenous variable value;
execute an auto-correlation and/or a partial autocorrelation analysis over the selected lag time period from the time series; and
determine at least one seasonality of the time series by an identification of at least one data set from the first data content satisfying a predetermined statistically significant condition, the at least one seasonality used, at least in part, to select the set of entrant forecasting models.
5 . The apparatus of claim 0 , wherein the code to
determine the time series characteristic includes code to:
select, from the received dataset, a set of cross-sectional data associated with the feature of the entity; and
determine the time series characteristic based, at least in part, as a function of the cross-sectional data and the data content indicative of the time series.
6 . The apparatus of claim 1 , wherein the code to
determine the time series characteristic includes code to:
execute an extraction process over the received dataset to produce a set of metadata; and
determine the time series characteristic based, at least in part, as a function of the set of metadata and the data content indicative of the time series.
7 . The apparatus of claim 0 , wherein the code to
determine the time series characteristic includes code to determine the time series characteristic based on at least one of a) seasonality analysis; b) variability analysis; c) number of predictive variables; and d) shape distribution analysis.
8 . The apparatus of claim 0 , wherein the code to
train each entrant forecasting model includes code to:
divide the data content indicative of the time series into a first set and a second set, the first set including time series data points sampled during at least one first period of time, the second set including time series data points sampled during at least one second period of time, the at least one first period of time being earlier than the at least one second period of time.
9 . A method comprising:
executing, via a processor, a fitness evaluation of at least one incumbent forecasting model that is implemented on a compute device operatively coupled to the processor; selecting, at least based on the fitness evaluation, a set of entrant forecasting models from a plurality of forecasting models stored in a memory operatively coupled to the processor; instantiating, in the memory, a data structure with a set of forecasted values generated by an execution of each entrant forecasting model from the set of entrant forecasting models, the set of forecasted values indicates time series with descriptive values of a feature associated with an entity feature; and replacing the at least one incumbent forecasting model with at least one elected forecasting model selected from the set of entrant forecasting models based on at least one forecast model measure, the at least one forecast model measure indicating a superior fitness and/or forecasting accuracy of the at least one elected forecasting model over the at least one incumbent forecasting model.
10 . The method of claim 0 , wherein the executing the fitness evaluation includes
executing, via the processor, the fitness evaluation upon a determination that a time-based condition has been met, the time-based condition coded in the memory.
11 . The method of claim 0 , wherein the executing the fitness evaluation includes
executing, via the processor, the fitness evaluation upon a determination that a sample size condition has been met, the sample size condition associated with a predetermined training sample size threshold associated with at least one forecasting model from the plurality of forecasting models stored in the memory.
12 . The method of claim 0 , wherein the executing the fitness evaluation includes
executing, via the processor, the fitness evaluation upon a determination that a time series condition has been met, the time series condition associated with a predetermined threshold of a time series time interval value of a training set associated with at least one forecasting model from the plurality of forecasting models stored in the memory.
13 . The method of claim 0 , further comprising:
calculating a mean absolute error (MAE), for each entrant forecasting model from the set of entrant forecasting models; and selecting an entrant forecasting model from the set of entrant forecasting models as the at least one elected forecasting model, based on a comparison of the calculated MAE for each entrant forecasting model from the set of entrant forecasting models.
14 . The method of claim 0 , further comprising:
calculating a mean absolute percentage error (MAPE), for each entrant forecasting model from the set of entrant forecasting models; and selecting an entrant forecasting model from the set of entrant forecasting models as the at least one elected forecasting model, based on a comparison of the calculated MAPE for each entrant forecasting model from the set of entrant forecasting models.
15 . The method of claim 0 , further comprising:
calculating a mean absolute scaled error (MASE), for each entrant forecasting model from the set of entrant forecasting models; and selecting an entrant forecasting model from the set of entrant forecasting models as the at least one elected forecasting model, based on a comparison of a calculated MASE for each entrant forecasting model from the set of entrant forecasting models.
16 . The method of claim 0 , further comprising:
calculating a root mean squared error (RMSE), for each entrant forecasting model from the set of entrant forecasting models; and selecting an entrant forecasting model from the set of entrant forecasting models as the at least one elected forecasting model based on a comparison of the RMSE for each entrant forecasting model from the set of entrant forecasting models.
17 . The method of claim 0 , further comprising:
calculating a normalized root mean square error (NRMSE), for each entrant forecasting model from the set of entrant forecasting models; and selecting an entrant forecasting model from the set of entrant forecasting models as the at least one elected forecasting model based on a comparison of the normalized root mean square error for each entrant forecasting model from the set of entrant forecasting models.
18 . The method of claim 0 , further comprising:
calculating a coefficient of valuation (CV), for each entrant forecasting model from the set of entrant forecasting models; and selecting an entrant forecasting model from the set of entrant forecasting models as the at least one elected forecasting model based on a comparison of the coefficient of valuation CV, for each entrant forecasting model from the set of entrant forecasting models.
19 . The method of claim 0 , further comprising:
calculating a mean of forecasted values (MFV), for each entrant forecasting model from the set of entrant forecasting models; and selecting an entrant forecasting model from the set of entrant forecasting models as the at least one elected forecasting model based on a comparison of the MFV for each entrant forecasting model from the set of entrant forecasting models.
20 . The method of claim 0 , further comprising:
calculating a standard deviation of forecasted values (SDFV), for each entrant forecasting model from the set of entrant forecasting models; and selecting an entrant forecasting model from the set of entrant forecasting models as the at least one elected forecasting model based on a comparison of the SDFV for each entrant forecasting model from the set of entrant forecasting models.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.