Importance of Forecasting

Many companies utilize forecasts to help estimate future performance, whether that is future sales and earnings for a retail company, forecasting weather patterns for airlines or tourism, or helping to decide a marketing budget for the next fiscal year. An accurate forecast can be the difference between exceeding expectations and struggling to stay afloat. There are many methods and ways to develop a forecast. Some can take a large effort to effectively tune the forecast and provide an accurate output. Some are relatively easy to develop but lack in accuracy. This article will talk about a Python and R package developed by Facebook called Prophet that falls in the middle of those two.

 

What is Facebook Prophet

Facebook Prophet is a forecasting model that was developed by Facebook’s Core Data Science team in 2017. It uses Machine Learning to help fit additive, non-linear data into trends using various levels of seasonality, as well as the ability to factor in outlying data, such as holidays or sales, as well as deal with missing data. While Prophet is very good at learning and understanding the data that is input, it has a variety of methods to implement human-interpretable parameters to further refine the models. Available as a package in both R and Python, it allows for simple and complex forecasts to be developed with relative ease.

Benefits of Facebook Prophet

There are many benefits to the Prophet package, but I will be focusing on two specifically.

Ease of Use

The Prophet package was designed to allow users to create an accurate forecast in very few steps. It’s as simple as inputting a dataframe of dates and values, initiating the model, creating future dates, then fitting the model. A basic forecast can be accomplished in less than 30 minutes.

Ease of Output

Prophet provides an easy to digest output. The output will include the forecasted value as well as the upper and lower bound. It will also include any seasonality trends that it finds, such as daily/weekly/yearly, and can provide charts to allow the user to visualize the seasonality. The outputted charts also allow a user to easily see how accurate the model is during the training period, as the original data will be charted with the outputted forecasted data. This makes it easy to see if the outputted model is accurate at a quick glance.

Use Cases

Dealing with Irregularities in Seasonality

While Prophet can be simple to use, there are advanced ways to help tune your model. One way is with the help of regressors. A regressor can be input for certain time periods and is essentially a flag that tells the model to treat this period differently. A good example would be a bank that is marketing checking accounts acquires a higher-than-normal number of applications over the span of a few weeks due to fraudulent activity. Allowing Prophet, or any model, to treat that elevated time period as normal will cause future forecasts to potentially see that as normal and forecast further elevated periods. Setting a regressor to that period tells Prophet that this is not normal, and we wouldn’t expect a similar event in the future.

Estimate Impact of Known Events

Regressors can also be helpful to estimate the impact of events. Take for example an E-Commerce company that is running multiple sales that overlap in timing and wants to estimate the impact to site traffic for each individual sale. When just looking at the data it may be tough to differentiate which sale caused which change in volume, but using Prophet, a regressor can be added for each sale even though they overlap. Prophet would then be able to output the estimated effect of each sale across the time period it was active.

Anomaly Detection

Prophet, as well as any time series model, can be used to help ensure your webpage is running as expected and alert you to any potential issues. A page not functioning properly, especially a page that leads to conversions, can be detrimental to your business, especially if not caught quickly. Using Prophet, we can create robust forecasts that can send alerts when volume looks outside what Prophet deems as expected. These alerts allow the business to tackle any potential issues before they become larger problems or cause a significant loss in production.

Conclusion

The Prophet model by Facebook makes creating time series forecasting much simpler than it has been in the past. While creating a basic model is simple, these results need to be properly interpreted and understood to achieve a benefit to your business. It’s important to let the data tell the story, as opposed to forcing the data into a particular story. Conner Insights has experience with interpreting the data as well as fine tuning models to provide actionable results to help drive better business performance.

Conner Insights has leveraged FB Prophet for many business problems such as: understanding the causality of media investments, forecasting demand, pro forma and budget simulation related to media planning, and anomaly detection.

 

Feel free to download a pdf of: "Achieving Business Success with Facebook Prophet"

 

Reach out to sales@connerinsights.com to learn more about how Conner Insights + Solutions can help your organization with forecasting and analytics projects.

 

Request additional information about how Conner Insights & Solutions can help