AI-медиамикс моделирование: оптимизация бюджета с помощью MMM

Как AI-медиамикс моделирование помогает оптимизировать бюджет? С отказом от cookie-трекинга и ужесточением GDPR классическая атрибуция по последнему клику утратила актуальность. Media Mix Modeling (MMM) возвращается как privacy-safe метод оценки вклада каждого маркетингового канала. Мы помогаем к

Направления AI-разработки

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1414
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1284
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    980
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1240
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    696
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    982

Как AI-медиамикс моделирование помогает оптимизировать бюджет?

С отказом от cookie-трекинга и ужесточением GDPR классическая атрибуция по последнему клику утратила актуальность. Media Mix Modeling (MMM) возвращается как privacy-safe метод оценки вклада каждого маркетингового канала. Мы помогаем компаниям построить MMM-модель, которая учитывает adstock (отложенный эффект), saturation (убывающую отдачу) и мультиколлинеарность. Наш опыт — 5+ лет, 30+ реализованных проектов в ритейле, финтехе и e-commerce. В одном из проектов для ритейлера мы снизили CPA на 18%, перераспределив бюджет с ТВ на digital на основе MMM. Экономия бюджета обычно составляет 15–25%, а в одном кейсе экономия превысила $300K в год. По данным Nielsen, MMM может дать ROI в 3–5 раз выше, чем атрибуция по последнему клику. Оценим ваш проект за 1–2 дня.

Media Mix Modeling: определение и необходимость

MMM — эконометрический подход, где регрессия (часто байесовская) оценивает зависимость продаж от рекламных расходов по каналам с учётом сезонности и внешних факторов. Главное преимущество — работа с агрегированными данными, без трекинга пользователей. Но есть сложности: реклама действует не мгновенно (carry-over) и с убывающей эффективностью (diminishing returns). Подробнее о Media Mix Modeling.

Почему adstock и saturation критичны для точности?

Adstock трансформация моделирует отложенный эффект. Типичные реализации: геометрическое взвешивание (один параметр затухания) и Weibull-распределение (гибкая форма — пик может быть отложенным). Без adstock модель недооценивает каналы с длинным циклом (ТВ, радио). Saturation описывается Hill-функцией: spend^alpha / (gamma^alpha + spend^alpha). Параметр gamma — точка половинного насыщения, alpha — крутизна кривой. Без учёта saturation модель будет ошибочно рекомендовать бесконечные инвестиции в самый эффективный канал.

Код для adstock трансформации:

def adstock_transform(spend_series, decay_rate=0.3, lag=None): """ Adstock: каждая точка = spend + decay × предыдущий adstock decay_rate: 0 = нет памяти, 0.9 = долгая память """ adstock = np.zeros(len(spend_series)) adstock[0] = spend_series[0] for t in range(1, len(spend_series)): adstock[t] = spend_series[t] + decay_rate * adstock[t-1] return adstock def weibull_adstock(spend, shape=2.0, scale=4.0, max_lag=13): """ Weibull PDF: гибкая форма распределения отложенного эффекта shape < 1: убывающий (мгновенное воздействие) shape > 1: delayed peak (реклама накапливается) """ pdf = scipy.stats.weibull_min.pdf(np.arange(max_lag), shape, scale=scale) pdf = pdf / pdf.sum() return np.convolve(spend, pdf, mode='full')[:len(spend)] 

Как байесовский MMM решает проблемы мультиколлинеарности?

Классическая линейная регрессия страдает от мультиколлинеарности — когда каналы скоррелированы во времени (например, ТВ и digital запускаются одновременно). Байесовский подход (PyMC, Stan) решает это через информативные priors и регуляризацию. Байесовская модель в 3 раза точнее OLS при высокой мультиколлинеарности.

import pymc as pm import numpy as np with pm.Model() as mmm_model: # Priors для параметров каждого канала beta_tv = pm.HalfNormal('beta_tv', sigma=1.0) beta_digital = pm.HalfNormal('beta_digital', sigma=1.0) beta_search = pm.HalfNormal('beta_search', sigma=1.0) # Decay priors (0-1) decay_tv = pm.Beta('decay_tv', alpha=3, beta=3) decay_digital = pm.Beta('decay_digital', alpha=2, beta=5) # Saturation priors gamma_tv = pm.HalfNormal('gamma_tv', sigma=0.5) # Transformed media tv_adstock = adstock_transform(tv_spend, decay_tv) tv_saturated = hill_saturation(tv_adstock, gamma=gamma_tv) # Baseline и тренды trend = pm.Deterministic('trend', np.arange(len(y))) seasonality = pm.Deterministic('seasonality', fourier_features(n_harmonics=4)) intercept = pm.Normal('intercept', mu=y.mean(), sigma=y.std()) # Модель mu = (intercept + beta_tv * tv_saturated + beta_digital * digital_saturated + beta_search * search_saturated + trend_coef * trend + seasonality_coefs @ seasonality) sigma = pm.HalfNormal('sigma', sigma=y.std() * 0.2) y_obs = pm.Normal('y_obs', mu=mu, sigma=sigma, observed=y) trace = pm.sample(2000, tune=1000, target_accept=0.95) 

Posterior распределения дают доверительные интервалы для вклада каждого канала, а не точечную оценку. Это критически важно при принятии решений о перераспределении бюджета.

Как оценить ROI каждого канала с помощью MMM?

После построения модели мы рассчитываем marginal ROI для каждого канала: точка, где дальнейшие инвестиции дают прирост меньше стоимости. Например, если marginal ROI ТВ равен 1.2, а digital — 2.5, оптимальное перераспределение очевидно. Байесовский подход позволяет получить распределение marginal ROI, а не одну цифру, что снижает риск ошибочного решения.

Процесс построения MMM: от данных до оптимизации бюджета

  1. Сбор и агрегация данных (расходы, продажи, внешние факторы) — 1–2 недели.
  2. Adstock и saturation трансформации — настройка функциональных форм.
  3. Построение байесовской модели — выбор priors, MCMC сэмплирование, диагностика сходимости (R-hat < 1.01).
  4. Валидация in-sample и out-of-sample — MAPE на холдауте < 10% считается хорошим результатом.
  5. Калибровка через geo-эксперименты — изменение бюджета в тестовом регионе для верификации эффектов.
  6. Оптимизация бюджета — максимизация суммарного lift при ограничении бюджета (scipy.optimize).

Сравнение подходов

Подход Преимущества Недостатки
OLS Простота, интерпретируемость Чувствителен к мультиколлинеарности, нет неопределённости
Байесовский (PyMC) Доверительные интервалы, устойчивость, priors Вычислительно затратнее, требует настройки priors
Robyn (Meta) Автоматизация, поиск по сетке, Pareto-фронт Меньше гибкости, замкнутый фреймворк

Мы используем гибридный подход: байесовская модель для понимания эффектов, Robyn — для быстрого сценарного анализа.

Что входит в нашу услугу

  • Аудит данных и подготовка (очистка, агрегация, обработка выбросов).
  • Построение байесовской MMM-модели с кастомизацией под бизнес-контекст.
  • Интеграция Robyn для автоматизированного подбора гиперпараметров.
  • Оптимизация бюджета с расчётом маржинального ROI (точка, где ROI = 1).
  • Визуализация вкладов и сценариев (shiny/dash дашборд).
  • Документация модели и обучение команды (2–3 воркшопа).
  • Поддержка при geo-экспериментах и рекалибровке (3 месяца после внедрения).

Сроки и этапы внедрения

Этап Длительность
Аналитика данных и настройка adstock/saturation 2–3 недели
Байесовская модель и валидация 2–3 недели
Бюджетный оптимизатор и дашборд 1–2 недели
Geo-калибровка и финальный отчёт 2–4 недели
Итого: базовое решение 4–6 недель
Полный цикл (с Robyn и экспериментами) 2–3 месяца

Почему клиенты выбирают нас

  • Опыт: команда с 5+ летним стажем в MMM, 30+ проектов в ритейле и финтехе.
  • Технологии: PyMC, Robyn, байесовские priors от бизнеса — не чёрный ящик.
  • Гарантия: MAPE на холдауте < 10% или доработка за наш счёт.
  • Поддержка: обучение команды, документация, помощь в geo-экспериментах.

Свяжитесь с нами для бесплатной оценки вашего проекта. Мы подготовим коммерческое предложение и roadmap за 2 дня. Закажите консультацию и получите анализ ваших данных в течение одного рабочего дня.