Как стать автором
Обновить

Находка для шпиона: ААБ-тестирование как оптимальный вариант сплит-теста

Время на прочтение3 мин
Количество просмотров26K
Всего голосов 23: ↑21 и ↓2+19
Комментарии20

Комментарии 20

Что я только что сейчас прочитал? При наличии корректно проведенной рандомизации двух групп (A и B) будет достаточно. Ключевое слово — корректно. Если, например, есть сомнение в самой системе которая занимается балансировкой пользователей по группам, то можно провести один раз A/A. Но не каждый же раз подмешивать вторую A группу…
Плюс, хочу обратить внимание на то, что такая схема может быть путой тратой мощности (power), ведь размер групп уже на старте предполагается не одинаковый.
Что я только что сейчас прочитал?

Вы прочитали мое личное мнение, выраженное и аргументированное в виде статьи.
Ответы на все вопросы, что вы написали в ней есть.

При наличии корректно проведенной рандомизации двух групп (A и B) будет достаточно.

Недостаточно. Кроме некорректной рандомизации есть еще масса факторов, искажающих тест. Этому посвящен целый абзац.

Если, например, есть сомнение в самой системе которая занимается балансировкой пользователей по группам, то можно провести один раз A/A.

Отдельно АА занимает время и ресурсы. С его проведения до последующего проведения АБ ситуация может измениться. Тоже написано.

такая схема может быть путой тратой мощности (power),

Да, для ААБ тратятся ресурсы, это тоже написано в выводах. Почему это имеет смысл написано вначале.

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

Хотите одинаковый, сделайте ААББ. Хотя, как раз в этом особенного смысла нет.
При наличии корректно проведенной рандомизации двух групп (A и B) будет достаточно.

Недостаточно. Кроме некорректной рандомизации есть еще масса факторов, искажающих тест. Этому посвящен целый абзац.


Перечень факторов в статье действительно есть. Но статья не отвечает на вопрос, как ААБ помогает с этим бороться. Не могли бы вы раскрыть эту тему подробней?
Ну, то есть мне интуитивно понятно про факторы 1 и 2. А все остальные уже вызывают вопросы.


Спасибо.

Не бороться, а скорее диагностировать и нивелировать.
Видим, что А и А не сходятся даже при достаточной выборке, это значит есть факторы искажения. Смотрим другой период, если А и А сошлись, значит факторы были в первый период, думаем что это могло быть.

А нивелируются так: Если просто со временем/объемом продолженного теста А и А сошлись, значит влияние факторов стало статистически незначительным и и тест уже более-менее достоверный.
Можно еще сравнивать насколько расходятся А и А в процентах (после достижения значимой выборки), колебания их разницы, чтобы понимать силу искажающих факторов. Условно, если А и А разнятся на 10%, а Б у нас дает лучше результат на 20%, то нельзя считать, что изменение дало положительный результат.

Всего этого простой АБ-тест не даст.
А нивелируются так: Если просто со временем/объемом продолженного теста А и А сошлись, значит влияние факторов стало статистически незначительным

А как, допустим, фактор "эффект новизны" приведет к расхождению А и А? Они же идентично "новые" (или "старые" — смотря что мы берем за А).


С остальными факторами у меня такое же непонимание. Они же одинаково влияют на А и А — расхождения из-за них не будет. Расхождение будет только из-за проблем с рандомизацией или недостаточным объемом трафика (первые 2 фактора).

Эффект новизны и эффект привыкания ААБ тестом не диагностируется, для этого надо делить старых пользователей и новых.

Они же одинаково влияют на А и А — расхождения из-за них не будет.

Весь фокус в том, что будет. Представим, что в ИЕ сайт работает некорректно, нельзя оформить заказ. А мы сравниваем и считаем конверсию. Юзер на ИЕ из группы А1 дошел до оформления и отвалился. Чтобы компенсировать эту ситуацию надо, чтобы другой юзер на ИЕ уже из А2 тоже не оформил заказ. Пока это не произошло возникает перекос, которого без этой проблемы с ИЕ не было бы.
Чем больше таких факторов, тем больше время/объем, которые необходимы для корректного теста.

А, теперь ясно.
По сути, это вариации на тему недостаточного трафика (первый фактор). Если для какой-то группы юзеров что-то не работает, грубо говоря считаем, что от них трафика нет. То есть ААБ говорит нам о недостаточности выборки, когда мы априорно считали, что выборка уже должна быть значимой.

Идея вредная и показывает непонимание АБ–тестирования. Для принятия решения об остановки теста достаточно расчёта необходимой выборки, например с помощью этого калькулятора.
Если А1 и А2 сравнялись по показателям, то без достаточного числа выборки это не значит ничего. Это может быть временное случайное явление совпадения значений внутри очень больших доверительных интервалов. И наоборот, они могут отличаться на какое-то значение, но разница меньше доверительного интервала и следует считать их равными.
Если введением второй А вы пытаетесь решить проблему искажающих факторов то вы просто неправильно проводите тесты. В А и Б должны отличаться только проверяемся вещь, а все остальные факторы быть одинаковыми. Иначе непонятно какой из факторов дал отличие в метрике. Ну и непонятно каким образом введение второй А нейтрализует хотяб один из приведённых искажающих факторов.
Идея вредная

Получить еще один инструмент, который поможет не сделать преждевременные выводы — вредно?

Для принятия решения об остановки теста достаточно расчёта необходимой выборки, например с помощью этого калькулятора.

Недостаточно. Калькулятор показал статистически значимую выборку. Практика показала, что А и А значительно расходятся. Смотрим, разбираемся где искажения.

Если А1 и А2 сравнялись по показателям, то без достаточного числа выборки это не значит ничего.
Да, если А1 и А2 сравнялись это не значит, что результат достоверный. Но если НЕ сравнялись — чрезвычайно высока вероятность, что он НЕдостоверный.
Фокус в том, что без достаточной выборки они могут сравняться только случайно. То есть, речь не об уменьшении выборки относительно калькулятора, скорее об увеличении.

Ну и непонятно каким образом введение второй А нейтрализует хотяб один из приведённых искажающих факторов.

Именно увеличением периода или объема для теста. Ну и дополнительным индикатором, который поможет выявить факторы влияния. В жизни их трудно избежать, идеальных условий для теста на реальном проекте не создать.
По–моему, достаточно один раз запустить АА–тест чтобы проверить правильно ли вы делаете тесты. Но расходовать треть выборки на такую проверку в каждом тесте — это чрезмерная неуверенность в своей системе. Если вы ей настолько не доверяете — разберитесь как она работает и исправьте её.
Странная ситуация с этим постом, Тимур.
В комментариях просто повторяю то, что уже написано в статье. Продолжу:

По поводу АА-теста.
Именно он — лишний расход времени и ресурсов. Вы трижды делаете А, вместо двух. Кроме того, что гораздо важнее, условия при АА тесте и при АБ могут быть разные (они делаются в разное время), чего нет при ААБ.

Про расходовать в каждом тесте:
В выводе писал, что можно ААБ каждый раз не делать, только пока не отладится тест.

Одно радует. Вы хотя бы не анонимный комментатор, что по моему наблюдению здесь редкость.
Этот вывод действительно пропустил. Често сказать, статью читать было тяжело, поэтому пробежался по диагонали. Возможно, поэтому вам приходится в ответах цитировать свою статью. Сама статья, взять даже название, про то что, ААБ лучше АБ, а выводе скромно написано, что может быть и не всегда.
Ну прикольно, чо. Пастернака не читал, но осуждаю.
Никакого «может быть» в моем выводе нет. ААБ лучше, чем просто АБ. И лучше, чем АА + АБ, да.
Пастернак хорошо писал, не сравнивайте.
А вы, оказывается, не только статьи не читаете перед комментированием. Но и крылатые выражения не знаете. Оокей.
Извините, я всю дорогу пытаюсь вам намекнуть, что статью никто не понял, потому что она плохо, путано и неинтересно написана. А не потому что все такие невнимательные. Но, видимо, без прямых как железная дорога слов это никак не сделать. Поэтому суть обсудить не получается, а всё скатывается к «я же вот тут писал».
То есть, я сам виноват, что вы не прочли статью прежде, чем судить о ней и кидать громкие заявления. И вообще она неинтересная, поэтому в первый раз в этом году вы откомментировали именно ее из тысячи других.
Хорошо, хорошо, я же не спорю. Только остановитесь, пожалуйста, это какой-то сюр.
Я честно пытался понять, что написано в статье, но не смог. И да, вы в этом виноваты.

Возможно, некорректный вопрос задам, но можно ли такой тип тестов применить к тестированию безопасности?

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

Публикации