Поиск
  • Darya Raskolnikova

Какой подход выбрать? Проектируем AB тесты по частотному и Байесовскому подходам


В статье разбираю в чем практическая разница между подходами, какой вариант AB-теста выбрать в зависимости от вопросов на которые хотите ответить и как подготовить и провести эксперименты на примере следующей задачи


Задача

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

  1. Сформулируем гипотезы о том, как новая функциональность может повлиять на продукт и его пользователей

  2. Определим метрики, с помощью которых проверим гипотезы и оценим эксперимент. Объясним, почему выбрали эти метрики

  3. Опишем методологию оценки полученного результата по выбранным метрикам

  4. Опишем план действий в зависимости от того, какие результаты будут получены в эксперименте


Решение

Будет удобно разделить решение задачи на 2 части:

  1. Первая часть - общая методология оценки полученного результата, разберем ее на примере метрик ARPU, ARPPU, Retention Rate, Cumulative Retention Rate, Conversion Rate. Эта часть одинакова для обеих гипотез.

  2. Во второй части, рассмотрим на какие еще метрики, я бы смотрела в каждом из тестов и почему я их выбрала.


Часть 1: Формирование гипотез и методология оценки полученного результата

Сформулируем гипотезы о том, как новая функциональность может повлиять на продукт и его пользователей


Гипотеза №1 и гипотеза №2

Новый тип предложений/офферов и снижение сложности уровней увеличит:

  1. Возврат старых и новых пользователей в игру

  2. Долю платящих пользователей (платников)

  3. Доход с пользователя

  4. Доход с платящего пользователя

AB тесты

Для того чтобы понять действительно ли выкатка фич дала прирост - проведем AB тесты выделив контрольную и тестовую группы:

  • Контрольная группа, в которой изменений не будет.

  • Тестовая группа, в которой будет доступна новая функциональность.


Для каждой из гипотез выделим по 2 группы пользователей, в которые равномерно попадут похожие пользователи по таким параметрам как возраст, пол, дата регистрации, каналы закупки трафика, страны, девайсы. Всего для 2 гипотез получится 4 группы, размеры каждой группы определим на этапе выбора методологии тестирования.

Выберем ключевые для проекта метрики за которыми будем смотреть во время теста:

  1. Retention Rate 1,2,3,...n дня = [Количество пользователей вернувшихся на 1,2,3,...n день]/[ Количество пользователей в когорте] - показывает какой процент пользователей возвращается в продукт на n день. Выбрала эту метрику, потому что она позволяет оценить возврат пользователей, а это как раз то, на что направлены наши новые функциональности. Основная метрика

  2. ARPU за 1,2,3... n дней = [Доход за 1,2,3... n дней]/[Всех пользователей] - показывает средний доход на 1 пользователя. Выбрала эту метрику, потому что эта метрика позволяет оценить качество продукта для 1 пользователя и сколько в среднем готов заплатить 1 пользователь. Будем считать ее за выбранный промежуток времени, например 1, 3, 7, 21 дней. Основная метрика

  3. Cumulative Retention Rate n дня = Сумма[Retention Rate за n дней] - показывает накопительный Retention Rate. Выбрала эту метрику потому что при сравнении групп, она позволяет быстрее выявить статистически значимое различие между группами. например если у нас Retention Rate каждого дня вырос на +1% то мы быстрее обнаружим изменение используя Cumulative Retention Rate вместо Retention Rate за счет того что он будет накапливать прибавки в +1% за каждый день. Это не традиционный подход оценки возврата пользователей как с метрикой Retention Rate, но я бы использовала его, чтобы заметить улучшения на выборке меньшего размера. Дополнительная метрика

  4. Conversion Rate = [Покупатели]/[Все пользователи] - показывает долю пользователей которые платят. Так как во Free to Play играх платит лишь часть игроков, то важно следить чтобы этот процент рос и точно не падал, поэтому выбрала этот показатель как вспомогательный к ARPU. Он поможет следить за случаями когда ARPU не меняется, но покупатели платят больше и уменьшается их количество . Дополнительная метрика

  5. ARPPU за 1,2,3... n дней = [Доход за 1,2,3... n дней]/[Покупатели] - показывает сколько денег в среднем приносит 1 покупатель. Это тоже вспомогательный показатель к ARPU. Пригодится, чтобы анализировать случаи когда ARPU не меняется, но меняется доход с 1 покупателя и процент покупателей. Дополнительная метрика


Чтобы оценить полученный результата по выбранным метрикам, важно определится на какие вопросы будут отвечать наши тесты, от этого зависит какую из 2 методологий тестирования нам логично выбрать.

Выбираем частотный подход [Частотный калькулятор] к проведению тестов, если хотим ответить только на 1 вопрос:

  1. Тестовая и контрольная группа статистически значимо отличаются? В конце теста получим ответ: да или нет.


Используем Байесовский подход [Байесовский калькулятор] к проведению тестов если хотим ответить на 2 вопроса:

  1. Насколько велика разница между тестовой и контрольной группой?

  2. Какая вероятность что одна группа лучше или хуже другой?

Разберем по порядку какие данные нужно подготовить для того чтобы запустить тест и как интерпретировать результаты при каждом из подходов.


Тест используя частотный калькулятор


Подготовка к тесту

  1. Выбираем уровень значимости теста, например 0,95. Такой уровень значимости показывает, что в 1 из 20 случаев мы отвергнем правильную гипотезу.

  2. Выбираем ожидаемый уровень изменения в тестовой группе, например +3%. Допустим, мы ожидаем, что оффер даст прирост в +3% к Retention Rate 7-го дня.

  3. Выбираем силу теста, например 0.8. Это значит что в 4 тестах из 5 мы обнаружим изменение в +3% если оно действительно есть.

  4. Для заданных уровня значимости, ожидаемого уровня изменений, силы теста и исторических значений ARPU, Retention Rate, Cumulative Retention Rate, Conversion Rate, ARPPU рассчитаем размер выборки необходимый, чтобы обнаружить ожидаемое изменение.

Повторяем верхние 4 шага для каждой из метрик ARPU, Retention Rate, Cumulative Retention Rate, Conversion Rate, ARPPU.


Запуск теста

Запустили тест и ждем когда тестовая и контрольная группы наберут необходимый размер выборки. До достижения этого размера, оценивать результаты теста нельзя.


Оценка результатов

Дождались нужного размера выборки и приступаем к проверке результатов. Разберем 4 возможных варианта, на примере основных метрик Retention Rate и ARPU:

  1. Нет статистически значимых изменений метрик Retention Rate и ARPU. Тогда мы откатываем изменения и оставляем вариант как у контрольной группы для всех пользователей.

  2. Есть статистически значимые изменения, но с разными знаками, например Retention Rate 7 дня -3% ARPU за 7 дней +5% или наоборот Retention Rate 7 дня +5% ARPU за 7 дней -3% . Принимаем решение оставлять или откатывать изменения, основываясь на философии продукта, если важны деньги, то оставляем первый вариант, и отказываемся от второго, если важнее возврат пользователя, то отказываемся от первого варианта и оставляем второй.

  3. Есть статистически значимые изменения с положительным знаком, например Retention Rate +3%, ARPU +3%. Тогда прекращаем тест и выкатываем вариант как у тестовой группы на весь продукт.

  4. Есть статистические изменения у первоочередных метрик, с отрицательным знаком, например Retention Rate -3%, ARPU -3%. Тогда прекращаем тест и оставляем вариант как у контрольной группы.

Тест используя Байесовский калькулятор


Подготовка к тесту

  1. Выбираем уровень вероятности того, что тестовый вариант лучше контрольного достаточный для принятия решения выкатить тестовую группу на всех пользователей, например 0,95. Такой уровень вероятности говорит, что мы оставим функциональность как в тестовой группе, только если уверены, что тестовый вариант с вероятностью 0.95 лучше чем контрольный.

  2. Выбираем функции распределения вероятностей для каждой метрики. Для ARPU - я бы выбрала нормальное распределение, для Retention Rate n-го дня - биномиальное распределение.

  3. Оцениваем априорные значения параметров функций распределения вероятностей используя исторические данные для метрик ARPU, Retention Rate. Например мы знаем что Retention Rate 2-го дня у нас 30% процентов, ожидаем что для гипотезы №1 он поднимется на +10% и записываем в Байесовский калькулятор значение 33%.

Повторяем верхние 3 шага для каждой из метрик ARPU, Retention Rate, Cumulative Retention Rate, Conversion Rate, ARPPU.


Для Байесовского калькулятора мы останавливаем тест в 2 случаях:

  1. Достигли желаемого уровня вероятности, что один вариант лучше другого.

  2. Тестовая группа уже очень большая, например более 200 000 пользователей, но желаемый уровень вероятности не достигнут. Тогда останавливаем в ручном режиме. Число 200 000 пользователей мы выбираем самостоятельно.


Запуск теста

Запускаем тест и можем сразу смотреть насколько тестовая группа лучше или хуже контрольной и насколько мы уверены в этом.


Оценка результатов

Разберем 4 возможных варианта, на примере основных метрик Retention Rate и ARPU:

  1. Вероятность что Retention Rate и ARPU тестовой группы лучше чем контрольной группы ниже уровня 0.95, тогда мы оставляем контрольную группу.

  2. Вероятность что Retention Rate и ARPU тестовой группы лучше чем контрольной группы выше уровня 0.95, например Retention Rate +1% и ARPU +1%, тогда мы оставляем тестовую группу.

  3. Вероятности обеих метрик выше уровня 0.95, но одна метрика лучше другая хуже, например Retention Rate 7 дня -3% ARPU за 7 дней +5% или наоборот Retention Rate 7 дня +5% ARPU за 7 дней -3% . Принимаем решение оставлять или откатывать изменения, основываясь на философии продукта, если важны деньги, то оставляем первый вариант, и отказываемся от второго, если важнее возврат пользователя, то отказываемся от первого варианта и оставляем второй.

  4. Вероятность что одна из метрик лучше чем в контрольной группе, выше уровня 0.95, а другой ниже. Например Retention Rate +2% а по ARPU выводов нет. Тогда принимаем решение оставить тестовую группу.

Резюмируя отличия в подходах, я бы использовала частотный подход, если достаточно ответа да или нет на вопрос отличаются ли контрольная и тестовая группы. А Байесовский подход, если нужно точно сказать разницу между группами и нашу уверенность в том, что эта разница действительно есть.


Часть 2: дополнительные метрики для каждого теста

Выбираем метрики показывающие как новая функциональность влияет на поведение пользователей в продукте.


Дополнительные метрики**: Новый тип предложений/офферов**

  1. Сколько людей увидело оффер - чтобы сравнить с количеством людей увидевших остальные офферы.

  2. Сколько людей купило оффер - чтобы понять какой % покупателей заинтересован в таком оффере и сравнить с покупками остальных офферов, чтобы ранжировать по привлекательности для игроков.


Дополнительные метрики: Снижена сложность уровней

  1. Количество пройденных уровней за сессию, день - чтобы увидеть что действительно пользователи начали быстрее проходить кампанию и оценить прибавку к скорости относительно контрольной группы. Например в среднем количество пройденных уровней увеличилось на +10% и это как раз тот эффект который мы хотели, или наоборот эффект +3% и это меньше чем ожидалось.

  2. Длину сессии - чтобы понять стали ли пользователи больше вовлечены в игру, например длина сессии была 7 минут, а после снижения сложности стала 9 минут значит. Значит пользователь больше вовлекается при новом уровне сложности или наоборот, если длина сессии осталась те же 7 минут, то пользователь не чувствителен к сложности кампании, возможно он тратит эти 7 минут на прохождение подземелий, а не на кампанию.

Подводя итог проводя тесты по основным метрикам мы найдем какие функциональности влияют на монетизацию и возвращение пользователей в игру и как сильно влияют. А дополнительные метрики покажут, как ведут себя пользователи в продукте.

Просмотров: 12

Киев, Украина

ул. Дмитриевская, 80

+380 (98) 514 43 77 
is@arcanefuture.com 

  • linkedin
  • facebook