This project uses Statistical
and Machine Learning
methods for time series data prediction. As suggested in the paper Statistical and Machine Learning forecasting methods: Concerns and ways forward
, both types of methods are effective. So they are implemented in this project to do one step ahead prediction.
Exponential smoothing
methods are implemented for time series data prediction.
More specifically, the Holt-Winters
methods, which take into account the moving average, trend, and seasonal characteristics.
Inspired by the statistical methods, for machine learning methods, we can draw features based on recent moving averae, trend, and multiple seasonal characteristics. (Exponential smoothing methods can only handle one season)
For example, for on-line service workload, we can assume it has mulitple seasons: hourly, daily, weekly, monthly, and yearly. Thus we can use these seasonal values to predict future values. Let the model to learn how much each season will contribute.
Figure-3 Hourly temperature prediction.
Two machine learning methods: Linear regression and neural-networks regression are applied (using Tensorflow) to do the prediction.
exponential
contains the implementation of exponential smoothing methods;ml
contains the implementation of the machine learning methods.