A/B/n-тест: як порівняти три й більше варіантів без хибного переможця
A/B/n-тест множить шанси на хибного переможця. Як працюють поправки Бонферроні та Холма: приклад із чотирма варіантами і ціна в трафіку.
Автор: Sergey BruhОпубліковано 9 хв читання
A/B/n-тест порівнює контроль одразу з двома чи більше альтернативами, і кожен додатковий варіант додає порівнянь, а кожне порівняння дає ще один шанс на хибнопозитивний результат, тому варіант із найменшим p-значенням не можна просто оголосити переможцем. Чотири варіанти утворюють шість можливих пар. Якщо кожну пару перевіряти на звичному рівні 5 %, імовірність хоча б одного хибнопозитивного результату становить уже близько 20–26 %, а не 5 %. Вихід такий: заздалегідь вирішити, які порівняння ви робитимете, і застосувати поправку (Бонферроні або Холма), що утримує ризик для всього тесту на рівні 5 %. Це працює, але коштує трафіку.
Чотири кнопки й один спокусливий переможець
Котокорм, інтернет-магазин кормів для тварин, тестує напис на кнопці оформлення замовлення. Emily, продакт-менеджерка, мала три нові ідеї, тож у тест пішли всі три разом із поточним написом. Тест тривав чотири тижні, чекаут відвідували близько 3 000 людей на день, трафік ділили порівну:
Emily рахує z-критерій для двох часток для кожної пари й отримує чотири «значущі» результати із шести. У D найвища конверсія і найменше p-значення проти контролю, тож слайд майже готовий: «D переміг, +19,8 %». Але спершу варто відповісти на два запитання. Скільки з цих чотирьох результатів можуть бути шумом? І чи справді D кращий за C?
Чому ризик росте з кожним порівнянням
Одне порівняння на рівні має 5 % шансів на хибнопозитивний результат, коли реальної різниці немає. Для незалежних порівнянь імовірність, що спрацює хоча б одне, дорівнює:
Формула припускає, що порівняння незалежні. В одному тесті вони мають спільні дані (кожна пара з A використовує ту саму контрольну групу), тому реальний ризик дещо нижчий: симуляція дає близько 12 % для всіх пар трьох варіантів і близько 20 % для всіх пар чотирьох. У будь-якому разі це в кілька разів більше за 5 %, на які ви погоджувалися. Це і є проблема множинних порівнянь: найменше із шести p-значень важить значно менше, ніж таке саме p-значення у звичайному A/B-тесті.
Підхід у два кроки
Крок 1: загальний тест. Чи є між варіантами бодай якась різниця? Для конверсії це критерій хі-квадрат на таблиці замовлень і відвідувачів без замовлення для всіх чотирьох варіантів. Дані Котокорму дають із 3 ступенями свободи та . Варіанти не однакові, проте тест не каже, які саме відрізняються. Для середніх, наприклад середнього чека, така сама логіка працює в парі ANOVA й апостеріорні порівняння.
Крок 2: попарні порівняння з поправкою. Порівнюйте пари, але ставте кожному p-значенню суворішу планку, щоб ризик хоча б одного хибнопозитивного результату в усьому сімействі порівнянь лишався 5 %. Захищає саме цей крок: поправка працює і з загальним тестом, і без нього.
Бонферроні та Холм простими словами
Поправка Бонферроні ділить 5 % порівну. За шести порівнянь кожне має пройти поріг . Те саме іншими словами: помножте кожне p-значення на 6 (але не більше ніж до 1) і порівняйте з 0,05.
Поправка Холма витрачає ті самі 5 % поступово. Впорядкуйте p-значення від найменшого до найбільшого, найменше помножте на 6, наступне на 5, далі на 4 і так далі. Ідіть списком згори вниз і зупиніться на першому скоригованому значенні, яке дорівнює 0,05 або більше: це порівняння і всі наступні незначущі.
Скориговані значення пораховано з неокруглених p-значень. Що каже таблиця:
- Без поправки поріг 0,05 проходять чотири пари. Після поправки Бонферроні лишаються дві: D кращий за A і D кращий за B.
- Поправка Холма підтверджує ще й C проти A (0,0362), а Бонферроні цю пару ледь-ледь відхиляє (0,0543). Обидва методи утримують ризик для сімейства на рівні 5 %, але поправка Холма ніколи не суворіша за Бонферроні, тому рідше пропускає реальні ефекти.
- У D найвища конверсія, проте пара D проти C далека від значущості за будь-яким методом. Цей тест не здатен розрізнити C і D.
Чесний підсумок звучить так: «D кращий за поточну кнопку та за B; доказів, що D кращий за C, немає». А не «D переміг».
Свої числа можна перевірити в безкоштовному калькуляторі результатів A/B/n-тесту. Він приймає від трьох до шести варіантів, порівнює кожну пару двобічним z-критерієм, застосовує поправку Бонферроні й додає скоригований інтервал для кожної різниці. Для даних Котокорму він повертає значення за Бонферроні з таблиці та висновок, що жоден варіант не перевершив усі інші. Загального тесту, поправки Холма і режиму «лише з контролем» у ньому немає.
Лише з контролем чи всі пари?
Якщо питання тільки одне, «чи кращий бодай якийсь новий напис за поточний?», досить трьох порівнянь: B, C і D проти A. Тоді поправка Бонферроні множить на 3, і пара C проти A отримує скориговане p 0,0271, тобто стає значущою.
Ціна — висновок, який ви маєте право зробити. Можна сказати «і C, і D кращі за контроль», але нічого про D проти C: щоб назвати єдиний найкращий варіант, потрібні всі пари. Сімейство порівнянь фіксують до запуску. Обрати менше сімейство вже після перегляду результатів — це той самий вибір найменшого p-значення, тільки тихіший.
Скільки це коштує в трафіку
Дорожчають одразу дві речі: поріг стає суворішим, а трафік ділиться на більше частин. Для базової конверсії 4 %, відносного приросту 10 % (з 4,0 % до 4,4 %) і потужності 80 % для кожного порівняння:
Порівняно зі звичайним A/B-тестом чотири варіанти з усіма парами потребують на 54 % більше користувачів на варіант і вдвічі більше груп: трафіку треба приблизно в 3,1 раза більше, тобто 12 повних тижнів замість 4.
То що дали Котокорму його чотири тижні? З 21 000 відвідувачів на варіант і порогом 0,0083 тест мав потужність 80 % лише для приросту від приблизно 17 %. Ті самі чотири тижні у звичайному A/B-тесті, по 42 000 відвідувачів у групі, дозволили б помітити приріст близько 10 %.
Калькулятор розміру вибірки для A/B-тесту планує тест із двома варіантами. Для грубої оцінки A/B/n-тесту поставте в ньому рівень значущості 1 % (це близько до скоригованих 0,83 %, тож оцінка трохи оптимістична) і помножте кількість користувачів на варіант на кількість варіантів.
Та сама проблема в метриках і сегментах
Варіанти — лише один зі способів намножити порівняння. Перевірте один A/B-тест на 10 метриках, і ймовірність хоча б одного хибнопозитивного результату сягне близько 40 %. Розріжте його на 8 сегментів (пристрій, канал, нові чи постійні клієнти), і лише для сегментів вона становитиме близько 34 %. «Нова кнопка працює для постійних клієнтів на Android» — здебільшого це замаскована проблема множинних порівнянь.
Заздалегідь оберіть одну основну метрику, а знахідки в сегментах вважайте гіпотезами для наступного тесту. Щоденне підглядання в результати теж множить порівняння. Поправка на кількість варіантів нічого з цього не покриває.
Типові помилки
Оголошувати переможцем найвищу конверсію. Найвища спостережувана конверсія — це факт про цю вибірку. Переможцю потрібна ще й значуща різниця з іншими варіантами після поправки.
Рахувати кожну пару в окремому A/B-калькуляторі. Кожен розрахунок нічого не знає про інші, тож на їхню кількість ніхто не зважає.
Відкидати варіанти заднім числом. Прибрати B і C, бо вони «очевидно програли», і перерахувати D проти A як звичайний A/B-тест — це обирати порівняння після перегляду даних.
Читати «незначуще» як «однакові». Скоригований інтервал для різниці D мінус C простягається від −0,27 до 0,82 відсоткового пункту: D може бути помітно кращим, а може й трохи гіршим.
Що робити на практиці
- До запуску запишіть варіанти, основну метрику, сімейство порівнянь (лише з контролем чи всі пари) і поправку.
- Плануйте вибірку зі скоригованим порогом і реальним поділом трафіку, а тоді округлюйте вгору до повних тижнів.
- Аналізуйте один раз, наприкінці, і показуйте скориговані p-значення разом з інтервалами.
- Віддавайте перевагу меншій кількості сміливіших варіантів. Написи, що відрізняються словом-двома, різнитимуться між собою на частки відсоткового пункту, і щоб їх розрізнити, потрібні місяці. Варіанти, що відрізняються по суті, мають шанс дати ефект, який можна помітити. Якщо трафіку мало, оберіть найсильнішу ідею на основі судження чи розмов із клієнтами й запустіть звичайний A/B-тест.
Головне
- В A/B/n-тесті ризик хоча б одного хибнопозитивного результату росте з кількістю порівнянь: приблизно 1 із 4 для шести незалежних порівнянь на рівні 5 %.
- Сімейство порівнянь і поправку фіксуйте до запуску.
- Поправка Бонферроні множить кожне p-значення на кількість порівнянь. Поправка Холма робить це поступово й рідше пропускає реальні ефекти.
- Найвища конверсія ще не переможець, доки вона значуще не відрізняється від інших варіантів.
- Чотири варіанти з усіма парами потребують приблизно втричі більше трафіку, ніж A/B-тест.
FAQ
Що таке A/B/n-тест?
Це тест, у якому трафік ділять між контролем і двома чи більше альтернативами того самого елемента, наприклад чотирма написами на кнопці. Літера «n» означає довільну кількість варіантів. Мультиваріантний тест влаштований інакше: він змінює кілька елементів одночасно й порівнює їхні комбінації.
Бонферроні чи Холм: яку поправку обрати?
Обидві утримують ризик для всього сімейства порівнянь на обраному рівні. Поправка Холма ніколи не суворіша, тому для p-значень вона краща як вибір за замовчуванням. Поправку Бонферроні простіше пояснити, і до неї є відповідні скориговані інтервали. Обирайте до того, як побачите результати.
Чи потрібна поправка, якщо порівнювати варіанти лише з контролем?
Так. Три порівняння з контролем на рівні 5 % кожне однаково дають до 14 % ризику хоча б одного хибнопозитивного результату. Поправка м'якша, ніж для всіх пар, бо сімейство менше: три порівняння замість шести.
Спробуйте на практиці
Множинні порівняння, підглядання та ефект новизни ламають тести, які на вигляд цілком справні. Безкоштовний урок «Пастки: підглядання, множинні порівняння, ефект новизни» розбирає їх на тестах Котокорму, з тестами на розуміння і практичним завданням, яке перевіряє ШІ. Це частина безкоштовного курсу «Статистика для продакт-менеджерів і маркетологів».