Time-series forecasting is a well-studied research area but commonly used forecasting techniques usually fall short when used in a real-time setting for which computation speed, reactiveness to new patterns, robustness, and reliability are essential. In this talk, we will discuss forecasting methods that achieve those goals and will show how Python tools such as NumPy and Cython can help.
Time-series forecasting is a well-studied research area and various forecasting techniques have been developed to fulfill business analytics use-cases. However, forecasting in real-time involves additional challenges as the models cannot be fine-tuned incorporating known externalities or excluding anomalies. The most commonly used algorithms are slow when run on fine-grained data, and they also perform badly in the presence of noise, spikes and dips, as well as when the time-series behavior changes over time (e.g., level shifts, slope changes, etc.). When the data is coming from various sources, the models at work need to be versatile to handle all kinds of patterns. For real-time monitoring purposes, forecasting algorithms need to both run quickly and be reactive to new trends, so as to notify as soon as possible when a problematic outlook is detected. In addition, they also need to be accurate and robust, to avoid false positives and alert fatigue. In this talk, we will discuss forecasting methods that achieve these goals and we will show how Python tools such as NumPy and Cython can help.