О себе
Привет! Меня зовут Виктор Харламов. Я DS в Т-Банке, исследователь в МИАН и аспирант мехмата МГУ. Моя основная работа - оптимизировать продукты и процессы с помощью статистики и ML.
О чём канал
Здесь я буду делиться обзорами подходов из научных статей и докладов — в том числе по последовательному анализу, uplift моделированию, causal inference и методам сокращения дисперсии. Главный фокус - практическая польза и опыт приложения в реальных задачах.
О постах
Know-how не читают каждый день, так что посты будут выходить нечасто. Постараюсь обходиться без воды - и без академического перегруза.
Подписывайтесь — первый разбор скоро!
Привет! Меня зовут Виктор Харламов. Я DS в Т-Банке, исследователь в МИАН и аспирант мехмата МГУ. Моя основная работа - оптимизировать продукты и процессы с помощью статистики и ML.
О чём канал
Здесь я буду делиться обзорами подходов из научных статей и докладов — в том числе по последовательному анализу, uplift моделированию, causal inference и методам сокращения дисперсии. Главный фокус - практическая польза и опыт приложения в реальных задачах.
О постах
Know-how не читают каждый день, так что посты будут выходить нечасто. Постараюсь обходиться без воды - и без академического перегруза.
Подписывайтесь — первый разбор скоро!
🔥22❤6👍5🐳3💩2
Последовательный анализ Вальда
TL;DR
Позволяет ускорить тесты конверсий примерно на 60%. Эффективен в случае быстро вызревающих метрик и при отсутствии сезонностей.
Почему обсуждается?
Этот пост открывает серию разборов последовательных критериев - каждый со своими предпосылками, достоинствами и ограничениями. Начинаем с классики - анализа Вальда.
Проблема
Хотим проводить эксперименты быстрее. Fixed-horizon подход требует заранее выбрать размер выборки Ν. При таком размере выборки мы сможем уверенно различить гипотезу Η(0) и альтернативу Η(1), разница между которыми равна MDE. Но можно ли сократить N, если анализировать данные по мере поступления, не дожидаясь завершения эксперимента?
Предположения
– Заранее определяем MDE.
– Знаем параметрическое семейство для выборки (например, бернуллиевское).
– Выборка из независимых и одинаково распределённых величин.
Решение
Фиксируем:
– вероятности ошибок α и β,
– минимальный эффект δ (MDE).
Вычисляем:
– границы A и B (по α и β).
Во время теста:
1. Добавляем наблюдение x.
2. Считаем логарифм отношения правдоподобий λ(x).
3. Если λ(x) < A → принимаем H(0);
если λ(x) > B → принимаем H(1);
иначе — продолжаем.
Алгоритм реализован для случая конверсий.
Достоинства
Алгоритм подходит для использования на быстро вызревающую конверсию в качестве целевой метрики теста.
– Минимизирует среднее N при H(0) и при H(1). Практическое ускорение порядка 60%.
– Позволяет быстрее остановить тест, если изменения больше MDE δ.
– Величины A, B, λ(x) считаются быстро и просто.
– Можно оценить среднюю длительность теста при планировании эксперимента.
Ограничения
Общие для последовательных критериев
– Очень сложно применять, если метрика долго вызревает.
– При завершении теста мы не всегда можем построить хороший доверительный интервал для значения метрики.
– Обладает меньшей мощностью в сравнении с fixed horizon подходом. Это не позволяет всегда останавливать тест быстрее, чем в fixed horizon подходе.
Специфичные для Вальда
– Если мы не знаем параметрическое семейство, величину λ(x) не посчитать. Это существенно для неконверсий.
– Требует, чтобы данные были одинаково распределены. При внутридневной сезонности критерий становится некорректным.
– Сложно адаптировать на тесты с несколькими выборками и метриками.
Библиография
– Вальд А. Последовательный анализ. – 1960.
– Подглядывай правильно: как ускорить принятие решений с помощью последовательного анализа.
– Реализация для конверсий.
– Калькулятор для среднего размера выборки.
– Tartakovsky A., Nikiforov I., Basseville M. Sequential analysis: Hypothesis Testing and Changepoint Detection. – CRC Press, 2014.
TL;DR
Позволяет ускорить тесты конверсий примерно на 60%. Эффективен в случае быстро вызревающих метрик и при отсутствии сезонностей.
Почему обсуждается?
Этот пост открывает серию разборов последовательных критериев - каждый со своими предпосылками, достоинствами и ограничениями. Начинаем с классики - анализа Вальда.
Проблема
Хотим проводить эксперименты быстрее. Fixed-horizon подход требует заранее выбрать размер выборки Ν. При таком размере выборки мы сможем уверенно различить гипотезу Η(0) и альтернативу Η(1), разница между которыми равна MDE. Но можно ли сократить N, если анализировать данные по мере поступления, не дожидаясь завершения эксперимента?
Предположения
– Заранее определяем MDE.
– Знаем параметрическое семейство для выборки (например, бернуллиевское).
– Выборка из независимых и одинаково распределённых величин.
Решение
Фиксируем:
– вероятности ошибок α и β,
– минимальный эффект δ (MDE).
Вычисляем:
– границы A и B (по α и β).
Во время теста:
1. Добавляем наблюдение x.
2. Считаем логарифм отношения правдоподобий λ(x).
3. Если λ(x) < A → принимаем H(0);
если λ(x) > B → принимаем H(1);
иначе — продолжаем.
Алгоритм реализован для случая конверсий.
Достоинства
Алгоритм подходит для использования на быстро вызревающую конверсию в качестве целевой метрики теста.
– Минимизирует среднее N при H(0) и при H(1). Практическое ускорение порядка 60%.
– Позволяет быстрее остановить тест, если изменения больше MDE δ.
– Величины A, B, λ(x) считаются быстро и просто.
– Можно оценить среднюю длительность теста при планировании эксперимента.
Ограничения
Общие для последовательных критериев
– Очень сложно применять, если метрика долго вызревает.
– При завершении теста мы не всегда можем построить хороший доверительный интервал для значения метрики.
– Обладает меньшей мощностью в сравнении с fixed horizon подходом. Это не позволяет всегда останавливать тест быстрее, чем в fixed horizon подходе.
Специфичные для Вальда
– Если мы не знаем параметрическое семейство, величину λ(x) не посчитать. Это существенно для неконверсий.
– Требует, чтобы данные были одинаково распределены. При внутридневной сезонности критерий становится некорректным.
– Сложно адаптировать на тесты с несколькими выборками и метриками.
Библиография
– Вальд А. Последовательный анализ. – 1960.
– Подглядывай правильно: как ускорить принятие решений с помощью последовательного анализа.
– Реализация для конверсий.
– Калькулятор для среднего размера выборки.
– Tartakovsky A., Nikiforov I., Basseville M. Sequential analysis: Hypothesis Testing and Changepoint Detection. – CRC Press, 2014.
GitHub
GitHub - Xapulc/wald-sequential-probability-ratio-test: Реализация последовательного анализа Вальда
Реализация последовательного анализа Вальда. Contribute to Xapulc/wald-sequential-probability-ratio-test development by creating an account on GitHub.
🔥17❤7👍5🐳1
Групповой последовательный анализ
TL;DR
Позволяет адаптировать Z‑тест к последовательному применению. Эффективен в случае быстро вызревающих метрик и наличия изменений.
Почему обсуждается?
В подходе Вальда нужно знать параметрическое семейство (например, биномиальное или нормальное). Это ограничение можно преодолеть с помощью Group Sequential Testing (GST).
Проблема
Хотим завершать эксперимент быстрее, если в метрике уже наблюдаются значительные отклонения. При этом данные поступают батчами (например, по дням или по неделям).
Предположения
– Мы зафиксировали размер выборки N.
– Каждый батч содержит достаточно наблюдений, чтобы была применима ЦПТ.
– Выборка из независимых и одинаково распределённых величин.
Решение
Фиксируем:
– размер выборки N,
– α-spending функцию α(t).
Здесь α(t) - накопленная вероятность ошибки на выборке размера N t.
Свойства α-spending функции:
– α(0) = 0,
– α(1) - уровень значимости,
– α(t) - неубывающая функция.
Во время теста:
1. Получаем новый батч объёмом ΔN(j).
2. Обновляем долю выборки t(j) = N(j) / Ν, где N(j) = N(j-1) + ΔΝ(j) - накопленный объём выборки.
3. Находим такой порог z(j), чтобы вероятность ошибки за первые j батчей равнялась α(t(j)). Для вычисления порога используем аналитические формулы или моделирование.
4. Считаем статистику Z-теста Z(j) по N(j) наблюдениям.
5. Если Z(j) > z(j) → принимаем H(1); иначе — продолжаем.
6. Если дошли до полного объёма N и не приняли H(1) → принимаем H(0).
Достоинства
Подходит для использования на быстро вызревающую метрику. Отлично подходит для метрик здоровья, на которые нежелательно влиять самим экспериментом (например, ошибки, задержки, отказоустойчивость).
– Уменьшает среднее N при H(1).
– Позволяет быстрее остановить тест, если изменения больше MDE δ.
– Работает с классической статистикой Z-теста. Можно использовать и другие критерии в рамках аналогичной последовательной процедуры.
– Условия применимости те же, что у Z-теста.
– Можно использовать двустороннюю или другую сложную альтернативу H(1).
– Выбор α-spending функции даёт гибкость в регулировании скорости принятия решений.
Ограничения
Общие для последовательных критериев
– Очень сложно применять, если метрика долго вызревает.
– При завершении теста мы не всегда можем построить хороший доверительный интервал для значения метрики.
– Обладает меньшей мощностью в сравнении с fixed horizon подходом.
Специфичные для GST
– GST не позволяет досрочно остановить тест при верной H(0), что ограничивает применимость подхода для целевой метрики.
– Выбор α-spending функции не всегда очевиден — требует экспертной настройки или моделирования.
– Вычисление порогов z(j) может быть вычислительно затратным, так как для них нет простой аналитической формы.
– Определение N при заданных MDE и мощности возможно, но требует численного решения.
Библиография
– Gordon Lan K., DeMets D. Discrete sequential boundaries for clinical trials // Biometrika. – 1983. – Т. 70. – № 3. – С. 659-663.
– Использование последовательного тестирования для уменьшения размера выборки.
– Kim K., Tsiatis A. Independent increments in group sequential tests: a review // SORT: statistics and operations research transactions. – 2020. – Т. 44. – № 2. – С. 223-264.
– Pocock S. Group sequential methods in the design and analysis of clinical trials // Biometrika. – 1977. – Т. 64. – № 2. – С. 191-199.
TL;DR
Позволяет адаптировать Z‑тест к последовательному применению. Эффективен в случае быстро вызревающих метрик и наличия изменений.
Почему обсуждается?
В подходе Вальда нужно знать параметрическое семейство (например, биномиальное или нормальное). Это ограничение можно преодолеть с помощью Group Sequential Testing (GST).
Проблема
Хотим завершать эксперимент быстрее, если в метрике уже наблюдаются значительные отклонения. При этом данные поступают батчами (например, по дням или по неделям).
Предположения
– Мы зафиксировали размер выборки N.
– Каждый батч содержит достаточно наблюдений, чтобы была применима ЦПТ.
– Выборка из независимых и одинаково распределённых величин.
Решение
Фиксируем:
– размер выборки N,
– α-spending функцию α(t).
Здесь α(t) - накопленная вероятность ошибки на выборке размера N t.
Свойства α-spending функции:
– α(0) = 0,
– α(1) - уровень значимости,
– α(t) - неубывающая функция.
Во время теста:
1. Получаем новый батч объёмом ΔN(j).
2. Обновляем долю выборки t(j) = N(j) / Ν, где N(j) = N(j-1) + ΔΝ(j) - накопленный объём выборки.
3. Находим такой порог z(j), чтобы вероятность ошибки за первые j батчей равнялась α(t(j)). Для вычисления порога используем аналитические формулы или моделирование.
4. Считаем статистику Z-теста Z(j) по N(j) наблюдениям.
5. Если Z(j) > z(j) → принимаем H(1); иначе — продолжаем.
6. Если дошли до полного объёма N и не приняли H(1) → принимаем H(0).
Достоинства
Подходит для использования на быстро вызревающую метрику. Отлично подходит для метрик здоровья, на которые нежелательно влиять самим экспериментом (например, ошибки, задержки, отказоустойчивость).
– Уменьшает среднее N при H(1).
– Позволяет быстрее остановить тест, если изменения больше MDE δ.
– Работает с классической статистикой Z-теста. Можно использовать и другие критерии в рамках аналогичной последовательной процедуры.
– Условия применимости те же, что у Z-теста.
– Можно использовать двустороннюю или другую сложную альтернативу H(1).
– Выбор α-spending функции даёт гибкость в регулировании скорости принятия решений.
Ограничения
Общие для последовательных критериев
– Очень сложно применять, если метрика долго вызревает.
– При завершении теста мы не всегда можем построить хороший доверительный интервал для значения метрики.
– Обладает меньшей мощностью в сравнении с fixed horizon подходом.
Специфичные для GST
– GST не позволяет досрочно остановить тест при верной H(0), что ограничивает применимость подхода для целевой метрики.
– Выбор α-spending функции не всегда очевиден — требует экспертной настройки или моделирования.
– Вычисление порогов z(j) может быть вычислительно затратным, так как для них нет простой аналитической формы.
– Определение N при заданных MDE и мощности возможно, но требует численного решения.
Библиография
– Gordon Lan K., DeMets D. Discrete sequential boundaries for clinical trials // Biometrika. – 1983. – Т. 70. – № 3. – С. 659-663.
– Использование последовательного тестирования для уменьшения размера выборки.
– Kim K., Tsiatis A. Independent increments in group sequential tests: a review // SORT: statistics and operations research transactions. – 2020. – Т. 44. – № 2. – С. 223-264.
– Pocock S. Group sequential methods in the design and analysis of clinical trials // Biometrika. – 1977. – Т. 64. – № 2. – С. 191-199.
Хабр
Использование последовательного тестирования для уменьшения размера выборки
Привет, Хабр! Я Андрей Корнеев, аналитик команды Origination в Т-Банке. Наша команда работает над тем, чтобы клиент оформил продукт максимально быстро и комфортно, а потом захотел остаться с нами...
1🔥12👍3❤2🦄2
Последовательная проверка SRM
TL;DR
Позволяет во время эксперимента проверять корректность долей выборок. Эффективен при длинных тестах.
Почему обсуждается?
Мы хотим останавливать эксперимент как можно раньше, если в нём есть ошибки. Один из простых индикаторов таких проблем — Sample Ratio Mismatch (SRM). Это сильное расхождение между планируемыми и фактическими долями участников в группах. SRM позволяет выявить сбои в рандомизации, ошибки в фильтрации и сетевые эффекты.
Проблема
Нужно принимать решение о наличии SRM без ожидания конца эксперимента и накопления всей выборки.
Предположения
1. Распределение пользователей по группам случайное, сетевые эффекты отсутствуют.
Решение
Фиксируем:
– вероятность ошибки α,
– ожидаемые доли групп p(1), …, p(k),
– параметры априорного распределения b(1), …, b(k).
Часто b(i) = 1 или B·p(i), где B > 0. Эти параметры влияют на баланс между мощностью и скоростью принятия решения.
Во время теста:
1. Добавляем наблюдение — номер группы, в которую попал новый пользователь.
2. Обновляем наблюдаемые доли групп q = (q(1), …, q(k)).
3. Считаем байесовское отношение правдоподобий O(q).
4. Если O(q) > 1 / α → считаем, что SRM присутствует; иначе — продолжаем.
Достоинства
– Быстрее останавливает тест в случае SRM.
– Статистика критерия и граница считаются по простым формулам.
– Для запуска достаточно зафиксировать всего один параметр — уровень значимости. Параметры априорного распределения можно задать равными единице.
Ограничения
– Обладает меньшей мощностью в сравнении с применением критерия хи-квадрат в конце эксперимента.
– Критерий консервативен: фактическая вероятность ошибки обычно ниже заданного α, из-за чего немного снижается мощность.
– Если данные поступают раз в день, их нужно случайно упорядочить перед подачей в критерий.
– Выбор параметров априорного распределения не всегда очевиден — требует экспертной настройки или моделирования.
Библиография
Основная статья:
Lindon M., Malek A. Anytime-valid inference for multinomial count data //Advances in Neural Information Processing Systems. – 2022. – Т. 35. – С. 2817-2831.
Популярное изложение:
A Better Way to Test for Sample Ratio Mismatches (SRMs) and Validate Experiment Implementations
На русском:
Как оценить валидность A/B-тестов. SRM и другие критерии
TL;DR
Позволяет во время эксперимента проверять корректность долей выборок. Эффективен при длинных тестах.
Почему обсуждается?
Мы хотим останавливать эксперимент как можно раньше, если в нём есть ошибки. Один из простых индикаторов таких проблем — Sample Ratio Mismatch (SRM). Это сильное расхождение между планируемыми и фактическими долями участников в группах. SRM позволяет выявить сбои в рандомизации, ошибки в фильтрации и сетевые эффекты.
Проблема
Нужно принимать решение о наличии SRM без ожидания конца эксперимента и накопления всей выборки.
Предположения
1. Распределение пользователей по группам случайное, сетевые эффекты отсутствуют.
Решение
Фиксируем:
– вероятность ошибки α,
– ожидаемые доли групп p(1), …, p(k),
– параметры априорного распределения b(1), …, b(k).
Часто b(i) = 1 или B·p(i), где B > 0. Эти параметры влияют на баланс между мощностью и скоростью принятия решения.
Во время теста:
1. Добавляем наблюдение — номер группы, в которую попал новый пользователь.
2. Обновляем наблюдаемые доли групп q = (q(1), …, q(k)).
3. Считаем байесовское отношение правдоподобий O(q).
4. Если O(q) > 1 / α → считаем, что SRM присутствует; иначе — продолжаем.
Достоинства
– Быстрее останавливает тест в случае SRM.
– Статистика критерия и граница считаются по простым формулам.
– Для запуска достаточно зафиксировать всего один параметр — уровень значимости. Параметры априорного распределения можно задать равными единице.
Ограничения
– Обладает меньшей мощностью в сравнении с применением критерия хи-квадрат в конце эксперимента.
– Критерий консервативен: фактическая вероятность ошибки обычно ниже заданного α, из-за чего немного снижается мощность.
– Если данные поступают раз в день, их нужно случайно упорядочить перед подачей в критерий.
– Выбор параметров априорного распределения не всегда очевиден — требует экспертной настройки или моделирования.
Библиография
Основная статья:
Lindon M., Malek A. Anytime-valid inference for multinomial count data //Advances in Neural Information Processing Systems. – 2022. – Т. 35. – С. 2817-2831.
Популярное изложение:
A Better Way to Test for Sample Ratio Mismatches (SRMs) and Validate Experiment Implementations
На русском:
Как оценить валидность A/B-тестов. SRM и другие критерии
Medium
A Better Way to Test for Sample Ratio Mismatches (SRMs) and Validate Experiment Implementations
…or why I don’t use a Chi-squared test.
🔥13❤6🦄2
Математика последовательных подходов
TL;DR
Три последовательных критерия — SPRT, GST и mSPRT — используют разную математику. В этом посте — краткий обзор формул, допущений, сильных и слабых сторон каждого критерия.
Почему обсуждается?
Последовательные подходы основаны на разных математических принципах — от мартингальной теории до центральной предельной теоремы. Понимание используемой математики помогает лучше видеть ограничения и преимущества методов, а также адаптировать последовательный анализ под конкретную задачу.
Подход Вальда (SPRT)
Критерий
1. На n-м шаге вычисляем λ(x(n)) = log(p(x(n) | H(1)) / p(x(n) | H(0))).
2. Считаем λ(x(1:n)) = λ(x(1:n-1)) + λ(x(n)).
3. Если λ(x(1:n)) выходит за границы [A, B], останавливаем эксперимент, иначе продолжаем.
Эта процедура завершается выходом за одну из границ. Чтобы выразить вероятности ошибок, используется теорема об остановке мартингала, построенного по λ.
Достоинства
– Останавливает тест и при H(0), и при H(1).
– Минимизирует среднюю длительность эксперимента и при H(0), и при H(1).
– Гарантирует контроль вероятности ошибки без асимптотических допущений.
– Применим к конверсионным метрикам, в том числе к сравнению конверсий двух выборок.
Недостатки
– Требует точного задания распределений при H(0) и H(1).
– При остановке λ почти всегда оказывается около границы, но не на ней, что искажает реальные вероятности ошибок по сравнению с заданными.
– Может завышать длительность эксперимента при «промежуточной» гипотезе между H(0) и H(1).
– Консервативен при поступлении групп наблюдений.
Групповой последовательный анализ (GST)
Критерий
1. Для j-й группы данных вычисляем статистику Z(j) по первым N(j) наблюдениям.
2. Считаем долю t(j) = N(j) / N.
3. Если Z(j) > z(t(j)) → принимаем H(1); иначе — продолжаем.
4. Если дошли до N и не приняли H(1) → принимаем H(0).
Эта процедура останавливается либо выходом за границу, либо принудительной остановкой эксперимента. Чтобы выразить вероятности ошибок, используется многомерная ЦПТ для вектора Z-статистик, соответствующих группам наблюдений.
Достоинства
– Ускоряет проведение теста при H(1).
– Условия применимости как у Z-теста.
– Есть гибкость в настройке границ.
– Поддерживает подачу данных группами.
Недостатки
– Не ускоряет проведение теста при H(0).
– Требует достаточного числа наблюдений для применимости ЦПТ.
– Требует заранее заданного общего объёма выборки N.
– Требует настройки α-spending функции.
mSPRT
Критерий
1. На n-м шаге считаем байесовское отношение правдоподобий O(x(n)).
2. Вычисляем O(x(1:n)) = O(x(1:n-1))·O(x(n)).
3. Если O(x(1:n)) > 1 / α → принимаем H(1); иначе — продолжаем.
4. Если дошли до N и не приняли H(1) → принимаем H(0).
Эта процедура останавливается либо выходом за границу, либо принудительной остановкой эксперимента. Чтобы выразить вероятности ошибок, используется неравенство Вилле для максимума мартингала.
Достоинства
– Ускоряет проведение теста при H(1).
– Статистика критерия и граница считаются по простым формулам.
– Гарантирует контроль вероятности ошибки без асимптотических допущений.
Недостатки
– Не ускоряет проведение теста при H(0).
– Требует точного задания распределения при H(0).
– Основан на неравенстве Дуба, которое даёт консервативную границу и снижает мощность.
– Консервативен при поступлении групп наблюдений.
Что использовать
SPRT
Хорошо подходит для бинарных целевых метрик.
GST
Подходит для целевых метрик, но лучше — для метрик здоровья или проверки SRM.
mSPRT
Хорошо подходит для метрик здоровья или проверки SRM.
Библиография
Основная статья:
Choosing a Sequential Testing Framework — Comparisons and Discussions
Книга:
Tartakovsky A., Nikiforov I., Basseville M. Sequential analysis: Hypothesis Testing and Changepoint Detection. – CRC Press, 2014.
mSPRT:
Lindon M. et al. Anytime-valid Inference in Linear Models and Regression-adjusted Inference //Harvard Business School. – 2024.
TL;DR
Три последовательных критерия — SPRT, GST и mSPRT — используют разную математику. В этом посте — краткий обзор формул, допущений, сильных и слабых сторон каждого критерия.
Почему обсуждается?
Последовательные подходы основаны на разных математических принципах — от мартингальной теории до центральной предельной теоремы. Понимание используемой математики помогает лучше видеть ограничения и преимущества методов, а также адаптировать последовательный анализ под конкретную задачу.
Подход Вальда (SPRT)
Критерий
1. На n-м шаге вычисляем λ(x(n)) = log(p(x(n) | H(1)) / p(x(n) | H(0))).
2. Считаем λ(x(1:n)) = λ(x(1:n-1)) + λ(x(n)).
3. Если λ(x(1:n)) выходит за границы [A, B], останавливаем эксперимент, иначе продолжаем.
Эта процедура завершается выходом за одну из границ. Чтобы выразить вероятности ошибок, используется теорема об остановке мартингала, построенного по λ.
Достоинства
– Останавливает тест и при H(0), и при H(1).
– Минимизирует среднюю длительность эксперимента и при H(0), и при H(1).
– Гарантирует контроль вероятности ошибки без асимптотических допущений.
– Применим к конверсионным метрикам, в том числе к сравнению конверсий двух выборок.
Недостатки
– Требует точного задания распределений при H(0) и H(1).
– При остановке λ почти всегда оказывается около границы, но не на ней, что искажает реальные вероятности ошибок по сравнению с заданными.
– Может завышать длительность эксперимента при «промежуточной» гипотезе между H(0) и H(1).
– Консервативен при поступлении групп наблюдений.
Групповой последовательный анализ (GST)
Критерий
1. Для j-й группы данных вычисляем статистику Z(j) по первым N(j) наблюдениям.
2. Считаем долю t(j) = N(j) / N.
3. Если Z(j) > z(t(j)) → принимаем H(1); иначе — продолжаем.
4. Если дошли до N и не приняли H(1) → принимаем H(0).
Эта процедура останавливается либо выходом за границу, либо принудительной остановкой эксперимента. Чтобы выразить вероятности ошибок, используется многомерная ЦПТ для вектора Z-статистик, соответствующих группам наблюдений.
Достоинства
– Ускоряет проведение теста при H(1).
– Условия применимости как у Z-теста.
– Есть гибкость в настройке границ.
– Поддерживает подачу данных группами.
Недостатки
– Не ускоряет проведение теста при H(0).
– Требует достаточного числа наблюдений для применимости ЦПТ.
– Требует заранее заданного общего объёма выборки N.
– Требует настройки α-spending функции.
mSPRT
Критерий
1. На n-м шаге считаем байесовское отношение правдоподобий O(x(n)).
2. Вычисляем O(x(1:n)) = O(x(1:n-1))·O(x(n)).
3. Если O(x(1:n)) > 1 / α → принимаем H(1); иначе — продолжаем.
4. Если дошли до N и не приняли H(1) → принимаем H(0).
Эта процедура останавливается либо выходом за границу, либо принудительной остановкой эксперимента. Чтобы выразить вероятности ошибок, используется неравенство Вилле для максимума мартингала.
Достоинства
– Ускоряет проведение теста при H(1).
– Статистика критерия и граница считаются по простым формулам.
– Гарантирует контроль вероятности ошибки без асимптотических допущений.
Недостатки
– Не ускоряет проведение теста при H(0).
– Требует точного задания распределения при H(0).
– Основан на неравенстве Дуба, которое даёт консервативную границу и снижает мощность.
– Консервативен при поступлении групп наблюдений.
Что использовать
SPRT
Хорошо подходит для бинарных целевых метрик.
GST
Подходит для целевых метрик, но лучше — для метрик здоровья или проверки SRM.
mSPRT
Хорошо подходит для метрик здоровья или проверки SRM.
Библиография
Основная статья:
Choosing a Sequential Testing Framework — Comparisons and Discussions
Книга:
Tartakovsky A., Nikiforov I., Basseville M. Sequential analysis: Hypothesis Testing and Changepoint Detection. – CRC Press, 2014.
mSPRT:
Lindon M. et al. Anytime-valid Inference in Linear Models and Regression-adjusted Inference //Harvard Business School. – 2024.
Spotify Engineering
Choosing a Sequential Testing Framework — Comparisons and Discussions
Spotify Engineering
1🔥12❤6🐳2❤🔥1👍1
Последовательный критерий хи-квадрат для проверки SRM
TL;DR
Адаптирует классический критерий хи-квадрат для последовательного применения и позволяет обнаруживать SRM до завершения эксперимента.
Почему обсуждается?
На конференции мат. центров России я выступил с докладом о случайных блужданиях. Результат, связанный со сходимостью статистики хи-квадрат к квадрату процесса Бесселя, позволил построить последовательный тест для обнаружения Sample Ratio Mismatch (SRM).
Проблема
Нужно принимать решение о наличии SRM без ожидания конца эксперимента и накопления всей выборки.
Предположения
1. Мы зафиксировали размер выборки N.
2. Распределение пользователей по группам случайное, сетевые эффекты отсутствуют.
Решение
Фиксируем:
– размер выборки N,
– α-spending функцию α(t).
Здесь α(t) - накопленная вероятность ошибки на выборке размера N t.
Свойства α-spending функции:
– α(0) = 0,
– α(1) - уровень значимости,
– α(t) - неубывающая функция.
Во время теста:
1. Добавляем наблюдение — номер группы, в которую попал новый пользователь.
2. Обновляем наблюдаемые доли групп q = (q(1), …, q(k)) и долю t от общего размера выборки N.
3. Считаем классическую статистику критерия хи-квадрат T(q).
4. Находим такой порог z(t), чтобы вероятность ошибки за первые N t наблюдений равнялась α(t). Для вычисления порога используем аналитические формулы или моделирование.
5. Если T(q) > z(t) → принимаем H(1); иначе — продолжаем.
6. Если дошли до полного объёма N и не приняли H(1) → принимаем H(0).
Достоинства
– Быстрее останавливает тест в случае SRM.
– Работает с классической статистикой критерия хи-квадрат, условия применимости те же.
– Поддерживает как пошаговое, так и батчевое применение: подходит и для потоков, и для агрегированных данных.
– Выбор α-spending функции даёт гибкость в регулировании скорости принятия решений.
Ограничения
– Обладает меньшей мощностью в сравнении с применением критерия хи-квадрат в конце эксперимента.
– Выбор α-spending функции не всегда очевиден — требует экспертной настройки или моделирования.
– Вычисление порогов z(t) может быть вычислительно затратным, так как для них нет простой аналитической формы.
Библиография
Основная статья будет приложена в презентации (файл — в треде).
Последовательный хи-квадрат для сгруппированных данных:
Сходимость последовательности значений статистики Пирсона к квадрату нормированного процесса Бесселя //Дискретная математика. – 2016. – Т. 28. – №. 3. – С. 49-58.
TL;DR
Адаптирует классический критерий хи-квадрат для последовательного применения и позволяет обнаруживать SRM до завершения эксперимента.
Почему обсуждается?
На конференции мат. центров России я выступил с докладом о случайных блужданиях. Результат, связанный со сходимостью статистики хи-квадрат к квадрату процесса Бесселя, позволил построить последовательный тест для обнаружения Sample Ratio Mismatch (SRM).
Проблема
Нужно принимать решение о наличии SRM без ожидания конца эксперимента и накопления всей выборки.
Предположения
1. Мы зафиксировали размер выборки N.
2. Распределение пользователей по группам случайное, сетевые эффекты отсутствуют.
Решение
Фиксируем:
– размер выборки N,
– α-spending функцию α(t).
Здесь α(t) - накопленная вероятность ошибки на выборке размера N t.
Свойства α-spending функции:
– α(0) = 0,
– α(1) - уровень значимости,
– α(t) - неубывающая функция.
Во время теста:
1. Добавляем наблюдение — номер группы, в которую попал новый пользователь.
2. Обновляем наблюдаемые доли групп q = (q(1), …, q(k)) и долю t от общего размера выборки N.
3. Считаем классическую статистику критерия хи-квадрат T(q).
4. Находим такой порог z(t), чтобы вероятность ошибки за первые N t наблюдений равнялась α(t). Для вычисления порога используем аналитические формулы или моделирование.
5. Если T(q) > z(t) → принимаем H(1); иначе — продолжаем.
6. Если дошли до полного объёма N и не приняли H(1) → принимаем H(0).
Достоинства
– Быстрее останавливает тест в случае SRM.
– Работает с классической статистикой критерия хи-квадрат, условия применимости те же.
– Поддерживает как пошаговое, так и батчевое применение: подходит и для потоков, и для агрегированных данных.
– Выбор α-spending функции даёт гибкость в регулировании скорости принятия решений.
Ограничения
– Обладает меньшей мощностью в сравнении с применением критерия хи-квадрат в конце эксперимента.
– Выбор α-spending функции не всегда очевиден — требует экспертной настройки или моделирования.
– Вычисление порогов z(t) может быть вычислительно затратным, так как для них нет простой аналитической формы.
Библиография
Основная статья будет приложена в презентации (файл — в треде).
Последовательный хи-квадрат для сгруппированных данных:
Сходимость последовательности значений статистики Пирсона к квадрату нормированного процесса Бесселя //Дискретная математика. – 2016. – Т. 28. – №. 3. – С. 49-58.
🔥14❤3🦄2
Uplift моделирование: S-learner
TL;DR
Позволяет персонализировать принятие решений, предсказывая эффект от каждого варианта решения. Особенно полезен, если вариантов много.
Почему обсуждается?
Этот пост открывает серию разборов, которые в конце будут объединены в оригинальную методологию управления бюджетом с помощью ML. Начнём с базового подхода, на котором строится стратегия персонализации.
Проблема
Нужно персонализировать выбор воздействия для максимизации целевой метрики.
Предположения
Для каждого клиента известны:
– X - набор признаков,
– T - какой из вариантов воздействия был оказан, T из {0, …, K},
– Y - каков был результат (метрика).
При этом все варианты воздействий хотя бы иногда встречаются для любых признаков. То есть P(T = t | X) > 0 при всех X и t из {0, …, K}.
Решение
Обучение:
1. Собираем обучающую выборку (X(i), T(i), Y(i)), где i - номер клиента.
2. Обучаем регрессионную ML модель f(X(i), T(i)), предсказывающую метрику Y(i).
Применение:
1. Для клиента определяем вектор признаков x.
2. Вычисляем предсказания y(t) = f(x, t) для всех t из {0, …, K}.
3. Выбираем h(x) таким, чтобы y(h(x)) = max(y(0), …, y(K)).
4. Назначаем клиенту воздействие h(x).
Полученная стратегия h - это результат uplift-модели.
Достоинства
– При достаточном качестве модели выбор воздействия будет приближаться к оптимальному.
– Если в качестве модели выбрать дерево решений, можно интерпретировать стратегию в виде понятных правил.
– В случае A/B-теста можно выделить подгруппы, где uplift-модель рекомендует разные воздействия, и проверить, что для одних людей лучше контроль, а для других - тест.
– S-learner позволяет использовать сложные воздействия, в том числе непрерывные и текстовые.
Ограничения
– Модель может не улавливать слабое различие между воздействиями, так как архитектура S-learner не заставляет модель явно учитывать эффект воздействия.
– Подход не учитывает изменения в отклике клиента на повторные воздействия, поэтому стратегия uplift модели при многократном применении может быть не оптимальна.
– Для uplift модели важна консистентность данных по времени. Если t = 0 применялся на полгода раньше, чем t = 1, модель может спутать эффект времени с эффектом воздействия.
Библиография
Основной гайд:
Python Causality Handbook: Meta Learners.
Обзор для бинарного воздействия:
Gutierrez P., Gérardy J. Y. Causal inference and uplift modelling: A review of the literature //International conference on predictive applications and APIs. – PMLR, 2017. – С. 1-13.
На русском:
Туториал по uplift моделированию.
TL;DR
Позволяет персонализировать принятие решений, предсказывая эффект от каждого варианта решения. Особенно полезен, если вариантов много.
Почему обсуждается?
Этот пост открывает серию разборов, которые в конце будут объединены в оригинальную методологию управления бюджетом с помощью ML. Начнём с базового подхода, на котором строится стратегия персонализации.
Проблема
Нужно персонализировать выбор воздействия для максимизации целевой метрики.
Предположения
Для каждого клиента известны:
– X - набор признаков,
– T - какой из вариантов воздействия был оказан, T из {0, …, K},
– Y - каков был результат (метрика).
При этом все варианты воздействий хотя бы иногда встречаются для любых признаков. То есть P(T = t | X) > 0 при всех X и t из {0, …, K}.
Решение
Обучение:
1. Собираем обучающую выборку (X(i), T(i), Y(i)), где i - номер клиента.
2. Обучаем регрессионную ML модель f(X(i), T(i)), предсказывающую метрику Y(i).
Применение:
1. Для клиента определяем вектор признаков x.
2. Вычисляем предсказания y(t) = f(x, t) для всех t из {0, …, K}.
3. Выбираем h(x) таким, чтобы y(h(x)) = max(y(0), …, y(K)).
4. Назначаем клиенту воздействие h(x).
Полученная стратегия h - это результат uplift-модели.
Достоинства
– При достаточном качестве модели выбор воздействия будет приближаться к оптимальному.
– Если в качестве модели выбрать дерево решений, можно интерпретировать стратегию в виде понятных правил.
– В случае A/B-теста можно выделить подгруппы, где uplift-модель рекомендует разные воздействия, и проверить, что для одних людей лучше контроль, а для других - тест.
– S-learner позволяет использовать сложные воздействия, в том числе непрерывные и текстовые.
Ограничения
– Модель может не улавливать слабое различие между воздействиями, так как архитектура S-learner не заставляет модель явно учитывать эффект воздействия.
– Подход не учитывает изменения в отклике клиента на повторные воздействия, поэтому стратегия uplift модели при многократном применении может быть не оптимальна.
– Для uplift модели важна консистентность данных по времени. Если t = 0 применялся на полгода раньше, чем t = 1, модель может спутать эффект времени с эффектом воздействия.
Библиография
Основной гайд:
Python Causality Handbook: Meta Learners.
Обзор для бинарного воздействия:
Gutierrez P., Gérardy J. Y. Causal inference and uplift modelling: A review of the literature //International conference on predictive applications and APIs. – PMLR, 2017. – С. 1-13.
На русском:
Туториал по uplift моделированию.
PMLR
Causal Inference and Uplift Modelling: A Review of the Literature
Uplift modeling refers to the set of techniques used to model the incremental impact of an action or treatment on a customer outcome. Uplift modeling is ther...
1❤9🔥6👍3🦄3
Uplift моделирование: Causal Random Forest
TL;DR
Позволяет персонализировать принятие решений, предсказывая эффект от каждого воздействия на клиента. Особенно полезен, если вариантов немного.
Почему обсуждается?
Модели, основанные на S-learner подходе, могут слабо различать варианты воздействий на клиента. Рассматриваемый подход позволяет сильнее сфокусироваться на различиях между вариантами воздействий.
Проблема
Нужно персонализировать выбор воздействия для максимизации целевой метрики.
Предположения
Для каждого клиента известны:
– X - набор признаков,
– T - какой из вариантов воздействия был оказан, T из {0, …, K},
– Y - каков был результат (метрика).
При этом все варианты воздействий хотя бы иногда встречаются для любых признаков. То есть P(T = t | X) > 0 при всех X и t из {0, …, K}.
Решение
Для каждого t из {1, …, K} проводим обучение:
1. Собираем обучающую выборку (X(i), T(i), Y(i)) только для тех i, когда T(i) = 0 или T(i) = t.
2. Строим модель случайного леса f(X(i); t), где каждое решающее дерево предсказывает разницу метрики Y(i) между вариантами T(i) = t и T(i) = 0.
Применение:
1. Для клиента определяем вектор признаков x.
2. Вычисляем предсказания d(t) = f(x; t) для всех t из {1, …, K}.
3. Если m = max(d(1), …, d(K)) > 0, то выбираем h(x) из {1, …, K} таким, чтобы d(h(x)) = m. Иначе h(x) = 0.
4. Назначаем клиенту воздействие h(x).
Полученная стратегия h - это результат uplift-модели.
Достоинства
– При достаточном качестве модели выбор воздействия будет приближаться к оптимальному.
– В случае A/B-теста можно выделить подгруппы, где uplift-модель рекомендует разные воздействия, и проверить, что для одних людей лучше контроль, а для других - тест.
– Архитектура модели специально ориентирована на выявление различий в метриках, вызванных различиями в воздействиях.
Ограничения
– Если K достаточно велико, модели будут работать неэффективно.
– Подход не учитывает изменения в отклике клиента на повторные воздействия, поэтому стратегия uplift модели при многократном применении может быть не оптимальна.
– Для uplift модели важна консистентность данных по времени. Если t = 0 применялся на полгода раньше, чем t = 1, модель может спутать эффект времени с эффектом воздействия.
Библиография
Основная статья:
Athey S., Imbens G. Recursive partitioning for heterogeneous causal effects //Proceedings of the National Academy of Sciences. – 2016. – Т. 113. – №. 27. – С. 7353-7360.
Реализация на Python:
CausalML: Meta-learners and Uplift Trees.
TL;DR
Позволяет персонализировать принятие решений, предсказывая эффект от каждого воздействия на клиента. Особенно полезен, если вариантов немного.
Почему обсуждается?
Модели, основанные на S-learner подходе, могут слабо различать варианты воздействий на клиента. Рассматриваемый подход позволяет сильнее сфокусироваться на различиях между вариантами воздействий.
Проблема
Нужно персонализировать выбор воздействия для максимизации целевой метрики.
Предположения
Для каждого клиента известны:
– X - набор признаков,
– T - какой из вариантов воздействия был оказан, T из {0, …, K},
– Y - каков был результат (метрика).
При этом все варианты воздействий хотя бы иногда встречаются для любых признаков. То есть P(T = t | X) > 0 при всех X и t из {0, …, K}.
Решение
Для каждого t из {1, …, K} проводим обучение:
1. Собираем обучающую выборку (X(i), T(i), Y(i)) только для тех i, когда T(i) = 0 или T(i) = t.
2. Строим модель случайного леса f(X(i); t), где каждое решающее дерево предсказывает разницу метрики Y(i) между вариантами T(i) = t и T(i) = 0.
Применение:
1. Для клиента определяем вектор признаков x.
2. Вычисляем предсказания d(t) = f(x; t) для всех t из {1, …, K}.
3. Если m = max(d(1), …, d(K)) > 0, то выбираем h(x) из {1, …, K} таким, чтобы d(h(x)) = m. Иначе h(x) = 0.
4. Назначаем клиенту воздействие h(x).
Полученная стратегия h - это результат uplift-модели.
Достоинства
– При достаточном качестве модели выбор воздействия будет приближаться к оптимальному.
– В случае A/B-теста можно выделить подгруппы, где uplift-модель рекомендует разные воздействия, и проверить, что для одних людей лучше контроль, а для других - тест.
– Архитектура модели специально ориентирована на выявление различий в метриках, вызванных различиями в воздействиях.
Ограничения
– Если K достаточно велико, модели будут работать неэффективно.
– Подход не учитывает изменения в отклике клиента на повторные воздействия, поэтому стратегия uplift модели при многократном применении может быть не оптимальна.
– Для uplift модели важна консистентность данных по времени. Если t = 0 применялся на полгода раньше, чем t = 1, модель может спутать эффект времени с эффектом воздействия.
Библиография
Основная статья:
Athey S., Imbens G. Recursive partitioning for heterogeneous causal effects //Proceedings of the National Academy of Sciences. – 2016. – Т. 113. – №. 27. – С. 7353-7360.
Реализация на Python:
CausalML: Meta-learners and Uplift Trees.
1🔥17👍3❤2💅1
Оценка качества персонализации
TL;DR
Позволяет оценить эффективность персонализации без проведения нового эксперимента. Особенно полезен, если вариантов воздействий немного.
Почему обсуждается?
При разработке персонализации важно заранее понимать, принесёт ли она прирост целевых метрик и не создаст ли нежелательных эффектов. Рассматриваемый подход позволяет оценить ожидаемую пользу и риски персонализации на оффлайн-данных, без запуска дополнительного эксперимента.
Проблема
Нужно оценить значение метрики при использовании персонализации на данных, собранных до её внедрения.
Предположения
Для каждого клиента известны:
– X - набор признаков,
– T - какой из вариантов воздействия был оказан, T из {0, …, K},
– Y - каков был результат (метрика).
Предполагается, что данные получены из эксперимента: вероятность выбора воздействия P(T = t | X) = p(t) не зависит от X.
Решение
Пусть h — стратегия персонализации, которая по признакам клиента x назначает воздействие h(x) = t.
1. Для каждого клиента i вычисляем Z(i; h) = Y(i) / p(T(i)), если h(X(i)) = T(i); иначе Z(i; h) = 0.
2. Оценку эффективности стратегии Z(h) определяем как среднее Z(i; h) по всем клиентам.
Величина Z(h) является несмещённой оценкой среднего значения метрики Y при использовании стратегии h. Для этой оценки можно построить доверительный интервал и проверить гипотезу стандартным Z-тестом.
Достоинства
– Оценка универсальна: стратегия h может быть получена из uplift модели, эвристик или набора простых правил.
– Качество оценки не зависит от точности ML модели, из которой получена стратегия.
– В качестве Y можно выбрать не только целевую метрику, но и любую другую. Например, для оценки побочных эффектов стратегии или рисков её применения.
Ограничения
– Если K достаточно велико, дисперсия оценки будет велика.
– Подход требует однородности выборок при разных T, иначе оценка будет смещённой.
– Если стратегия h получена из uplift модели, то оценка должна быть построена на отложенной выборке. Иначе переобучение может повлиять на несмещённость оценки.
Библиография
Основная статья:
Zhao Y., Fang X., Simchi-Levi D. Uplift modeling with multiple treatments and general response types // Proceedings of the 2017 SIAM International Conference on Data Mining. – 2017. – С. 588-596.
P.S.
Идея подхода изначально принадлежит @lashinin - он предложил её для оценки качества моделей на хакатоне по uplift-моделированию. У Олега отличный канал Персонализация неизбежна - про рекомендательные системы и персонализацию, включая uplift-модели. О том, что получилось по итогам хакатона, расскажу в следующем посте!
TL;DR
Позволяет оценить эффективность персонализации без проведения нового эксперимента. Особенно полезен, если вариантов воздействий немного.
Почему обсуждается?
При разработке персонализации важно заранее понимать, принесёт ли она прирост целевых метрик и не создаст ли нежелательных эффектов. Рассматриваемый подход позволяет оценить ожидаемую пользу и риски персонализации на оффлайн-данных, без запуска дополнительного эксперимента.
Проблема
Нужно оценить значение метрики при использовании персонализации на данных, собранных до её внедрения.
Предположения
Для каждого клиента известны:
– X - набор признаков,
– T - какой из вариантов воздействия был оказан, T из {0, …, K},
– Y - каков был результат (метрика).
Предполагается, что данные получены из эксперимента: вероятность выбора воздействия P(T = t | X) = p(t) не зависит от X.
Решение
Пусть h — стратегия персонализации, которая по признакам клиента x назначает воздействие h(x) = t.
1. Для каждого клиента i вычисляем Z(i; h) = Y(i) / p(T(i)), если h(X(i)) = T(i); иначе Z(i; h) = 0.
2. Оценку эффективности стратегии Z(h) определяем как среднее Z(i; h) по всем клиентам.
Величина Z(h) является несмещённой оценкой среднего значения метрики Y при использовании стратегии h. Для этой оценки можно построить доверительный интервал и проверить гипотезу стандартным Z-тестом.
Достоинства
– Оценка универсальна: стратегия h может быть получена из uplift модели, эвристик или набора простых правил.
– Качество оценки не зависит от точности ML модели, из которой получена стратегия.
– В качестве Y можно выбрать не только целевую метрику, но и любую другую. Например, для оценки побочных эффектов стратегии или рисков её применения.
Ограничения
– Если K достаточно велико, дисперсия оценки будет велика.
– Подход требует однородности выборок при разных T, иначе оценка будет смещённой.
– Если стратегия h получена из uplift модели, то оценка должна быть построена на отложенной выборке. Иначе переобучение может повлиять на несмещённость оценки.
Библиография
Основная статья:
Zhao Y., Fang X., Simchi-Levi D. Uplift modeling with multiple treatments and general response types // Proceedings of the 2017 SIAM International Conference on Data Mining. – 2017. – С. 588-596.
P.S.
Идея подхода изначально принадлежит @lashinin - он предложил её для оценки качества моделей на хакатоне по uplift-моделированию. У Олега отличный канал Персонализация неизбежна - про рекомендательные системы и персонализацию, включая uplift-модели. О том, что получилось по итогам хакатона, расскажу в следующем посте!
Proceedings
Proceedings of the 2017 SIAM International Conference on Data Mining (SDM) | Uplift Modeling with Multiple Treatments and General…
Abstract Randomized experiments have been used to assist decision- making in many areas. They help people select the optimal treatment for the test population with certain statistical guarantee. However, subjects can show significant hetero-geneity in response…
1🔥11🦄5❤1
Условная максимизация в uplift моделировании
TL;DR
Позволяет персонализировать принятие решений, выбирая оптимальную стратегию с учётом не только эффекта, но и стоимости воздействия.
Почему обсуждается?
Обычная uplift модель выбирает вариант с максимальным ожидаемым эффектом. Но в реальных задачах каждое воздействие имеет свою цену или риск. Рассматриваемый подход решает эту проблему: он позволяет находить оптимальное решение при фиксированном уровне затрат.
Проблема
Нужно персонализировать выбор воздействия так, чтобы максимизировать ожидаемое значение целевой метрики, не превышая средний уровень затрат.
Предположения
Для каждого клиента известны:
– X — набор признаков,
– T — какой из вариантов воздействия был оказан,
– Y — целевая метрика,
– S — затраты на воздействие.
Предполагается, что данные получены из эксперимента: вероятность выбора воздействия P(T = t | X) = p(t) не зависит от X.
Решение
1. Для набора весов w решаем задачу uplift моделирования с одной целевой метрикой U = Y - w·S (например, как в постах про S-learner или Causal Random Forest). Получаем набор стратегий h(w).
2. Для каждой стратегии h(w) на отложенной выборке оцениваем средние значения целевой метрики Y(w) и затрат S(w) (например, как в посте об оценке качества персонализации).
3. Выбираем такой вес w, при котором оценка S(w) не превышает заданную стоимость C. Соответствующая стратегия h(w) является искомой.
Достоинства
– При достаточном качестве модели выбор воздействия будет приближаться к оптимальному.
– Позволяет строить стратегию с посегментными ограничениями, аналогично задаче Лагранжа.
– Метрики, между которыми строится размен, произвольны. Например, если метрика S должна быть не меньше некоторого порога C, следует использовать целевую функцию U = Y + w·S.
Ограничения
– Требует подбора коэффициента w, который может зависеть и от времени, и от поданной выборки.
– Метрики эффекта и затрат должны быть достаточно чувствительными, чтобы на них можно было обучать модели и находить оптимальные размены.
– Несмещённые оценки S(w) и Y(w) получаются только при обучении на данных эксперимента.
Библиография
Kharlamov V. Conditional Optimization in Uplift Modelling // Proceedings of the Fourteenth International Conference “Computer Data Analysis and Modeling: Stochastics and Data Science”. – 2025. – С. 121-124.
P.S.
Этот подход был разработан на хакатоне по повышению эффективности выдачи кэшбэка. В прошлом месяце на статистической конференции CDAM’25 мы рассказали об этой и других методологиях ASL. На пути от хакатона к проду модель прошла несколько итераций изменений, лучше адаптировавших её к применению в бизнесе. О том, какие фишки и доработки были внесены в модель и методологию, расскажу в следующем посте!
TL;DR
Позволяет персонализировать принятие решений, выбирая оптимальную стратегию с учётом не только эффекта, но и стоимости воздействия.
Почему обсуждается?
Обычная uplift модель выбирает вариант с максимальным ожидаемым эффектом. Но в реальных задачах каждое воздействие имеет свою цену или риск. Рассматриваемый подход решает эту проблему: он позволяет находить оптимальное решение при фиксированном уровне затрат.
Проблема
Нужно персонализировать выбор воздействия так, чтобы максимизировать ожидаемое значение целевой метрики, не превышая средний уровень затрат.
Предположения
Для каждого клиента известны:
– X — набор признаков,
– T — какой из вариантов воздействия был оказан,
– Y — целевая метрика,
– S — затраты на воздействие.
Предполагается, что данные получены из эксперимента: вероятность выбора воздействия P(T = t | X) = p(t) не зависит от X.
Решение
1. Для набора весов w решаем задачу uplift моделирования с одной целевой метрикой U = Y - w·S (например, как в постах про S-learner или Causal Random Forest). Получаем набор стратегий h(w).
2. Для каждой стратегии h(w) на отложенной выборке оцениваем средние значения целевой метрики Y(w) и затрат S(w) (например, как в посте об оценке качества персонализации).
3. Выбираем такой вес w, при котором оценка S(w) не превышает заданную стоимость C. Соответствующая стратегия h(w) является искомой.
Достоинства
– При достаточном качестве модели выбор воздействия будет приближаться к оптимальному.
– Позволяет строить стратегию с посегментными ограничениями, аналогично задаче Лагранжа.
– Метрики, между которыми строится размен, произвольны. Например, если метрика S должна быть не меньше некоторого порога C, следует использовать целевую функцию U = Y + w·S.
Ограничения
– Требует подбора коэффициента w, который может зависеть и от времени, и от поданной выборки.
– Метрики эффекта и затрат должны быть достаточно чувствительными, чтобы на них можно было обучать модели и находить оптимальные размены.
– Несмещённые оценки S(w) и Y(w) получаются только при обучении на данных эксперимента.
Библиография
Kharlamov V. Conditional Optimization in Uplift Modelling // Proceedings of the Fourteenth International Conference “Computer Data Analysis and Modeling: Stochastics and Data Science”. – 2025. – С. 121-124.
P.S.
Этот подход был разработан на хакатоне по повышению эффективности выдачи кэшбэка. В прошлом месяце на статистической конференции CDAM’25 мы рассказали об этой и других методологиях ASL. На пути от хакатона к проду модель прошла несколько итераций изменений, лучше адаптировавших её к применению в бизнесе. О том, какие фишки и доработки были внесены в модель и методологию, расскажу в следующем посте!
1🔥16❤🔥3❤2🦄2
A/B тестирование большого числа моделей
TL;DR
Позволяет эффективно проводить эксперименты с большим числом персонализаций и существенно снижать размеры выборок.
Почему обсуждается?
Когда мы тестируем несколько вариантов моделей, размер выборок быстро растёт. Однако решения моделей на большой доле клиентов могут совпадать. Рассматриваемый подход похож на валидацию моделей без A/B и позволяет значительно снизить затраты на проведение экспериментов.
Проблема
Нужно минимизировать размер выборки и повысить чувствительность при одновременном тестировании большого числа моделей.
Предположения
Для каждого клиента известны:
– X - набор признаков,
– T - какой из вариантов воздействия был оказан, T из {0, …, K}.
Определён набор стратегий персонализации h[i], i из {1, …, L}, где каждая по признакам клиента x назначает воздействие h[i](x) = t из {0, …, K}.
Решение
Сплит в A/B тесте
Формируем K+1 однородных выборок G(0), …, G(K) по N клиентов.
Отбираем клиентов S(t) из G(t), у которых h[i] = t хотя бы для одного i из {1, …, L}. Так делаем для каждого t из {0, …, K}.
Выборки клиентов S(0), …, S(K) отправляем в тест. Остальные клиенты в тесте не участвуют.
Сбор выборки для одной стратегии
Фиксируем i-ю стратегию, для которой строим выборку.
Отбираем клиентов S[i](t) из S(t), у которых h[i] = t. Так делаем для каждого t из {0, …, K}.
Выборка S[i] из S[i](0), …, S[i](K) является выборкой, как если бы мы проводили A/B тест для стратегии h[i]. Она будет состоять примерно из N клиентов.
Сравнение двух стратегий
Фиксируем i-ю и j-ю стратегии, которые мы хотим сравнить.
Определяем выборки S[i] и S[j].
Считаем число клиентов N[i, j], которые находятся в пересечении S[i] и S[j].
Считаем разность метрик d[i, j] на выборках S[i] и S[j] без клиентов, по которым эти выборки пересекаются.
Разность метрик на группах равна D[i, j] = d[i, j] * (1 - N[i, j] / N).
Достоинства
Существенно сокращает размер выборок при похожих стратегиях.
Повышается чувствительность критериев при удалении выборок с совпадающим воздействием.
Можно сравнивать любые стратегии - ML-модели, эвристики, константные стратегии (например, контроль).
Ограничения
AS IS работает эффективно в случае малого L, причём L < K. Алгоритм можно адаптировать к случаю малого K, но если L и K большие, алгоритм работать не будет.
AS IS работает только в случае равных размеров групп, но можно адаптировать к случаю неравных.
AS IS работает для оффлайн сплита. Однако можно поменять алгоритм сплита и обобщить его на онлайн сплит.
Не масштабируется на последовательные стратегии, где вариант персонализации меняется со временем.
Библиография
Харламов В. Uplift-модель, которая поняла бизнес // Матемаркетинг. – 2025.
P.S.
В одном из наших крупнейших тестов с 7 стратегиями этот подход позволил сократить размер выборок в 3 раза. И это только одна из идей, которые мы используем для повышения эффективности A/B тестов персонализаций!
Об этом и других методах расскажу завтра на Матемаркетинге - приходите, если вы на конференции.
TL;DR
Позволяет эффективно проводить эксперименты с большим числом персонализаций и существенно снижать размеры выборок.
Почему обсуждается?
Когда мы тестируем несколько вариантов моделей, размер выборок быстро растёт. Однако решения моделей на большой доле клиентов могут совпадать. Рассматриваемый подход похож на валидацию моделей без A/B и позволяет значительно снизить затраты на проведение экспериментов.
Проблема
Нужно минимизировать размер выборки и повысить чувствительность при одновременном тестировании большого числа моделей.
Предположения
Для каждого клиента известны:
– X - набор признаков,
– T - какой из вариантов воздействия был оказан, T из {0, …, K}.
Определён набор стратегий персонализации h[i], i из {1, …, L}, где каждая по признакам клиента x назначает воздействие h[i](x) = t из {0, …, K}.
Решение
Сплит в A/B тесте
Формируем K+1 однородных выборок G(0), …, G(K) по N клиентов.
Отбираем клиентов S(t) из G(t), у которых h[i] = t хотя бы для одного i из {1, …, L}. Так делаем для каждого t из {0, …, K}.
Выборки клиентов S(0), …, S(K) отправляем в тест. Остальные клиенты в тесте не участвуют.
Сбор выборки для одной стратегии
Фиксируем i-ю стратегию, для которой строим выборку.
Отбираем клиентов S[i](t) из S(t), у которых h[i] = t. Так делаем для каждого t из {0, …, K}.
Выборка S[i] из S[i](0), …, S[i](K) является выборкой, как если бы мы проводили A/B тест для стратегии h[i]. Она будет состоять примерно из N клиентов.
Сравнение двух стратегий
Фиксируем i-ю и j-ю стратегии, которые мы хотим сравнить.
Определяем выборки S[i] и S[j].
Считаем число клиентов N[i, j], которые находятся в пересечении S[i] и S[j].
Считаем разность метрик d[i, j] на выборках S[i] и S[j] без клиентов, по которым эти выборки пересекаются.
Разность метрик на группах равна D[i, j] = d[i, j] * (1 - N[i, j] / N).
Достоинства
Существенно сокращает размер выборок при похожих стратегиях.
Повышается чувствительность критериев при удалении выборок с совпадающим воздействием.
Можно сравнивать любые стратегии - ML-модели, эвристики, константные стратегии (например, контроль).
Ограничения
AS IS работает эффективно в случае малого L, причём L < K. Алгоритм можно адаптировать к случаю малого K, но если L и K большие, алгоритм работать не будет.
AS IS работает только в случае равных размеров групп, но можно адаптировать к случаю неравных.
AS IS работает для оффлайн сплита. Однако можно поменять алгоритм сплита и обобщить его на онлайн сплит.
Не масштабируется на последовательные стратегии, где вариант персонализации меняется со временем.
Библиография
Харламов В. Uplift-модель, которая поняла бизнес // Матемаркетинг. – 2025.
P.S.
В одном из наших крупнейших тестов с 7 стратегиями этот подход позволил сократить размер выборок в 3 раза. И это только одна из идей, которые мы используем для повышения эффективности A/B тестов персонализаций!
Об этом и других методах расскажу завтра на Матемаркетинге - приходите, если вы на конференции.
1❤13🔥5🌭3❤🔥2😱1🍓1
Практический гид по A/B-тестам
TL;DR
Наша команда собрала опыт в формате ежедневных коротких советов и кейсов по A/B-тестам, а также добавила возможность получить разбор своих экспериментов от экспертов. Всё доступно на сайте.
Почему мы это сделали
Одни из моих основных задач — ревью крупных экспериментов:
– оценка пользы нефинансовых сервисов;
– анализ редизайна ключевых экранов;
– тестирование кросс-продуктовых механик;
– проверка влияния рекламных кампаний и изменений в тарифах.
За последние годы таких экспериментов накопилось много, и вместе с ними - устойчивый набор типичных ошибок, закономерностей и решений. Мы поняли, что этот опыт можно структурировать и сделать доступным более широкой аудитории - так и появилась идея проекта.
Что мы сделали
Наша команда собрала общий опыт в формате ежедневных коротких советов и кейсов по A/B-тестам - то, что помогает большинству продактов и аналитиков в ежедневной работе. Для более сложных и дорогих экспериментов добавила индивидуальные разборы с экспертами. Получился компактный практический формат без воды: всё, что действительно помогает делать эксперименты аккуратнее и полезнее для бизнеса.
Подробнее о структуре, формате и отборе экспертов - в посте Ромы Филёва. Ну и, конечно, без традиционной скидки для первых пользователей здесь тоже не обошлось🙂
TL;DR
Наша команда собрала опыт в формате ежедневных коротких советов и кейсов по A/B-тестам, а также добавила возможность получить разбор своих экспериментов от экспертов. Всё доступно на сайте.
Почему мы это сделали
Одни из моих основных задач — ревью крупных экспериментов:
– оценка пользы нефинансовых сервисов;
– анализ редизайна ключевых экранов;
– тестирование кросс-продуктовых механик;
– проверка влияния рекламных кампаний и изменений в тарифах.
За последние годы таких экспериментов накопилось много, и вместе с ними - устойчивый набор типичных ошибок, закономерностей и решений. Мы поняли, что этот опыт можно структурировать и сделать доступным более широкой аудитории - так и появилась идея проекта.
Что мы сделали
Наша команда собрала общий опыт в формате ежедневных коротких советов и кейсов по A/B-тестам - то, что помогает большинству продактов и аналитиков в ежедневной работе. Для более сложных и дорогих экспериментов добавила индивидуальные разборы с экспертами. Получился компактный практический формат без воды: всё, что действительно помогает делать эксперименты аккуратнее и полезнее для бизнеса.
Подробнее о структуре, формате и отборе экспертов - в посте Ромы Филёва. Ну и, конечно, без традиционной скидки для первых пользователей здесь тоже не обошлось
Please open Telegram to view this post
VIEW IN TELEGRAM
experiment-advent-decoded.lovable.app
Адвент-календарь по экспериментам
24 совета по A/B экспериментам от лучших экспертов T-Bank
1❤26🔥12👎9❤🔥4👍4😨4