Folio — EditionSakina Saifuddin© 2026
2021

A journey through code, data, and intelligent systems.

Folio — EditionSakina Saifuddin© 2026
SS
01Intro02Work03What I Build04Achievements05Experience06Expertise07Contact
Case studyClick a page, swipe, or use ← → to turn

RETAIL SALESFORECASTING WITHMACHINE LEARNING

RETAIL FORECASTING

  • Forecasts store-level sales to support inventory planning.
  • Built on more than 3 million sales records.
  • LightGBM beat two other models on unseen data.
3M+sales records
0.4516best test error (RMSE)
Visit the portfolio
website at:
sakina-saifuddin / works
22619
Retail ForecastingSakina Saifuddin

RETAIL SALESFORECASTING WITHMACHINE LEARNING

Forecast demand for every store
Fig. 1 — Sales spike, trend and change with the seasons.1
  1. Task
  2. My work
  3. Results
  4. Outcome

Forecast demand for every store

  • Sales change by store, product, promotions and holidays.
  • About 31% of records had zero sales.
  • A simple straight-line model would not be accurate.
31%of records had zero sales
2
Clean data, time-aware features
Fig. 2 — Cleaning missing values and building features.3
  1. Task
  2. My work
  3. Results
  4. Outcome

Clean data, time-aware features

  • Merged sales with stores, oil prices, promotions and holidays.
  • Filled each missing value based on what the field meant.
  • Built sales lags and rolling averages without peeking at future days.
104features fed to the model

Tools: Python · Pandas

4
A fair, time-ordered model test
Fig. 3 — Five time-ordered validation folds.5
  1. Task
  2. My work
  3. Results
  4. Outcome

A fair, time-ordered model test

  • Trained on earlier dates, tested on later dates.
  • Compared Linear Regression, Random Forest and LightGBM.
  • Final test on rows the models had never seen.
602,316unseen rows in the final test

Tools: Scikit-learn · LightGBM

6
LightGBM was the most accurate
Fig. 4 — LightGBM had the lowest error.7
  1. Task
  2. My work
  3. Results
  4. Outcome

LightGBM was the most accurate

Lower error is better.

0.4516LightGBM error (best)
0.4845Random Forest error
1.3541Linear Regression error
3M+sales records used
8
A forecast for inventory planning
Fig. 5 — Predictions turned back into real sales values.9
  1. Task
  2. My work
  3. Results
  4. Outcome

A forecast for inventory planning

  • Tree models handled promotions and seasons far better.
  • Predictions read as real sales numbers.
  • Next: stockout metrics and prediction ranges.
10
11

Technologies

Python & Pandas
Data preparation.
Scikit-learn
Baselines and validation.
LightGBM
The best forecasting model.
What I did
  • Merged and cleaned 3 million+ sales records.
  • Built the lag, rolling and calendar features.
  • Ran the time-ordered model comparison.
12

RETAIL FORECASTING

  • Forecasts store-level sales to support inventory planning.
  • Built on more than 3 million sales records.
  • LightGBM beat two other models on unseen data.
3M+sales records
0.4516best test error (RMSE)
Visit the portfolio
website at:
sakina-saifuddin / works
22619
Cover