Skip to main content
a b тесты

А/B-тесты и статистическая значимость

ВРЕМЯ ЧТЕНИЯ
3 минуты
Автор
Jean-Noël Rivasseau Kameleoon
Jean-Noël Rivasseau
Jean-Noël is Kameleoon's founder and CTO and today heads the company's R&D department. He is a recognized expert in AI innovation and software development. In his posts he shares his vision of the market and his technology expertise.
Поделиться

Неправильное понимание показателей статистической значимости A/B-тестов – это одна из самых насущных проблем практики.

 

Полезно также прочитать:

Что означает индекс доверия?

Показатель доверия относится к обеим версиям теста (А и В), чья величина берется в зависимости от числа наблюдений («посещений») и конверсий для обеих вариаций.

Этот показатель рассчитывается между исходной вариацией и уникальной вариацией в ходе A/B-теста, но может также применяться между вариациями B и D, если речь идет о A/B/C/D-тесте, например. Любая платформа A/B-тестирования предоставляет этот показатель доверия для каждого теста. Даже в его отсутствие (например, для решения веб-аналитики), возможно рассчитать с помощью стандартной математической формулы* (см.ниже).

Статистика требует точности

Практикующие A/B-тестирование логично доверяют показателю статистической значимости, предоставленному их решением. Если речь не идет о неполадках, то расчет правильный; к несчастью, интерпретация этого показателя часто неверная или ошибочная. В отсутствие экспертной поддержки в таком деликатном вопросе некоторые пользователи довольствуются тем, что отслеживают изменения кривых конверсии вариаций, а другие же мониторят показатель доверия почти постоянно, чтобы уловить некую тенденцию.

Консультации извне тоже могут быть мало полезными или вообще ошибочными из-за недостаточной компетенции. Речь даже не идет о том, что нужно стать экспертом в области статистики или прикладной математики;  все же в статистике есть правила, которые игнорировать не получится. Все социологические организации соблюдают базовые правила, необходимые для получения надежных результатов. Жаль, что это не всегда так в случае с A/B-тестированием.

Нет никакой гарантии, что данные теста о приросте конверсии точны

Первое замечание заключается в том, что невозможно узнать точную величину прироста, которую принесла выигрышная вариация. Или если выразиться точнее, то у Вас нет никакой гарантии (с точки зрения статистики), что прирост конверсии по версии теста – это тот самый «настоящий» прирост конверсии, который в реальности можно наблюдать в рамках производства. На самом деле, показатель доверия представляет собой процент шансов получить (при прочих равных условиях в разрезе наблюдений), тот же результат в дальнейшем. И как следствие, надо понять только такую бинарность: или А побеждает В, или В побеждает А. По этой причине показатель доверия часто называют «вероятностью победить исходник» («a chance to beat original»). Таким образом, если у Вас есть прирост конверсии в 15% для Вашей вариации и статистическая значимость в 99%, то это лишь означает, что у Вашей вариации есть 99% вероятности стать эффективнее исходной вариации, но вовсе не то, что у нее есть 99% вероятности получить те же 15% прироста в дальнейшем. Ваш реальный прирост может быть только 3%...

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

Отслеживать изменения показателя доверия с течением времени не имеет смысла

Другая злосчастная характеристика панелей индикаторов решений A/B-тестирования – это отображение с самого начала теста показателя доверия. Проблема: изменение данного показателя с течением времени не имеет никакого значения. Индекс доверия рассчитывается на основании определенного количества наблюдений и представляет процент вероятности получить тот же результат при идентичном количестве наблюдений в будущем. То есть если у Вас индекс равняется 90%, но получен на основе 50 посещений, у Вас есть вероятность получить идентичный результат… но только для 50 посещений. Если уж обобщать, то у Вас может быть около 3 разных величин значимости во время одного теста: 90% на 1000 посещений, 65% на 15 000 и последняя – 95% на 50 000. Не нужно брать в учет первые две величины, так как именно последняя наиболее репрезентативна для Вашего трафика в производстве. С точки зрения прикладной математики кривая изменений значимости с течением времени бессмысленна.

В реальности индекс доверия должен упоминаться лишь единожды: когда тест закончен или почти закончен (т.е. близок к достижению целевого количества посетителей) для того, чтобы избежать естественного соблазна постоянно отслеживать эти цифры. Это является причиной того, что мы всегда рекомендуем осуществлять тесты на совокупности трафика, а не на его фрагментах. Если и имеет смысл начать на небольшой части трафика, чтобы стабилизировать тест, то совершенно обязательно затем растянуть на весь трафик, так как иначе есть риск сделать ложные выводы о выигрышной вариации.

Заключение:

Что важно усвоить из всего выше упомянутого? Это то, что не стоит использовать индекс доверия в том виде, как он отображается в панели индикаторов Вашего инструмента, в качестве показателя того, что тест необходимо остановить. К сожалению, очень естественным рефлексом является желание отслеживать данный показатель и остановить тест, как только он превышает предельное значение (по умолчанию 95%), но в реальности не имеющего никакого значения. Хорошая практика заключается в том, чтобы изначально сосредоточиться на порогах посещений и конверсий, и только после констатировать, является ли тест надежным или нет.

*Тех, кого заинтересовали математические формулы, позволяющие рассчитать статистическую значимость могут заглянуть на эти странички: - расчет zScore - расчет «chance to beat original» с помощью zScore

 

Jean-Noël Rivasseau Kameleoon
Jean-Noël Rivasseau
Jean-Noël is Kameleoon's founder and CTO and today heads the company's R&D department. He is a recognized expert in AI innovation and software development. In his posts he shares his vision of the market and his technology expertise.
Topics covered by this article
Вам также могут понравиться эти статьи