← Назад к вопросам

Что дает линеаризация для ratio-метрик?

2.8 Senior🔥 101 комментариев
#Ratio-метрики#Статистика и математика

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI26 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Линеаризация ratio-метрик: мощный инструмент статистики

Это продвинутая техника, которая решает множество проблем с анализом ratio-метрик. Я регулярно использую её в A/B тестировании.

Проблема, которую решает линеаризация

Напоминание: почему ratio-метрики сложные

Когда мы считаем ARPU или конверсию через простое деление, мы получаем:

  • Высокую дисперсию (разброс)
  • Ненормальное распределение
  • Плохую статистическую мощность (долго ждём результаты A/B теста)

Пример: ARPU может быть 0, $5, $100, $1000 в разных случаях. Это создаёт огромный разброс, и нам нужно больше трафика для статистической значимости.

Что такое линеаризация (Linearization)?

Это математический трюк: преобразовать ratio в линейное выражение, чтобы упростить анализ.

Формула (Taylor expansion):

Ratio = X / Y
Линеаризованный Ratio ≈ X/μ_Y - μ_X / (μ_Y)² × (Y - μ_Y)

Где:
μ_Y = средний знаменатель
μ_X = средний числитель

На практике (для аналитика, который не любит математику):

Вместо того, чтобы считать ARPU для каждого пользователя, мы считаем:

  1. Доход пользователя
  2. Вычитаем среднее
  3. Это даёт нам "линеаризованный" доход

Конкретный пример: ARPU линеаризация

Сценарий: тестируем новый способ оплаты

Контроль:

  • Юзер 1: $10
  • Юзер 2: $20
  • Юзер 3: $0
  • Юзер 4: $50
  • ARPU = ($10+$20+$0+$50)/4 = $20

Тест:

  • Юзер 1: $15
  • Юзер 2: $25
  • Юзер 3: $5
  • Юзер 4: $60
  • ARPU = ($15+$25+$5+$60)/4 = $26.25

Прирост: 31%

Стандартный тест (t-test на ARPU):

  • Дисперсия ARPU очень высока
  • Нужно 1000+ пользователей, чтобы доказать значимость

С линеаризацией:

  • Линеаризуем каждый доход: доход - средний_доход
  • Контроль: -10, 0, -20, 30
  • Тест: -11.25, -1.25, -21.25, 33.75
  • Теперь дисперсия меньше, и t-test работает лучше
  • Можем обнаружить эффект с 300-400 пользователями (вместо 1000)

Преимущества линеаризации

1. Уменьшение дисперсии

Главное преимущество: статистическая мощность растёт.

  • Меньше шума в данных
  • Легче обнаружить реальные эффекты
  • A/B тест завершается быстрее

На цифрах:

  • Без линеаризации: нужно 10000 пользователей на группу
  • С линеаризацией: нужно 3000-5000 пользователей
  • Это 2-3x ускорение A/B теста

2. Нормальное распределение

Математический факт: линеаризованная метрика ближе к нормальному распределению.

  • Значит, классический t-test работает корректнее
  • Доверительные интервалы более точные
  • p-values более надёжные

3. Аддитивность компонентов

Это ключевой момент:

Bez линеаризации: если ARPU вырос на 20%, непонятно, почему (доход вырос? пользователей стало меньше?)

С линеаризацией: мы видим прямо в числах:

  • Часть прироста от доходов
  • Часть прироста от уменьшения пользователей
  • Это помогает интерпретировать результаты

Пример линеаризации для конверсии

Конверсия = Покупки / Визиты

Линеаризованная конверсия:

Для каждого пользователя:
Линеаризованная конверсия = (Покупки / Средняя_конверсия) - (Средние_визиты / Средняя_конверсия) × (Визиты / Средние_визиты - 1)

На практике:

  • Если конверсия в контроле = 5%, а в тесте = 5.5%
  • Просто t-test нежен
  • С линеаризацией можем сказать: эффект значимый с 90% вероятностью (при N=5000)

Когда линеаризация особенно эффективна

1. Метрики с высокой дисперсией:

  • ARPU (часто есть выбросы: один юзер потратил $100000)
  • Cost per acquisition
  • Revenue per user

2. Метрики с редкими событиями:

  • Конверсия (если базовая конверсия низкая, как 0.5%)
  • Purchase rate
  • Signup rate

3. Когда нужна скорость:

  • Если каждый день A/B теста стоит денег (реклама, сервер)
  • Линеаризация ускоряет достижение статистической значимости

Практический инструмент: CUPED

CUPED = Controlled-experiment Using Pre-Experiment Data

Это расширение линеаризации:

  1. Берём исторические данные от пользователя (его прошлый ARPU)
  2. Вычитаем из текущего (текущий ARPU - исторический ARPU)
  3. Это разность имеет гораздо меньше дисперсии
  4. A/B тест становится чувствительнее в 2-3 раза

Пример:

  • Юзер 1 исторически: $20/месяц, в тесте: $22/месяц →差 = $2
  • Юзер 2 исторически: $100/месяц, в тесте: $110/месяц → 差 = $10

Вместо сравнения абсолютных ARPU, сравниваем приросты → меньше шума.

Когда линеаризация может не помочь

1. Очень маленькие выборки (<100 пользователей)

  • Линеаризация даёт некорректные оценки
  • Лучше использовать bootstrap

2. Если нарушения очень радикальны

  • Например, знаменатель может быть ноль
  • Тогда нужны специальные трансформации

3. Когда нет исторических данных (CUPED)

  • Если пользователь новый, исторический ARPU = 0
  • CUPED работает хуже

Мой практический совет

Порядок применения техник:

  1. Сначала: обычный t-test на ratio
  2. Если не значимо: применить линеаризацию
  3. Если всё ещё не значимо: попробовать CUPED (если есть история)
  4. Если не работает: bootstrap или непараметрические тесты

Ошибка, которую я делал: пытаться линеаризовать всё подряд. На самом деле, если выборка большая (>5000), простой t-test работает нормально и без линеаризации.

Вывод

Линеаризация — это техника для ускорения A/B тестов на ratio-метриках. Она уменьшает дисперсию, что позволяет:

  • Быстрее обнаружить эффекты (в 2-3 раза)
  • Получить более точные доверительные интервалы
  • Лучше интерпретировать результаты

Но это не панацея — правильная гипотеза и чистые данные важнее математики.