İçindekiler
1. Neden Talep Tahmini
Tedarik zincirinin tüm kararları — üretim planlaması, envanter seviyeleri, satın alma miktarları, insan gücü planlaması — talep tahminine dayanır.
Hatalı Tahminin Maliyeti:
Aşırı tahmin › Fazla stok › Depolama maliyeti + bağlı sermaye + fire riski
Düşük tahmin › Stok-dışı › Kayıp satış + müşteri kaybı + acil tedarik maliyeti
Kural: MAPE'yi %1 iyileştirmek, tipik bir firmada ₺0.5-2M/yıl tasarruf sağlar.
Hedef MAPE: FMCG: <%15, Otomotiv: <%10, İlaç: <%8
Aşırı tahmin › Fazla stok › Depolama maliyeti + bağlı sermaye + fire riski
Düşük tahmin › Stok-dışı › Kayıp satış + müşteri kaybı + acil tedarik maliyeti
Kural: MAPE'yi %1 iyileştirmek, tipik bir firmada ₺0.5-2M/yıl tasarruf sağlar.
Hedef MAPE: FMCG: <%15, Otomotiv: <%10, İlaç: <%8
2. Tahmin Hata Metrikleri
| Metrik | Formül | Avantaj | Dezavantaj |
|---|---|---|---|
| MAE | |D-F| / n | Yorumlaması kolay, birim cinsinden | Ölçek bağımlı |
| MAPE | |D-F|/D / n × 100 | Ölçekten bağımsız, karşılaştırılabilir | D=0 olduğunda tanımsız |
| RMSE | ((D-F)² / n) | Büyük hataları cezalandırır | Aykırı değere hassas |
| Bias | (F-D) / n | Sistematik yanlılık tespiti | + ve - hatalar birbirini götürür |
| TS (Tracking Signal) | (D-F) / MAD | Modelin hâlâ geçerli olup olmadığı | TS > ±4 › model güncelle! |
3. Hareketli Ortalama (SMA/WMA)
Basit Hareketli Ortalama (SMA):
Ft+1 = (Dt + Dt-1 + ... + Dt-n+1) / n
Ağırlıklı Hareketli Ortalama (WMA):
Ft+1 = w0·Dt + w²·Dt-1 + ... + wn·Dt-n+1
(w0 + w² + ... + wn = 1, w0 > w² > ... > wn)
Ft+1 = (Dt + Dt-1 + ... + Dt-n+1) / n
Ağırlıklı Hareketli Ortalama (WMA):
Ft+1 = w0·Dt + w²·Dt-1 + ... + wn·Dt-n+1
(w0 + w² + ... + wn = 1, w0 > w² > ... > wn)
| Ay | Gerçek | SMA(3) | Hata | WMA(3) | Hata |
|---|---|---|---|---|---|
| Oca | 120 | — | — | — | — |
| Şub | 135 | — | — | — | — |
| Mar | 128 | — | — | — | — |
| Nis | 142 | 127.7 | +14.3 | 130.1 | +11.9 |
| May | 155 | 135.0 | +20.0 | 136.7 | +18.3 |
| Haz | 148 | 141.7 | +6.3 | 144.8 | +3.2 |
| Tem | 162 | 148.3 | +13.7 | 150.9 | +11.1 |
| MAE | 13.6 | 11.1 | |||
4. Basit Üstel Düzleme (SES)
SES Formülü:
Ft+1 = ·Dt + (1-)·Ft
› 0'a yakın: Geçmiş ağırlıklı (kararlı talep)
› 1'e yakın: Son gözlem ağırlıklı (değişken talep)
Seçim Rehberi:
Kararlı talep (gıda temel ürün): = 0.1 - 0.2
Orta değişkenlik (FMCG): = 0.2 - 0.4
Yüksek değişkenlik (moda, elektronik): = 0.4 - 0.6
En iyi : MAPE'yi minimize eden değeri grid search ile bulunur.
Ft+1 = ·Dt + (1-)·Ft
› 0'a yakın: Geçmiş ağırlıklı (kararlı talep)
› 1'e yakın: Son gözlem ağırlıklı (değişken talep)
Seçim Rehberi:
Kararlı talep (gıda temel ürün): = 0.1 - 0.2
Orta değişkenlik (FMCG): = 0.2 - 0.4
Yüksek değişkenlik (moda, elektronik): = 0.4 - 0.6
En iyi : MAPE'yi minimize eden değeri grid search ile bulunur.
5. Holt-Winters Üstel Düzleme (Triple Exponential Smoothing)
Holt-Winters (Additive) — 3 Bileşen:
Düzey: Lt = (Dt - St-m) + (1-)(Lt-1 + Tt-1)
Trend: Tt = ß(Lt - Lt-1) + (1-ß)Tt-1
Mevsimsel: St = (Dt - Lt) + (1-)St-m
Tahmin: Ft+h = Lt + h·Tt + St+h-m
, ß, : Düzleme katsayıları (0‹,ß,‹1)
m: Mevsimsel periyot (12=aylık, 4=çeyreklik, 7=günlük)
Multiplicative model: Mevsimsel genlik büyüyorsa (trend arttıkça)
Additive model: Mevsimsel genlik sabit kalıyorsa
Düzey: Lt = (Dt - St-m) + (1-)(Lt-1 + Tt-1)
Trend: Tt = ß(Lt - Lt-1) + (1-ß)Tt-1
Mevsimsel: St = (Dt - Lt) + (1-)St-m
Tahmin: Ft+h = Lt + h·Tt + St+h-m
, ß, : Düzleme katsayıları (0‹,ß,‹1)
m: Mevsimsel periyot (12=aylık, 4=çeyreklik, 7=günlük)
Multiplicative model: Mevsimsel genlik büyüyorsa (trend arttıkça)
Additive model: Mevsimsel genlik sabit kalıyorsa
6. ARIMA(p,d,q) Modeli
| Parametre | Adı | Belirleme Yöntemi | Açıklama |
|---|---|---|---|
| p | AR mertebesi | PACF grafiği | Kaç gecikmeli gözlem kullanılıyor |
| d | Fark alma | ADF testi (durağanlık) | Serinin durağanlaştırılması |
| q | MA mertebesi | ACF grafiği | Gecikmeli hata terimleri |
Box-Jenkins 4 Adımlı Süreç:
1. Tanımlama: ACF/PACF inceleyerek p, d, q tahmini
2. Tahmin: Parametreleri MLE ile tahmin et
3. Doğrulama: Residual analizi (Ljung-Box testi, Q-Q plot)
4. Tahmin: h adım ileriye tahmin + güven aralığı
SARIMA(p,d,q)(P,D,Q)m: Mevsimsel ARIMA
Örnek: SARIMA(1,1,1)(1,1,1)12 › Aylık mevsimsel veri
1. Tanımlama: ACF/PACF inceleyerek p, d, q tahmini
2. Tahmin: Parametreleri MLE ile tahmin et
3. Doğrulama: Residual analizi (Ljung-Box testi, Q-Q plot)
4. Tahmin: h adım ileriye tahmin + güven aralığı
SARIMA(p,d,q)(P,D,Q)m: Mevsimsel ARIMA
Örnek: SARIMA(1,1,1)(1,1,1)12 › Aylık mevsimsel veri
7. Yöntem Seçim Rehberi
| Veri Durumu | Önerilen Yöntem | Neden |
|---|---|---|
| Trend yok, mevsimsellik yok | SMA veya SES | Basit, hızlı |
| Trend var, mevsimsellik yok | Holt (Double Exp.) | Trendi yakalar |
| Trend + Mevsimsellik | Holt-Winters | Her ikisini de yakalar |
| Karmaşık yapı, yeterli veri | ARIMA/SARIMA | İstatistiksel esneklik |
| Çok değişkenli, büyük veri | XGBoost/LightGBM | Dış değişkenler etkili |
| Hızlı prototip gerekli | Prophet (Meta) | Otomatik mevsimsellik |
| Çok karmaşık, uzun veri | LSTM / N-BEATS | Derin öğrenme gücü |
8. Makine Öğrenmesi ile Talep Tahmini
| Yöntem | Güçlü Taraf | Feature Örnekleri | MAPE |
|---|---|---|---|
| XGBoost | Yüksek doğruluk, hızlı | Lag features, hava durumu, tatil | %8-12 |
| LightGBM | Çok büyük veri setleri | Fiyat, promosyon, rakip aksiyonu | %7-11 |
| LSTM | Uzun vadeli bağımlılıklar | Saf zaman serisi | %9-14 |
| Prophet | Otomatik, açıklanabilir | Tatil, mevsim, trend kırılma | %10-15 |
| Ensemble | En yüksek doğruluk | Birden fazla model birleşimi | %6-10 |
9. Senaryo Karşılaştırma: 12 Aylık Tahmin
| Yöntem | MAPE (%) | RMSE | Bias | Hesaplama Süresi |
|---|---|---|---|---|
| SMA(3) | 18.2 | 24.5 | +8.3 | <1 sn |
| SES (=0.3) | 15.7 | 21.0 | +5.1 | <1 sn |
| Holt-Winters | 11.3 | 15.2 | -1.2 | 2 sn |
| ARIMA(1,1,1) | 10.8 | 14.5 | +0.8 | 5 sn |
| XGBoost | 8.4 | 11.2 | -0.3 | 30 sn |
| Ensemble (HW+XGB) | 7.1 | 9.8 | +0.1 | 45 sn |
10. Vaka Çalışması 1: Perakende ML Tahmini
Perakende Zinciri — ML Destekli Talep Tahmini
| Metrik | ARIMA (Eski) | XGBoost + HW (Yeni) | İyileşme |
|---|---|---|---|
| MAPE (genel) | %18 | %11 | -7 puan |
| MAPE (promosyon) | %32 | %16 | -16 puan |
| Stok-dışı oranı | %6.2 | %3.8 | %39 azalma |
| Bozulan ürün oranı | %2.1 | %1.4 | %33 azalma |
| Yıllık tasarruf | — | — | ₺45M/yıl |
Uygulama: 3.000+ mağaza, 100.000+ SKU. Promosyon takvimi, hava durumu, tatil günleri feature olarak eklendi. Model her hafta otomatik yeniden eğitilir.
11. Vaka Çalışması 2: İlaç Sektörü SARIMA
İlaç Firması — SARIMA ile Üretim Planlaması
| Metrik | Öncesi (Manuel) | Sonrası (SARIMA) |
|---|---|---|
| Tahmin yöntemi | Uzman sezgisi + Excel | SARIMA(1,1,1)(1,1,1)0² |
| MAPE | %22 | %9 |
| Üretim planı sapması | %28 | %11 |
| Hammadde israfı | %8.5 | %3.2 |
| Stok-dışı (kritik ilaç) | %4.1 | %0.8 |
Sonuç: 48 aylık geçmiş veri ile SARIMA modeli kuruldu. Grip sezonu mevsimselliği doğru yakalandı. Kritik ilaçlarda stok-dışı oranı %4.1›%0.8!
12. Sonuç
Talep Tahmini Uygulama Yol Haritası:
Veriyi analiz et › Trend + Mevsimsellik var mı
Baseline kur › SMA veya SES ile başla
İleri model › Holt-Winters veya ARIMA/SARIMA
ML dene › XGBoost, dış değişkenler ekle
Backtesting › Son 12 ayı test seti olarak ayır
MAPE + Bias izle › Tracking Signal kontrol
Otomatik güncelle › Model drift'e karşı haftalık yeniden eğitim
Veriyi analiz et › Trend + Mevsimsellik var mı
Baseline kur › SMA veya SES ile başla
İleri model › Holt-Winters veya ARIMA/SARIMA
ML dene › XGBoost, dış değişkenler ekle
Backtesting › Son 12 ayı test seti olarak ayır
MAPE + Bias izle › Tracking Signal kontrol
Otomatik güncelle › Model drift'e karşı haftalık yeniden eğitim