Why Are People Bashing Facebook Prophet
In 2017, Facebook released Prophet, an open-source forecasting tool in Python and R. The demand for high-quality forecasts often outpaces the analysts producing them. This situation was the motivation behind building a tool like Prophet that makes it easier for both experts and non-experts to deliver high-quality forecasts. Prophet has gained massive popularity among other forecasting tools. To date, the Prophet package has been downloaded 21,819,762 times. As per a report, Prophet also tops among other Python time series packages when ranked by monthly downloads. Credit: PePy That said, many researchers and experts have raised questions about Prophet’s supremacy. Is it really better than other competitors across different scenarios? Prophet’s Origin Producing high-quality forecasts is a challenge. Businesses usually resort to either of the two options to create forecasts — they use completely automatic forecasting techniques or are entirely dependent on human analysts to produce high-quality forecasts. Both the options have their own drawbacks. In the case of complete automation, forecasting techniques produced are brittle and inflexible; incorporating useful assumptions becomes difficult. On the other hand, it is a challenge finding analysts who can create forecasts because it requires people with specialised data science skills with substantial experience. Credit: Facebook To remediate these challenges, Prophet attempts to offer the best of both worlds. Users are not left at the complete mercy of an automatic process; instead, an analyst with no training in time series can help improve and tweak forecasts using easily interpretable parameters. According to Facebook, Prophet offers a straightforward way to create a ‘reasonable and accurate forecast’. Further, the forecasts made by Prophet are customisable in a way that is intuitive to even non-experts. The Prophet procedure is an additive regression model with four main components — a piecewise linear logistic growth curve trend; a yearly seasonal component modelled using Fourier series; a weekly seasonal component created using dummy variables; a user-provided list of important holidays. Challenges A recent study by Lorenzo Menculini and the team compared the performance of AutoRegressive Integrated Moving Average (ARIMA) with Prophet. The study deduced that Prophet performances are much poorer than ARIMA. Furthermore, Prophet did not provide overall improvement when compared with the no-change forecasting model. The experiment also showed that Prophet also performed the poorest in terms of the forecasts it yielded even when it used more data than other models for the fit. The team finally concluded that while Prophet did not deliver for the problems they studied, it could be useful in certain contexts where quick and preliminary forecasts are needed. The challenge with Facebook Prophet is that it does not look for casual relationships between the past and the future. It simply finds the best curve to fit the data using a linear logistic curve component for the external regressor. Another major criticism against Prophet is that its underlying assumptions are simplistic and weak. Facebook, too, mentioned in their blog that the software is good for the business forecasts encountered at Facebook, which refers to hourly, daily or weekly observations with strong multiple seasonalities. Prophet is also designed to deal with holidays that are known in advance while missing observations and large outliers. It is designed to cope with series that undergo regime changes like a product launch and face natural limits due to product-market saturation. Also, since Prophet does not directly consider the recent data points as compared to other models, this affects the performance in cases where prior assumptions do not fit. For reasons mentioned above, Prophet is generally recommended only for time series where the only informative signals are trends, and the residuals are just noise. Can we Completely Dismiss Prophet Despite all the shortcomings of Prophet, it still remains favourable because it is open-source and freely distributed software. It is open for collaboration, and people are free to make pull requests to improve it further. One major advantage with Prophet is that it does not require much prior knowledge of forecasting time series data as it can automatically find seasonal trends with a set of data and offers easy to understand parameters. This means that even a non-statistician can start using it and obtain good results on par with the experts.
A major criticism against Prophet is that its underlying assumptions are simplistic and weak.
A major criticism against Prophet is that its underlying assumptions are simplistic and weak.
["Time Series Forecasting"]
["data science", "Go", "programming_languages:R", "AI", "programming_languages:Go", "Time Series Forecasting", "RAG", "Python", "automation", "programming_languages:Python", "R"]
["AI", "data science", "RAG", "Python", "R", "Go", "automation", "programming_languages:Python", "programming_languages:R", "programming_languages:Go"]
I am a technology journalist with AIM. I write stories focused on the AI landscape in India and around the world with a special interest in analysing its long term impact on individuals and societies. Reach out to me at shraddha.goled@analyticsindiamag.com.