Inventory Forecasting using ML

Situation:
An online retailer faced frequent inventory shortages and inefficiencies due to unpredictable demand. With over 1 million daily sales records across 5 years, the challenge was to build a forecasting system that could anticipate order quantities for hundreds of products, balance stock availability, and reduce costs.

Task:
Our objective was to design and compare multiple time-series forecasting models to predict 12-month future demand for each product. The system needed to capture both trend and seasonality, handle missing data, and minimize prediction error across 300+ product categories.

Action:

  • Data Preparation:
    • Cleaned raw dataset, performed integrity checks, and handled missing values with linear interpolation.
    • Created features (e.g., ActualPrice = ProductPrice – Discounts), aggregated monthly data, and identified discontinued products.
  • Modeling:
    • Implemented ARIMA, SARIMA, SARIMAX for statistical forecasting.
    • Applied Double & Triple Exponential Smoothing (DES, TES) to capture trend and seasonality.
    • Trained an LSTM deep learning model for sequence-based forecasting.
    • Evaluated models using MAE, MAPE, and Percentage Error on 341 products.
  • Analysis:
    • Used ACF/PACF plots to identify lag dependencies.
    • Decomposed time-series into trend, seasonality, and residuals for pattern discovery.
    • Compared model performance across seasonal vs. non-seasonal products.

Result:

  • Achieved <30% error for 78% of products and <10% error for 45% of products by stacking models.
  • SARIMA and TES performed best for products with strong seasonal patterns, while ARIMA and DES excelled on non-seasonal items.
  • LSTM showed potential on complex cases but required more training data.
  • Provided actionable forecasts that helped retailers minimize shortages, improve stock planning, and enhance customer satisfaction.

Download and view the poster below: