Продолжая тему SRM
Вчера оценивал распределение пользователей по вариантам АБ теста через интерфейс яндекс метрики и увидел, что у ряда АБ тестов имеется SRM.
Пришлось залезть в кликхаус и проверить распределение на сырых данных, в итоге никакого SRM обнаружено не было, а расхождение цифр в метрике было вызвано принудительным сэмплированием.
Так что будьте аккуратны если смотрите какие-то цифры в яндекс метрике, сэмплирование может очень сильно исказить цифры и превратить валидный АБ тест в не валидный.
Вчера оценивал распределение пользователей по вариантам АБ теста через интерфейс яндекс метрики и увидел, что у ряда АБ тестов имеется SRM.
Пришлось залезть в кликхаус и проверить распределение на сырых данных, в итоге никакого SRM обнаружено не было, а расхождение цифр в метрике было вызвано принудительным сэмплированием.
Так что будьте аккуратны если смотрите какие-то цифры в яндекс метрике, сэмплирование может очень сильно исказить цифры и превратить валидный АБ тест в не валидный.
🔥8
🤞 Почему важно учитывать недельную сезонность при планировании срока проведения АБ теста?
Под недельной сезонностью я имею в виду будни и выходные дни. Я считаю важным, чтобы в эксперимент попали пользователи, которые приходят не только в будние дни, но и в выходные, т.к. поведение таких пользователей может сильно отличаться.
Одно из условий для того чтобы мы могли экстраполировать результаты эксперимента на ген. совокупность - это репрезентативность выборки, т.е.выборка должна быть сопоставима по характеристикам с общей популяцией, т.е малой копией ген. совокупности.
Рассмотрим пример. У вас сайт тур агентства и вы решили запустить акцию, скидка в выходные 50% на туры, чтобы поднять конверсию. Посчитали выборку и оказалось, что вам достаточно собирать данные 5 дней. Вы запускаете эксперимент в пн, а пт останавливаете.
В результате обнаруживаете, что конверсия варианта с акцией сильно ниже, чем варианта без акции. Но на самом деле это не так. Просто люди, которые пришли на вариант с акцией, ждут выходных, чтобы вернуться и сделать заказ и если вы бы подождали полный недельный цикл, то победил бы вариант с акцией.
Это довольно топорный пример, легко догадаться, что люди будут ждать выходных чтобы купить по акции.
Зачастую при планировании реальных АБ тестов мы не знаем всех сегментов пользователей и не можем заранее знать будет ли отличаться поведение пользователей в разные дни недели между вариантами теста, поэтому лучше перестраховаться и учесть недельную сезонность, даже если вам достаточно выборки за меньший срок.
Под недельной сезонностью я имею в виду будни и выходные дни. Я считаю важным, чтобы в эксперимент попали пользователи, которые приходят не только в будние дни, но и в выходные, т.к. поведение таких пользователей может сильно отличаться.
Одно из условий для того чтобы мы могли экстраполировать результаты эксперимента на ген. совокупность - это репрезентативность выборки, т.е.выборка должна быть сопоставима по характеристикам с общей популяцией, т.е малой копией ген. совокупности.
Рассмотрим пример. У вас сайт тур агентства и вы решили запустить акцию, скидка в выходные 50% на туры, чтобы поднять конверсию. Посчитали выборку и оказалось, что вам достаточно собирать данные 5 дней. Вы запускаете эксперимент в пн, а пт останавливаете.
В результате обнаруживаете, что конверсия варианта с акцией сильно ниже, чем варианта без акции. Но на самом деле это не так. Просто люди, которые пришли на вариант с акцией, ждут выходных, чтобы вернуться и сделать заказ и если вы бы подождали полный недельный цикл, то победил бы вариант с акцией.
Это довольно топорный пример, легко догадаться, что люди будут ждать выходных чтобы купить по акции.
Зачастую при планировании реальных АБ тестов мы не знаем всех сегментов пользователей и не можем заранее знать будет ли отличаться поведение пользователей в разные дни недели между вариантами теста, поэтому лучше перестраховаться и учесть недельную сезонность, даже если вам достаточно выборки за меньший срок.
👍17❤2
Что-то судя по реакциям на посты про АБ тесты они не заходят аудитории. Пытаюсь понять почему?
Anonymous Poll
42%
Мне не актуальна тема АБ тестов
49%
Материал слишком сложный
18%
Материал слишком простой
Сегодня поговорим про направления в которых возникают ошибки при работе с АБ тестами, если вы никогда не задумывались о корректности ваших АБ тестов, то скорее всего в них есть множество проблем, которые делают результаты не валидными.
1. Планирование эксперимента
При планировании эксперимента важно учесть множество нюансов, от которых будет зависеть результат. Тут очень много мест где можно накосячить начиная от выбора подходящей метрики, единицы рандомизации до определения сроков эксперимента и стат критерия для оценки. В моём чек-листе планирования эксперимента около 25 пунктов и все это может влиять на результат.
2. Техническая реализация вариантов теста
Тут в первую очередь я говорю о корректной реализации тестового и контрольного варианта. Очень часто в новых версиях продукта встречаются технические баги, которые негативно влияют на метрики и не дают понять истинное влияние фичи на метрику.
3. Сбор статистики
Это отдельная боль, зачастую могут просто забыть повесить события на новый функционал, но обычно у большинства компаний есть серьезные проблемы с трекингом о которых они просто не догадываются, это может быть дублирование данных, потеря данных, удаление utm меток при редиректах, потеря конверсий и прочее.
4. Механизм сплитования
Можно назвать этот момент - сердце эксперимента. Механизм который делит пользователей между вариантами должен обеспечивать их деление в соответствии с дизайном экспа и обеспечивать честное деление, чтобы группы были сопоставимы по важным признакам и репрезентативны генеральной совокупности. Если тут проблемы, то все старания насмарку
5. Анализ результатов
Это отдельный важный этап. Тут можно легко не заметить проблемы в данных вызванные предыдущими пунктами и провести анализ на не валидных данных и как следствие получить не корректную оценку для АБ теста. Помимо этого при анализе теста важно учитывать особенности метрик и использовать подходящие методы оценки, но это должно было быть учтено еще на этапе дизайна АБ теста.
В каждом из 5 направлений можно выделить отдельные ошибки, но для этого нужна огромная статья.
АБ тесты это очень нежная штука, в них легко накосячить, а вот заметить проблему очень трудно, т.к. зачастую данные выглядят правдоподобно, но не отражают реальности из-за ошибок. Поэтому нужно контролировать очень много разных деталей связанных с методологией, аналитический инфраструктурой и самим продуктом.
Пишите в комменты, какие ошибки вы ловили при проведении экспериментов и как контролируете🥸
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤2
Интересное исследование от optimizely (платформа АБ тестов)
Они проанализировали 127000 экспериментов запущенных на их платформе.
Некоторые факты
- Только 12% экспериментов показывают значимое улучшение
- Только 3% компаний проводит более 500 экспов в год
- В среднем компания проводит 34 экспа в год
- Эксперименты с персонализацией приносят на 22% больше дохода, чем экспы без персонализации
Вот тут полное исследование https://www.optimizely.com/the-evolution-of-experimentation/
Они проанализировали 127000 экспериментов запущенных на их платформе.
Некоторые факты
- Только 12% экспериментов показывают значимое улучшение
- Только 3% компаний проводит более 500 экспов в год
- В среднем компания проводит 34 экспа в год
- Эксперименты с персонализацией приносят на 22% больше дохода, чем экспы без персонализации
Вот тут полное исследование https://www.optimizely.com/the-evolution-of-experimentation/
Optimizely
127k experiments later, here's what we learned
As practitioners, you should start with simple changes to deliver quick results. However, when scaling, the focus needs to shift from velocity to impact.
👍14
Я оказывается уже 11 лет на линкедыне зареган, капец я дед.
Давайте дружить там если что https://ru.linkedin.com/in/borzilo
Давайте дружить там если что https://ru.linkedin.com/in/borzilo
👍10
С 4 января 2024 года Google Chrome начнет тестировать отключение 3rd party cookies
В 2023 году я выпал из работы с классическими инструментами веб-аналитики ЯМ и GA, но в конце года вновь вернулся к плотной работе с ЯМ и увидел статью в которой говорилось, что хром в 2024 году начнет отключать 3rd party cookies.
Я подумал, что это должно испортить сбор данных в ЯМ, т.к. кука будет удаляться, а значит у пользователя каждый раз будет новый client_id и мы не будем видеть историю по пользователю.
Короче мои переживания оказались напрасны, если вы такой же слоупок как и я, то знайте, что ЯМ хранит uid (client_id) в first party cookies и грядущие изменения в хроме их не затронут.
В 2023 году я выпал из работы с классическими инструментами веб-аналитики ЯМ и GA, но в конце года вновь вернулся к плотной работе с ЯМ и увидел статью в которой говорилось, что хром в 2024 году начнет отключать 3rd party cookies.
Я подумал, что это должно испортить сбор данных в ЯМ, т.к. кука будет удаляться, а значит у пользователя каждый раз будет новый client_id и мы не будем видеть историю по пользователю.
Короче мои переживания оказались напрасны, если вы такой же слоупок как и я, то знайте, что ЯМ хранит uid (client_id) в first party cookies и грядущие изменения в хроме их не затронут.
🎉14🔥4❤1
Подведем итоги года в блоге 2️⃣ 0️⃣ 2️⃣ 3️⃣
🏆 Номинация "самый просматриваемый и сохраняемый пост" достается:
БОЛЬШАЯ ПОДБОРКА МАТЕРИАЛОВ ПО АБ ТЕСТАМ (6000 просмотров и 600 сохранений)
⬆️ Номинация "новые возможности" - Новая работа - новые возможности
🖼 Номинация "мемас года" - воть
🧰 Номинация "новый инструмент года" - retentioneering
Популярные посты за год
1. Качаем харды продуктового аналитика
2. Как стать веб-аналитиком?
3. Комплексные курсы по аналитике
4. Для тех кто ходит на собеседования
5. Скринкаст про модели атрибуции трафика
6. Какие python библиотеки я использую для анализа данных?
7. Моя библиотека аналитика
🏆 Номинация "самый просматриваемый и сохраняемый пост" достается:
БОЛЬШАЯ ПОДБОРКА МАТЕРИАЛОВ ПО АБ ТЕСТАМ (6000 просмотров и 600 сохранений)
🖼 Номинация "мемас года" - воть
🧰 Номинация "новый инструмент года" - retentioneering
Популярные посты за год
1. Качаем харды продуктового аналитика
2. Как стать веб-аналитиком?
3. Комплексные курсы по аналитике
4. Для тех кто ходит на собеседования
5. Скринкаст про модели атрибуции трафика
6. Какие python библиотеки я использую для анализа данных?
7. Моя библиотека аналитика
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤3👍3
Иерархия доказательств
Нашел интересный артефакт, пирамида - иерархия доказательств.
Внизу методы исследования, которые дают низкую надежность, например экспертные оценки, изучение кейсов и прочее
Сверху наиболее точные методы исследования, снижающие риск ошибочных выводов, например наши любимые АБ тесты.
В серединке средне надежные методы, например сравнение когорт.
Каждый инструмент доказательства хорош и может приносить пользу, важно понимать его область применимости.
Например для стартапов АБ тесты могут быть недоступны из-за малого числа клиентов, но можно использовать опросы или глубинные интервью.
Для компании с миллионами пользователей рисковано делать выводы только на основе экспертных оценок или нескольких интервью с клиентами. Тут важно проверять изменения через эксперименты, чтобы случайно не уронить важные метрики.
Нашел интересный артефакт, пирамида - иерархия доказательств.
Внизу методы исследования, которые дают низкую надежность, например экспертные оценки, изучение кейсов и прочее
Сверху наиболее точные методы исследования, снижающие риск ошибочных выводов, например наши любимые АБ тесты.
В серединке средне надежные методы, например сравнение когорт.
Каждый инструмент доказательства хорош и может приносить пользу, важно понимать его область применимости.
Например для стартапов АБ тесты могут быть недоступны из-за малого числа клиентов, но можно использовать опросы или глубинные интервью.
Для компании с миллионами пользователей рисковано делать выводы только на основе экспертных оценок или нескольких интервью с клиентами. Тут важно проверять изменения через эксперименты, чтобы случайно не уронить важные метрики.
👍15
Родители нашли вырезку из газеты 12 летней давности, тогда я только закончил универ и устроился маркетологом в автосервис на ЗП 15 т.р., но уже раздавал советы как заработать миллион 😂
Тони Роббинс отдыхает 😁
С наступающим всех, пусть у каждого будет миллион, а те у кого он уже есть, пусть будет еще😜
Тони Роббинс отдыхает 😁
С наступающим всех, пусть у каждого будет миллион, а те у кого он уже есть, пусть будет еще😜
😁53🔥12🤣4👍1🥰1
Кстати, как думаете, в каком универе я учился?
Final Results
7%
Медицинский
28%
Политехнический
25%
Аграрный
21%
Педагогический
18%
Финансовый
Борзило
Кстати, как думаете, в каком универе я учился?
Правильный ответ - "аграрный", я учился в Башкирском государственном аграрном университете по специальности экономика и управление🙂
👍8
Часть 1. Почему метрики посчитанные на основе сеансов плохо подходят для оценки АБ тестов?
Сегодня разберем первую причину - неверная оценка эффекта.
Рассмотрим условный пример. Допустим у нас есть лендинг для привлечения заявок на ипотеку, мы решили что если сделаем подробный, длинный лендинг, то конверсия вырастет, потому что пользователи смогут узнать подробные условия ипотеки - это закроет их возражения и больше пользователей будут оставлять заявки.
Мы его сделали и провели АБ тест. Результаты на скрине.
По результатам мы видим, что cr посчитанный по сессиям cr_sessions в контроле 8,33%, а в тесте 7,33%, т.е если смотреть только на этот показатель, то мы должны считать, что тестовая версия хуже, длинный лендинг ухудшил конверсию.
Посмотрим на показатель рассчитанный на основе пользователей cr_users, тут контрольная версия имеет cr - 10%, а тестовая 11%, т.е.результаты противоположные коэффициенту конверсии посчитанному по сессиям и мы видим что тестовый вариант лучше и длинный лендинг улучшил конверсию.
Почему так произошло и где правда?
Новая версия лендинга большая и подробная. Обратите внимание на показатель sessions_per_user (число сессий на пользователя) он увеличился с 1,2 до 1,5, потому что часть людей не успевает ознакомиться с большим лендингом за 1 раз и потом возвращаются и создается еще 1 сеанс.
Всего в контроле мы получили 1000 лидов, а в тесте 1100 лидов, при том что в обоих версиях по 10000 пользователей. Таким образом из-за увеличения числа сессий у нас упал коэффициент конверсии рассчитанный по сессиям, что не соответствует реальности, т.к. больше людей стало конвертироваться в лиды.
Таким образом если мы будем смотреть в АБ тесте на конверсию посчитанную по сессиям, то примем не верное решение о том, что новый лендинг работает хуже старого.
Если вам интересна тема показателей обманщиков, то много интересного про неверный расчет конверсии на основе сессий можно прочитать у Ильи Красинского. Вот например статья - 4 способа посчитать конверсию не верно
Сегодня разберем первую причину - неверная оценка эффекта.
Рассмотрим условный пример. Допустим у нас есть лендинг для привлечения заявок на ипотеку, мы решили что если сделаем подробный, длинный лендинг, то конверсия вырастет, потому что пользователи смогут узнать подробные условия ипотеки - это закроет их возражения и больше пользователей будут оставлять заявки.
Мы его сделали и провели АБ тест. Результаты на скрине.
По результатам мы видим, что cr посчитанный по сессиям cr_sessions в контроле 8,33%, а в тесте 7,33%, т.е если смотреть только на этот показатель, то мы должны считать, что тестовая версия хуже, длинный лендинг ухудшил конверсию.
Посмотрим на показатель рассчитанный на основе пользователей cr_users, тут контрольная версия имеет cr - 10%, а тестовая 11%, т.е.результаты противоположные коэффициенту конверсии посчитанному по сессиям и мы видим что тестовый вариант лучше и длинный лендинг улучшил конверсию.
Почему так произошло и где правда?
Новая версия лендинга большая и подробная. Обратите внимание на показатель sessions_per_user (число сессий на пользователя) он увеличился с 1,2 до 1,5, потому что часть людей не успевает ознакомиться с большим лендингом за 1 раз и потом возвращаются и создается еще 1 сеанс.
Всего в контроле мы получили 1000 лидов, а в тесте 1100 лидов, при том что в обоих версиях по 10000 пользователей. Таким образом из-за увеличения числа сессий у нас упал коэффициент конверсии рассчитанный по сессиям, что не соответствует реальности, т.к. больше людей стало конвертироваться в лиды.
Таким образом если мы будем смотреть в АБ тесте на конверсию посчитанную по сессиям, то примем не верное решение о том, что новый лендинг работает хуже старого.
Если вам интересна тема показателей обманщиков, то много интересного про неверный расчет конверсии на основе сессий можно прочитать у Ильи Красинского. Вот например статья - 4 способа посчитать конверсию не верно
👍31❤1👎1
Часть 2. Почему метрики посчитанные на основе сеансов плохо подходят для оценки АБ тестов?
вторая причина - лишняя сущность, увеличивающая когнитивную нагрузку
Как правило в экспериментах мы производим воздействие на пользователя, сессия это всего лишь некоторая искусственная сущность, производная от пользователя.
Нас интересует поведение пользователя в рамках периода эксперимента, а не какой-то одной сессии. Конечно могут быть эксперименты, в которых нам почему-то понадобятся отдельные сессии, но в большинстве онлайн экспериментов, которые я наблюдаю цель это воздействие на пользователя и кажется, что сессии это просто некий лишний слой абстракции, который только вносит неразбериху и увеличивает шанс запутаться.
Лучше поступать согласно принципу бритвы Оккама "Не следует множить сущее без необходимости".
вторая причина - лишняя сущность, увеличивающая когнитивную нагрузку
Как правило в экспериментах мы производим воздействие на пользователя, сессия это всего лишь некоторая искусственная сущность, производная от пользователя.
Нас интересует поведение пользователя в рамках периода эксперимента, а не какой-то одной сессии. Конечно могут быть эксперименты, в которых нам почему-то понадобятся отдельные сессии, но в большинстве онлайн экспериментов, которые я наблюдаю цель это воздействие на пользователя и кажется, что сессии это просто некий лишний слой абстракции, который только вносит неразбериху и увеличивает шанс запутаться.
Лучше поступать согласно принципу бритвы Оккама "Не следует множить сущее без необходимости".
👍6🔥1
Часть 3. Почему метрики посчитанные на основе сеансов плохо подходят для оценки АБ тестов?
третья причина - метрики посчитанные на основе сеансов могут давать высокий false positive rate.
Это наверное самая неочевидная причина, но при этом самая опасная.
Попробую объяснить на пальцах. Например мы запускаем 100 АА тестов, т.е. тестов когда никакой разницы в вариантах нет, при выбранном уровне альфа в 5%. Примерно в 5 экспериментах из 100 мы увидим стат значимые отличия в вариантах между которыми на самом деле различий нет, это просто будет случайность и это нормально, мы это принимаем и живем с этим.
Когда мы используем метрики посчитанные на основе сессий, такие метрики становятся так называемыми ratio метриками. Изначальное требование для применения классических стат тестов - это независимость наблюдений, в случае если мы применяем сессии, то мы нарушаем это требование, т.к. сессии зависимы между собой, т.к. принадлежат одному пользователю.
Если мы применим к таким данным классический t test или z test, то можем получить очень большую вероятность ложных срабатываний. Выше я приводил пример, что мы ошибаемся в 5 случаях из 100 когда разницы нет. А в случае с ratio метриками этот процент будет выше.
На этой неделе я исследовал данные ряда АА тестов и рассчитал долю ложно положительных срабатываний на основе метрики конверсии посчитанной по сессиям, доля ложноположительных результатов составила от 12 до 40%, что гораздо выше ожидаемых 5%, при этом показатель конверсии посчитанный по пользователям сохранял эту ошибку в районе 5% во всех АА тестах.
Если хотите подробнее разобраться в этой проблеме, то вот несколько материалов
А/Б тесты с метрикой отношения. Дельта-метод
АБ тесты с метриками отношений
третья причина - метрики посчитанные на основе сеансов могут давать высокий false positive rate.
Это наверное самая неочевидная причина, но при этом самая опасная.
Попробую объяснить на пальцах. Например мы запускаем 100 АА тестов, т.е. тестов когда никакой разницы в вариантах нет, при выбранном уровне альфа в 5%. Примерно в 5 экспериментах из 100 мы увидим стат значимые отличия в вариантах между которыми на самом деле различий нет, это просто будет случайность и это нормально, мы это принимаем и живем с этим.
Когда мы используем метрики посчитанные на основе сессий, такие метрики становятся так называемыми ratio метриками. Изначальное требование для применения классических стат тестов - это независимость наблюдений, в случае если мы применяем сессии, то мы нарушаем это требование, т.к. сессии зависимы между собой, т.к. принадлежат одному пользователю.
Если мы применим к таким данным классический t test или z test, то можем получить очень большую вероятность ложных срабатываний. Выше я приводил пример, что мы ошибаемся в 5 случаях из 100 когда разницы нет. А в случае с ratio метриками этот процент будет выше.
На этой неделе я исследовал данные ряда АА тестов и рассчитал долю ложно положительных срабатываний на основе метрики конверсии посчитанной по сессиям, доля ложноположительных результатов составила от 12 до 40%, что гораздо выше ожидаемых 5%, при этом показатель конверсии посчитанный по пользователям сохранял эту ошибку в районе 5% во всех АА тестах.
Если хотите подробнее разобраться в этой проблеме, то вот несколько материалов
А/Б тесты с метрикой отношения. Дельта-метод
АБ тесты с метриками отношений
👍12❤1🐳1
Разработка метрик для АБ тестов
Будем потихоньку выходить из январьской спячки. Собрал для вас небольшую подборку ссылок по теме выбор, разработка и валидация метрик для АБ тестов. Тема довольно узкая и специфичная, но важная, по ней довольно мало материалов в сети.
1. Измерение метрик microsoft
2. Как искать прокси-метрики в продуктах expf
3. Анализ чувствительности метрик microsoft
4. Свойства хороших метрик microsoft
5. Процесс построения новых метрик для АБ Яндекс
6. Валидация метрик microsoft
7. Защитные метрики в airbnb
8. Как разработать прокси метрику
9. Как выбрать правильный стат тест для разных метрик
10. Data-Driven Metric Development for Online Controlled Experiments: Seven Lessons Learned (Paper)
11. Metric validation for AB testing
12. Защитные метрики
13. Пошаговое руководство для понимания метрик АБ тестирования
14. Дизайн экспериментальных метрик презентация
Будем потихоньку выходить из январьской спячки. Собрал для вас небольшую подборку ссылок по теме выбор, разработка и валидация метрик для АБ тестов. Тема довольно узкая и специфичная, но важная, по ней довольно мало материалов в сети.
1. Измерение метрик microsoft
2. Как искать прокси-метрики в продуктах expf
3. Анализ чувствительности метрик microsoft
4. Свойства хороших метрик microsoft
5. Процесс построения новых метрик для АБ Яндекс
6. Валидация метрик microsoft
7. Защитные метрики в airbnb
8. Как разработать прокси метрику
9. Как выбрать правильный стат тест для разных метрик
10. Data-Driven Metric Development for Online Controlled Experiments: Seven Lessons Learned (Paper)
11. Metric validation for AB testing
12. Защитные метрики
13. Пошаговое руководство для понимания метрик АБ тестирования
14. Дизайн экспериментальных метрик презентация
👍31😁1🆒1