A global pharmaceutical corporation came to us looking for ways to anticipate the number of sales for two of their products that would need to be prescribed within 30 days. Their ultimate goal was to have an accurate forecasting model that would help their sales team to make more informed decisions.
We developed two forecasting models, one for each product, to predict the number of sales within the 30 day timeframe. One of the main characteristics of this solution includes the stacking of different Machine Learning models, and with this approach, the solution was able to surpass previously challenging points related to the forecasting domain, such as dealing with non-stationary data, trending estimations, or innovation detection
We started by dividing the data sources into two different datasets, each one representing each of the company’s products. The first stage focused on preparing the data by applying common transformations, such as calculating target variables, normalizing the data, and preparing the data from a temporal perspective to match the forecasting objective.
Another important stage in this process is the feature engineering step. It’s important to take into account that the data will follow a temporal behavior, which means that designing features with the ability to catch crucial temporal relationships will have a big impact on the performance of the model.
Another important decision was regarding how the solution would work in a production environment. The entire process was automated to retrain the models on a daily basis.This enabled making the most accurate forecasting for the next 30 days as the models were always trained using the most up to date data
The system is capable of making daily predictions for sales over the next 30 days, and the system achieved an average accuracy level of 98.5% when predicting sales for both products. This high level of accuracy allows the company to include this forecasting in their business decision workflows and enrich their data-driven decisions.