Daromadni prognozlash
Daromadni prognoz qilish
Daromad - ko’plab omillarning o’zaro ta’siri: kontent/mahsulot takliflari, foydalanuvchilarning xulq-atvori, narxlar va promo, tashqi sharoitlar (bayramlar, sport tadbirlari, valyuta kursi, tartibga soluvchi o’zgarishlar). Ishonchli prognoz - bu bitta «model» emas, balki boshqariladigan kontur: ta’riflar → ma’lumotlar → model → ssenariylar → ekspluatatsiya → solishtirmalar → yaxshilash.
1) Vazifani qo’yish
Biz quyidagilarni bashorat qilamiz: yalpi tushum (GGR), sof tushum (Net), bonuslar/komissiyalardan keyingi tushum, bazaviy valyuta va mahalliy valyutalarda.
Gorizont/qadam: kundalik/haftalik/oylik; kassa uzilishlarini rejalashtirish uchun - kunduzgi, budjet uchun - oylik/choraklik.
Prognoz birligi: brend × mamlakat × platforma × kanal (minimal), keyinchalik ierarxiya bo’yicha kelishiladi.
Maqsadi: budjetlashtirish, trafikni/kontentni xarid qilish, infratuzilma limitlari, moliyaviy kovenantlar.
Xato narxi: kam prognoz (yo’qotilgan talab/kam qoplash) vs qayta prognoz (ortiqcha xaridlar/qayta ta’minlashlar).
2) Moliyaviy konturni aniqlash va kelishish
Formulalar: GGR, Net, chegirmalar (soliqlar, bonuslar, afiliat komissiyalari) - semantik qatlamda versiyalangan.
Kalendar: UTC saqlash + mahalliy taqdimotlar; bayramlar/ish haqi kunlari; sport jadvallari (agar tegishli bo’lsa).
FX-siyosat: kurslar manbai, konversiya sanasi (operatsiya sanasi/davrning o’rtacha kursi), yagona bazaviy valyuta.
Solishtirishlar: buxgalteriya bilan majburiy reconciliation protsedurasi (ruxsat etilgan chegaradagi tafovut).
3) Daromadning drayverlarga dekompozitsiyasi
Bazaviy formula:[
\ text {Daromad} =\text {Trafik }\times\text {Konvertatsiya }\times\text {Chastota }\times\text {Oʻrta chek}
]
Trafik/Aktiv: Foydalanuvchilar/Sessiyalar/Kirishlar.
Konvertatsiya: maqsadli tadbirlarga to’lovchilar ulushi, CR.
Chastota: to’lovchi davrdagi tranzaksiyalar soni.
O’rtacha chek: tranzaksiyaning o’rtacha summasi (bonuslar/chegirmalarni hisobga oling).
Drayverlarni alohida prognozlash, so’ngra omillar hissasini ko’rish uchun kompozitni yig’ish tavsiya etiladi («reja-fakt» ko’prigi).
4) Ma’lumotlar va regressorlar
Vaqtinchalik qatorlar: prognoz birligi bo’yicha kunduzgi/haftalik agregatlar.
Regressorlar X:- promo/bonuslar (intensivligi, turi, qamrovi);
- marketing xarajatlari/impressiyalar/kliplar;
- kontent-iventlar (relizlar, turnirlar, yirik o’yinlar);
- narxlar/limitlar/katalog o’zgarganda;
- FX/inflyatsiya, ob-havo/taqvim (agar ta’sir ko’rsatsa);
- tartibga solish hodisalari (cheklovlar/muzlatish).
- Anomaliyalar/one-off: belgilang, jimgina «tekislamang».
- Yuzlar yoʻq: faqat prognoz paytida mavjud boʻlgan maʼlumotlardan foydalaning.
5) Modellashtirish
5. 1 Bazlayn
Naive/Seasonal Naive/Drift - halol baholash uchun majburiydir.
5. 2 Klassik qatorlar
ETS/ARIMA/SARIMA, TBATS (bir nechta mavsumlar), Prophet (bayramlar bilan tez start).
5. 3 Regressorlar
ARIMAX/ETS + X, taqvim va promo bilan dinamik regressiyalar/FX.
5. 4 Ko’p suriyaliklar/jadvallar
LightGBM/XGBoost/lag/oyna/kalendar bilan chiziqli;
Portfellar va uzun X. uchun vaqtinchalik NN (TFT, N-Beats)
5. 5 Ehtimollik
Kvantil regressiyasi (pinball), Student-t/Gaussian bashoratlari, intervallar uchun kvantil ansambllari (q10/q50/q90).
5. 6. Ierarxiya va kelishish
Mamlakat tuzilmasi uchun Bottom-Up/Top-Down/MinT (xatolarni optimal muvofiqlashtirish) → brend → kanal → platforma.
6) Daromad metrikasining o’ziga xosligi
Ulushlar/munosabatlar (marj, komissiya): alomatni/bo’limni alohida modellashtiring, so’ngra kompozitsiya qiling.
Intermitting komponentlar (chargeback, high-roller): Croston/TSB, zero-inflated, kvantillar bilan alohida komponentlar.
Kannibalizatsiya: yangi aksiya/mahsulotni ishga tushirishda segmentlar (ko’p chiqish modellari yoki cheklangan regressorlar) o’rtasidagi oqimlarni modellashtiring.
Narx/bonuslar bo’yicha elastiklik: koeffitsiyentlarni baholash uchun log-log modellari/kauzal baholar (DiD/SC), so’ngra - what-if.
7) Sifatni baholash va backtesting
Splitlar: mavsumiylik chastotasi (hafta/oy) bilan rolling/expanding origin.
Darajalar metrikasi: WAPE/sMAPE (nolga chidamli), MAE/RMSE.
Ehtimollar: pinball loss, coverage 80/95% interval.
Barqarorlik: segmentlar/bayramlar/kanallar bo’yicha xatolar; out-of-time.
Beyzlayn qoidasi: model asosiy ufqlarda Seasonal Naive dan oshib ketishi kerak.
8) Ssenariylar va noaniqlik
Kvantililar: q10/q50/q90 → «pessimist/baza/optimist».
X stsenariylari: «promosiyasiz/s promo», «FX ± 10%», «yirik event», «tartibga soluvchi cheklovlar».
Metaparametrlar xavfi: elastiklik va mavsumiylikning o’zgarishiga stress-testlar.
Xavf qiymati: shartli shortfall (kam prognoz/qayta prognoz uchun jazo assimetrik) bo’yicha rejalashtiring.
9) Fakt-reja va omillar hissasi (daromad bridge)
Ko’prikni ko’rsating: trend + mavsumiylik + promo + narx/limitlar + FX + shoklar/hodisalar → yakuniy chetga chiqish. Bu ishonchni oshiradi va harakat qilishga yordam beradi (byudjetni qo’shish, promolarni o’zgartirish, praysingni o’zgartirish).
10) MLOps va ekspluatatsiya
Jadval: kunduzgi prognozlar - T + 1 dan 06:00 gacha; haftalik - haftada bir marta; oylik - T + 1/T + 3.
Artefaktlar: fichestor (onlayn/oflayn paritet), modellar reyestri, daromad formulalari versiyalari.
Monitoring: WAPE/coverage oyna bo’yicha, PSI belgilar dreyfi, fid kechikishi, SLA avlod.
Alertlar: xatoning o’sishi> chegara, kalibrlanmagan oraliqlar, ierarxiya kelishmovchiligi.
Fail-safe: ETS/Seasonal Naive ga qaytish; eng yuqori bayramlarda freeze rejimi.
Gisterezis: «miltillamaslik» uchun promo regressorlarni yoqish/o’chirishning turli chegaralari.
Solishtirishlar: moliyaviy hisobotlar bilan kunlik/haftalik reconciliation.
11) Artefaktlar shablonlari
A. Daromad prognozi pasporti
KPI: `NET_REVENUE_EUR_v3`
Ufq/qadam: 8 hafta/kun
Birlik: brend × mamlakat × platforma × kanal; reconciliation: MinT
Регрессоры: `promo_spend`, `content_event_flag`, `price_index`, `fx_rate`, `holiday`
Modellar: ’ARIMAX _ v2’+’LightGBM _ Quantiles _ v4’(ansambl, q10/50/90)
Maqsadlar: WAPE ≤ 8% (kunduzgi), coverage 90% interval ≥ 85%
SLO: 06:00 dan keyin 10 daqiqa ≤ generatsiya; ma’lumotlar oralig’i ≤ 1 soat
Egalari: Finance & Growth Analytics; taftish sanasi, versiya
B. Decision-ready hisoboti (skelet)
Sarlavha: «Daromad, prognoz 8 hafta: q10/q50/q90»
Xavflar: haftasiga 3 - 21% (kutilayotgan shortfall € X- € Y)
Omillar ulushi: + bayramlar, + kontent-event, − FX, − reklama
Tavsiyalar: A/B mamlakatlarida promolarni ko’paytirish, aksiyalarni ko’chirish, FX xedjlari
S. Payplaynning psevdo-kodi
python
1) load y = load_revenue_series(grain=['brand','country','platform','channel'], step='D')
X = load_regressors(['promo_spend','content_event','price_idx','fx_rate','holiday'])
2) features ds = make_lags(y, lags=[1,7,14,28])
ds = add_rolling_stats(ds, windows=[7,14,28])
ds = join_regressors(ds, X)
3) cv cv = rolling_backtest(ds, folds=6, horizon=28, step=7)
4) models m_baseline = ETS(). fit(ds. train)
m_gbm = LGBMQuantiles(q=[0. 1,0. 5,0. 9]). fit(ds. train)
m_arimax = ARIMAX(). fit(ds. train)
5) evaluate & ensemble scores = evaluate([m_baseline,m_gbm,m_arimax], cv, metrics=['WAPE','pinball'])
best = ensemble_quantiles([m_gbm,m_arimax])
6) reconcile & publish f = reconcile_minT(forecast(best), hierarchy=['country','brand','platform','channel'])
publish(f, sla='06:10', owners=['Finance','Growth'])
12) Tez-tez xatolar va anti-patternlar
Nol/past MAPE: WAPE/sMAPE dan foydalaning.
O’rtacha: segmentlar bo’yicha foizlarni o’rtacha qilishdan ko’ra, o’lchamni/bo’limni birlashtirish.
Taqvim/kontent ignori/FX: regressorsiz prognoz «koʻr».
Liki: kelajakdagi fichlar yoki trainga tuzatish kiritish uchun post-faktum.
Nomuvofiqlik: yakuniy summalar mos kelmaydi → reconciliation.
Hech qanday fail-safe yo’q: model bayramlarda suzadi.
Taqqoslashlarning yo’qligi: prognoz boshqaruv/buxgalteriya hisobiga mos kelmaydi.
13) Chiqarishdan oldingi chek-varaq
- Daromad va chegirmalarni aniqlash kelishilgan va versiyalangan
- Taqvim/FX/regressorlar ulangan va sinovdan o’tkazilgan
- Beyzlaynlar backtestingda magʻlubiyatga uchradi; WAPE/coverage boʻyicha maqsadlarga erishildi
- Oraliqlar kalibrlangan; «pessimist/baza/optimist» stsenariylari to’plangan
- Ierarxik prognoz kelishilgan (MinT/Top-Down)
- MLOps: jadval, monitoring, alertlar, fail-safe, runibuk
- Moliyaviy nazorat/buxgalteriya bilan kunlik/haftalik solishtirishlar o’rnatildi
- Ko’prik omillari va tavsiyalari bilan «decision-ready» hisoboti
Jami
Daromadni prognozlash - bu kelishilgan ta’riflar + drayver dekompozitsiyasi + regressorlar + ehtimollik va ierarxik modellar + ssenariylar va intervallar + intizomli MLOps va solishtirmalardir. Bunday kontur «jadval bo’yicha folbinlik» ni tushunarli xavf qiymati va shaffof harakatlar bilan byudjet, marketing va operatsiyalarni rejalashtirish vositasiga aylantiradi.