| CPC G06F 16/2477 (2019.01) [G06F 16/221 (2019.01); G06F 16/2282 (2019.01)] | 20 Claims |

|
1. A computer-implemented method executed by data processing hardware that causes the data processing hardware to perform operations comprising:
receiving a time series forecasting query requesting a time series forecast, the time series forecast comprising a forecast of future data based on current data;
training a plurality of machine learning models for the time series forecast using an order of a moving-average model, wherein:
each respective machine learning model of the plurality of machine learning models is trained on the same data blocks of the current data using a different order of the moving-average model; and
each machine learning model of the plurality of machine learning models is trained to predict the time series forecast based on the same data blocks of the current data;
for each respective model of the plurality of machine learning models, determining, using the current data, a respective prediction error of the respective machine learning model;
selecting, using the respective prediction error of each respective machine learning model, a single one of the plurality of machine learning models that best fits the respective time series forecast;
forecasting the future data based on the selected best fitting machine learning model and the current data; and
returning the forecasted future data for the time series forecast requested by the time series forecasting query.
|