Jamil Sultanli.
← Ana Səhifəyə Qayıt

Marketing Mix Modeling (MMM): Məxfilik Erasında Marketinq Büdcəsinin Riyazi Optimizasiyası

·12 dəqiqə

Giriş: Atribusiya Böhranı və MMM-in İntibahı

Rəqəmsal marketinq dünyası son illərdə görünməmiş bir məxfilik (privacy) inqilabı yaşayır. Apple tərəfindən təqdim edilən iOS 14.5+ (App Tracking Transparency - ATT) yeniliyi, Google-un üçüncü tərəf kukiləri (third-party cookies) mərhələli şəkildə ləğv etməsi və GDPR/CCPA kimi qlobal məlumatların qorunması qanunları ənənəvi izləmə metodlarını sıradan çıxarıb. İllərdir rəqəmsal marketoloqların əsas istinad nöqtəsi olan Multi-Touch Attribution (MTA) və klik-əsaslı (click-based) atribusiya modelləri artıq real performansı əks etdirmir.

İstifadəçi səviyyəsində (user-level) məlumatların izlənilməsinin qeyri-mümkün olduğu bu yeni erada, marketinq büdcələrinin effektivliyini ölçmək və optimallaşdırmaq üçün köhnə, lakin güclü bir metod yenidən səhnəyə çıxır: Marketing Mix Modeling (MMM).

BUNLARI DA OXUYUN

Sıfırdan Copywriting (Kopiraytinq) Bələdçisi: Satış Edən Mətnlərin Yazılma Sırları

Copywriting nədir və necə öyrənilir? Satışları artıran reklam mətnləri yazmağın yolları, düsturları və praktik addımları bu bələdçidə öyrənin.

Oxumağa davam et

"Məxfilik yönümlü yeni dünyada fərdi istifadəçini izləmək deyil, aqreqasiya olunmuş (aggregated) məlumatlar üzərindən riyazi və statistik modellər qurmaq yeganə dayanıqlı çıxış yoludur."

MMM, fərdi istifadəçi məlumatlarına (məsələn, IP ünvanı, kuki ID-si) ehtiyac duymadan, şirkətin tarixi satış məlumatları ilə marketinq xərclərini və xarici faktorları (mövsümlülük, iqtisadi göstəricilər, rəqib fəaliyyətləri) riyazi olaraq əlaqələndirən makro-səviyyəli bir analiz metodudur. Bu məqalədə MMM-in işləmə prinsipini, riyazi təməllərini, müasir atribusiya modelləri ilə fərqini və Python vasitəsilə sadə bir MMM modelinin necə qurulacağını dərindən təhlil edəcəyik.


Marketing Mix Modeling (MMM) Nədir və Necə İşləyir?

Marketing Mix Modeling, marketinq kanallarının (məsələn, Google Ads, Meta Ads, TV, Radio, OOH) satışlara, yeni müştəri qazanımına və ya digər əsas performans göstəricilərinə (KPI) təsirini müəyyən etmək üçün istifadə olunan statistik bir üsuldur. Bu metod adətən Çoxdəyişənli Reqressiya Analizi (Multivariate Regression Analysis) üzərində qurulur.

MMM-in əsas məqsədi aşağıdakı tənliyi həll etməkdir:

Satışlar = Baza Satışlar + Marketinq Kanallarının Təsiri + Xarici Faktorlar + Xəta Payı

  • Baza Satışlar (Baseline Sales): Heç bir marketinq fəaliyyəti olmasa belə, brendin gücü, sadiqlik və təbii tələbat sayəsində baş verəcək satış həcmidir.
  • Marketinq Kanallarının Təsiri: Hər bir marketinq kanalına edilən investisiyanın (spend) satışlara birbaşa və ya gecikmiş töhfəsidir.
  • Xarici Faktorlar (Organic/External Factors): Bayramlar, hava şəraiti, inflyasiya dərəcəsi, rəqiblərin endirim kampaniyaları və s.
  • Xəta Payı (Error Term): Model tərəfindən izah edilə bilməyən təsadüfi dalğalanmalar.

MTA (Multi-Touch Attribution) və MMM-in Müqayisəsi

Marketinq performansını ölçərkən MTA və MMM tez-tez müqayisə edilir. Lakin onlar bir-birini əvəz edən deyil, tamamlayan metodlardır. Aşağıdakı cədvəldə bu iki yanaşmanın fundamental fərqləri göstərilmişdir:

XüsusiyyətMulti-Touch Attribution (MTA)Marketing Mix Modeling (MMM)
Məlumat Səviyyəsiİstifadəçi səviyyəsində (User-level / Granular)Aqreqasiya olunmuş səviyyədə (Aggregated / Macro)
Məxfilik (Privacy)Çox həssasdır, kukilərdən və cihaz ID-lərindən asılıdır100% təhlükəsizdir, fərdi məlumat tələb etmir
Kanal Əhatə DairəsiYalnız rəqəmsal kanalları izləyə bilirHəm rəqəmsal, həm də oflayn (TV, Radio, Billboard) kanalları
Zaman ÇərçivəsiReal-zamanlı və ya qısamüddətli (Taktiki)Həftəlik/Aylıq tarixi məlumatlar (Strateji)
Xarici FaktorlarMövsümlülük və rəqib təsirlərini nəzərə ala bilmirİqtisadiyyat, hava şəraiti və rəqibləri modelə daxil edir
Analiz MetoduQaydalara əsaslanan (Last Click) və ya Maşın ÖyrənməsiEkonometrik və Bayes statistikası (Bayesian Statistics)

MMM-in Riyazi Sütunları: Adstock və Doyma (Saturation) Effektləri

Sadə bir xətti reqressiya modeli marketinq xərclərini birbaşa satışla əlaqələndirə bilməz. Çünki marketinq real dünyada xətti işləmir. İki əsas qeyri-xətti effekti modelə daxil etmək mütləqdir:

1. Adstock Effekti (Gecikmiş və Toplanan Təsir)

Reklam fəaliyyətinin təsiri yalnız onun yayımlandığı gün baş vermir. Bu gün gördüyünüz bir reklamın təsiri beyninizdə qalır və siz məhsulu 3 gün sonra ala bilərsiniz. Bu, Adstock (və ya Carryover) effekti adlanır. Riyazi olaraq, cari zaman kəsiyindəki (t) Adstock dəyəri, cari xərclə əvvəlki dövrlərdən qalan təsirin cəmidir:

Adstock(t) = Spend(t) + (decay * Adstock(t-1))

Burada decay (azalma dərəcəsi) 0 ilə 1 arasında bir əmsaldır. Əgər decay 0.8-dirsə, deməli reklamın təsiri hər gün 20% azalaraq növbəti günə ötürülür.

2. Doyma Effekti (Diminishing Returns / Saturation)

Bir kanala daha çox pul xərclədikcə, əldə edilən hər yeni müştərinin marjinal faydası azalır. Məsələn, Facebook-a gündə 100 AZN xərcləyəndə 10 satış əldə edirsinizsə, 1000 AZN xərcləyəndə 100 satış əldə etməyəcəksiniz. Kanal doyma nöqtəsinə çatır. Bu effekti simulyasiya etmək üçün adətən Hill Funksiyası və ya Eksponensial Azalma Funksiyası istifadə olunur:

Saturation(x) = 1 - exp(-alpha * x)

Burada alpha parametri kanalın nə qədər tez doyma nöqtəsinə çatacağını müəyyən edir.


Python ilə Sadə Bir Marketing Mix Modeling (MMM) Skripti

İndi isə praktiki olaraq Python-da sadə bir MMM modelinin necə qurulacağına baxaq. Bu nümunədə biz tarixi reklam xərcləri (TV, Radio, Digital) və satış məlumatları əsasında Adstock transformasiyası tətbiq edəcək və scikit-learn vasitəsilə Ridge Reqressiya modeli quracağıq.

import numpy as np
import pandas as pd
from sklearn.linear_model import Ridge
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import r2_score

# 1. Sintetik Məlumat Bazasının Yaradılması (100 həftəlik məlumat)
np.random.seed(42)
n_weeks = 100

data = pd.DataFrame({
    'week': range(1, n_weeks + 1),
    'spend_tv': np.random.exponential(scale=5000, size=n_weeks),
    'spend_radio': np.random.exponential(scale=2000, size=n_weeks),
    'spend_digital': np.random.exponential(scale=8000, size=n_weeks),
    'baseline_sales': 15000, # Sabit baza satışı
    'seasonality': np.sin(np.linspace(0, 4 * np.pi, n_weeks)) * 3000 # Mövsümlülük təsiri
})

# 2. Adstock Funksiyasının Tərifi
def apply_adstock(spend_series, decay_rate):
    adstock = np.zeros(len(spend_series))
    for t in range(len(spend_series)):
        if t == 0:
            adstock[t] = spend_series[t]
        else:
            adstock[t] = spend_series[t] + decay_rate * adstock[t-1]
    return adstock

# Hər kanal üçün fərqli azalma (decay) dərəcəsi tətbiq edirik
data['adstock_tv'] = apply_adstock(data['spend_tv'], decay_rate=0.6)
data['adstock_radio'] = apply_adstock(data['spend_radio'], decay_rate=0.3)
data['adstock_digital'] = apply_adstock(data['spend_digital'], decay_rate=0.15)

# Satışların (Target) simulyasiya edilməsi (Hər kanalın fərqli effektivlik əmsalı var)
data['sales'] = (
    data['baseline_sales'] +
    data['seasonality'] +
    data['adstock_tv'] * 0.4 +
    data['adstock_radio'] * 0.8 +
    data['adstock_digital'] * 1.2 +
    np.random.normal(0, 1000, n_weeks) # Təsadüfi xəta payı
)

# 3. Modelin Hazırlanması
# Müstəqil dəyişənlər (X) və Asılı dəyişən (y)
X = data[['adstock_tv', 'adstock_radio', 'adstock_digital', 'seasonality']]
y = data['sales']

# Multikolliniarlığın qarşısını almaq üçün Ridge Reqressiyadan istifadə edirik
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)

model = Ridge(alpha=1.0)
model.fit(X_scaled, y)

# 4. Nəticələrin Qiymətləndirilməsi
y_pred = model.predict(X_scaled)
r2 = r2_score(y, y_pred)

print("--- MODEL NƏTİCƏLƏRİ ---")
print(f"Modelin Dəqiqliyi (R-squared): {r2:.4f}")
print(f"Baza Satış (Intercept): {model.intercept_:.2f} AZN")
for col, coef in zip(X.columns, model.coef_):
    print(f"{col.upper()} kanalının çəki əmsalı (Scaled Coefficient): {coef:.2f}")

Bu kod bloku, marketinq kanallarının satışa olan real töhfəsini və mövsümlülük faktorunu ayıraraq hər bir kanalın effektivlik çəkisini (coefficient) hesablayır. Real layihələrdə bu əmsallar vasitəsilə Büdcə Optimizasiyası alqoritmləri (məsələn, scipy.optimize) işə salınır və ROI-ni maksimallaşdıracaq optimal büdcə bölgüsü tapılır.


Müasir MMM Alətləri: Meta Robyn və Google LightweightMMM

Şirkətlər sıfırdan öz MMM modellərini qurmaq əvəzinə, texnologiya nəhənglərinin təqdim etdiyi açıq mənbəli (open-source) kitabxanalardan istifadə edirlər. Hazırda bazarda iki əsas rəqib var:

1. Meta Robyn (R dili)

Meta tərəfindən hazırlanan Robyn, Evolyusiya Alqoritmləri (Evolutionary Algorithms) vasitəsilə minlərlə fərqli model kombinasiyasını sınaqdan keçirir və ən optimal Pareto cəbhəsini (Pareto Front) tapır.

  • Üstünlükləri: Çoxdəyişənli optimallaşdırma, Ridge reqressiya təməlli, istifadəçi müdaxiləsini minimuma endirən avtomatlaşdırılmış hiper-parametr tənzimlənməsi.
  • Mənfi cəhəti: R dilində yazılıb, Python mühitində işlətmək əlavə inteqrasiya tələb edir.

2. Google LightweightMMM (Python)

Google-un hazırladığı bu kitabxana Bayes Statistikası (Bayesian Inference)Numpyro üzərində qurulub.

  • Üstünlükləri: Python ekosisteminə tam uyğundur. Bayes yanaşması sayəsində modelə "prior" (əvvəlki təcrübələrə əsaslanan ehtimallar) daxil etmək mümkündür. Məsələn, əgər keçən il keçirdiyiniz A/B testində Google Ads-in ROI-nin 2.5 olduğunu bilirsinizsə, bunu modelə ilkin məlumat (prior) kimi daxil edə bilərsiniz.
  • Mənfi cəhəti: Böyük verilənlər bazalarında Bayes nümunə götürmə (sampling) prosesi vaxt apara bilər.

MMM Tətbiqində Qarşıya Çıxan Əsas Problemlər və Həll Yolları

MMM mükəmməl bir alət olsa da, onun da özünəməxsus çətinlikləri və limitləri mövcuddur:

  1. Məlumat Keyfiyyəti və Həcmi (Data Quality):

    • Problem: MMM-in düzgün işləməsi üçün ən azı 2-3 illik həftəlik məlumat tələb olunur.
    • Həll: Şirkətdə məlumat anbarı (Data Warehouse) qurulmalı, maliyyə və marketinq xərcləri eyni zaman kəsiyində (məsələn, hər bazar ertəsi) sinxronlaşdırılmalıdır.
  2. Multikolliniarlıq (Multicollinearity):

    • Problem: Eyni vaxtda həm TV-də, həm də rəqəmsalda böyük kampaniyalar keçirildikdə, model hansı satışın hansı kanaldan gəldiyini ayırmaqda çətinlik çəkir.
    • Həll: Ridge və ya Lasso reqressiyası kimi requlyarizasiya metodlarından istifadə etmək və ya modelə Bayes "prior"ları əlavə etmək.
  3. Korrelyasiya vs Səbəbiyyət (Correlation vs Causality):

    • Problem: Milad bayramında satışların artması reklamın gücü yoxsa təbii tələbatdır?
    • Həll: Modelə mütləq şəkildə mövsümlülük, bayram günləri və iqtisadi indekslər (məsələn, inflyasiya və ya milli valyutanın məzənnəsi) nəzarət dəyişəni (control variables) kimi daxil edilməlidir.

Nəticə və Gələcək Perspektivlər

Kukisiz gələcək və məxfilik qanunları marketoloqları daha ağıllı və elmi metodlardan istifadə etməyə məcbur edir. Marketing Mix Modeling (MMM), rəqəmsal və oflayn dünyanı birləşdirən, məxfilik qaydalarına tam cavab verən və şirkətin strateji qərarlarını (məsələn, illik büdcənin bölüşdürülməsi) elmi əsaslarla formalaşdıran ən güclü analitik metoddur.

Gələcəyin uğurlu rəqəmsal marketinq strategiyası Hibrid Ölçmə Modelinə əsaslanacaq:

  • Makro Səviyyə (Strateji): Büdcə bölgüsü və ROI analizi üçün MMM.
  • Taktiki Səviyyə (Gündəlik): Kampaniya daxili optimallaşdırma üçün Server-Side TrackingFirst-Party Data.
  • Doğrulama (Validation): Modelin nəticələrini yoxlamaq üçün mütəmadi olaraq keçirilən İnkrementallıq Testləri (Incrementality Testing / Lift Tests).

Əgər şirkətiniz ildə 100,000 AZN-dən çox marketinq büdcəsi idarə edirsə, artıq bu gün tarixi məlumatlarınızı toplamağa və ilk MMM modelinizi qurmağa başlamalısınız. Riyazi modellərə əsaslanan qərarlar, intuitiv qərarlardan hər zaman daha yüksək ROI gətirir.

JS
YAZAR

Jamil Sultanli

Rəqəmsal marketinq, SEO və startuplar üzrə məsləhətçi. Datanın tətbiqi ilə işlərin miqyaslanması (Scaling) və inkişaf (Growth) strategiyalarının idarə olunması haqqında yazır.

Bunları da oxuyun