Перейти до змісту
Увійти

A/B/n-тест: як порівняти три й більше варіантів без хибного переможця

A/B/n-тест множить шанси на хибного переможця. Як працюють поправки Бонферроні та Холма: приклад із чотирма варіантами і ціна в трафіку.

Автор: Sergey BruhОпубліковано 9 хв читання

A/B/n-тест порівнює контроль одразу з двома чи більше альтернативами, і кожен додатковий варіант додає порівнянь, а кожне порівняння дає ще один шанс на хибнопозитивний результат, тому варіант із найменшим p-значенням не можна просто оголосити переможцем. Чотири варіанти утворюють шість можливих пар. Якщо кожну пару перевіряти на звичному рівні 5 %, імовірність хоча б одного хибнопозитивного результату становить уже близько 20–26 %, а не 5 %. Вихід такий: заздалегідь вирішити, які порівняння ви робитимете, і застосувати поправку (Бонферроні або Холма), що утримує ризик для всього тесту на рівні 5 %. Це працює, але коштує трафіку.

Чотири кнопки й один спокусливий переможець

Котокорм, інтернет-магазин кормів для тварин, тестує напис на кнопці оформлення замовлення. Emily, продакт-менеджерка, мала три нові ідеї, тож у тест пішли всі три разом із поточним написом. Тест тривав чотири тижні, чекаут відвідували близько 3 000 людей на день, трафік ділили порівну:

Варіант
Напис на кнопці
Відвідувачі
Замовлення
Конверсія
A (контроль)
Оформити замовлення
21 000
840
4,00 %
B
Купити зараз
21 000
861
4,10 %
C
Завершити замовлення
21 000
948
4,51 %
D
Отримати з доставкою
21 000
1 006
4,79 %

Emily рахує z-критерій для двох часток для кожної пари й отримує чотири «значущі» результати із шести. У D найвища конверсія і найменше p-значення проти контролю, тож слайд майже готовий: «D переміг, +19,8 %». Але спершу варто відповісти на два запитання. Скільки з цих чотирьох результатів можуть бути шумом? І чи справді D кращий за C?

Чому ризик росте з кожним порівнянням

Одне порівняння на рівні α=0,05\alpha = 0{,}05 має 5 % шансів на хибнопозитивний результат, коли реальної різниці немає. Для mm незалежних порівнянь імовірність, що спрацює хоча б одне, дорівнює:

P(хоча б один хибнопозитивний результат)=1−(1−α)mP(\text{хоча б один хибнопозитивний результат}) = 1 - (1 - \alpha)^m
Варіантів
Порівнянь лише з контролем
Ризик
Усіх пар
Ризик
2
1
5,0 %
1
5,0 %
3
2
9,8 %
3
14,3 %
4
3
14,3 %
6
26,5 %
5
4
18,5 %
10
40,1 %
6
5
22,6 %
15
53,7 %

Формула припускає, що порівняння незалежні. В одному тесті вони мають спільні дані (кожна пара з A використовує ту саму контрольну групу), тому реальний ризик дещо нижчий: симуляція дає близько 12 % для всіх пар трьох варіантів і близько 20 % для всіх пар чотирьох. У будь-якому разі це в кілька разів більше за 5 %, на які ви погоджувалися. Це і є проблема множинних порівнянь: найменше із шести p-значень важить значно менше, ніж таке саме p-значення у звичайному A/B-тесті.

Підхід у два кроки

Крок 1: загальний тест. Чи є між варіантами бодай якась різниця? Для конверсії це критерій хі-квадрат на таблиці замовлень і відвідувачів без замовлення для всіх чотирьох варіантів. Дані Котокорму дають χ2=20,49\chi^2 = 20{,}49 із 3 ступенями свободи та p≈0,0001p \approx 0{,}0001. Варіанти не однакові, проте тест не каже, які саме відрізняються. Для середніх, наприклад середнього чека, така сама логіка працює в парі ANOVA й апостеріорні порівняння.

Крок 2: попарні порівняння з поправкою. Порівнюйте пари, але ставте кожному p-значенню суворішу планку, щоб ризик хоча б одного хибнопозитивного результату в усьому сімействі порівнянь лишався 5 %. Захищає саме цей крок: поправка працює і з загальним тестом, і без нього.

Бонферроні та Холм простими словами

Поправка Бонферроні ділить 5 % порівну. За шести порівнянь кожне має пройти поріг 0,05/6≈0,00830{,}05 / 6 \approx 0{,}0083. Те саме іншими словами: помножте кожне p-значення на 6 (але не більше ніж до 1) і порівняйте з 0,05.

Поправка Холма витрачає ті самі 5 % поступово. Впорядкуйте p-значення від найменшого до найбільшого, найменше помножте на 6, наступне на 5, далі на 4 і так далі. Ідіть списком згори вниз і зупиніться на першому скоригованому значенні, яке дорівнює 0,05 або більше: це порівняння і всі наступні незначущі.

Пара
Різниця, в. п.
p без поправки
p за Бонферроні
p за Холмом
D проти A
0,79
< 0,0001
0,0005
0,0005
D проти B
0,69
0,0006
0,0036
0,0030
C проти A
0,51
0,0090
0,0543
0,0362
C проти B
0,41
0,0365
0,2192
0,1096
D проти C
0,28
0,1790
1
0,3581
B проти A
0,10
0,6032
1
0,6032

Скориговані значення пораховано з неокруглених 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 % для кожного порівняння:

Дизайн
Поріг для одного порівняння
Користувачів на варіант
Разом
Днів за 3 000 на день
A/B
0,05
39 475
78 950
27
3 варіанти, усі пари
0,0167
52 654
157 962
53
4 варіанти, лише з контролем
0,0167
52 654
210 616
71
4 варіанти, усі пари
0,0083
60 904
243 616
82
5 варіантів, усі пари
0,005
66 955
334 775
112

Порівняно зі звичайним 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 може бути помітно кращим, а може й трохи гіршим.

Що робити на практиці

  1. До запуску запишіть варіанти, основну метрику, сімейство порівнянь (лише з контролем чи всі пари) і поправку.
  2. Плануйте вибірку зі скоригованим порогом і реальним поділом трафіку, а тоді округлюйте вгору до повних тижнів.
  3. Аналізуйте один раз, наприкінці, і показуйте скориговані p-значення разом з інтервалами.
  4. Віддавайте перевагу меншій кількості сміливіших варіантів. Написи, що відрізняються словом-двома, різнитимуться між собою на частки відсоткового пункту, і щоб їх розрізнити, потрібні місяці. Варіанти, що відрізняються по суті, мають шанс дати ефект, який можна помітити. Якщо трафіку мало, оберіть найсильнішу ідею на основі судження чи розмов із клієнтами й запустіть звичайний A/B-тест.

Головне

  • В A/B/n-тесті ризик хоча б одного хибнопозитивного результату росте з кількістю порівнянь: приблизно 1 із 4 для шести незалежних порівнянь на рівні 5 %.
  • Сімейство порівнянь і поправку фіксуйте до запуску.
  • Поправка Бонферроні множить кожне p-значення на кількість порівнянь. Поправка Холма робить це поступово й рідше пропускає реальні ефекти.
  • Найвища конверсія ще не переможець, доки вона значуще не відрізняється від інших варіантів.
  • Чотири варіанти з усіма парами потребують приблизно втричі більше трафіку, ніж A/B-тест.

FAQ

Що таке A/B/n-тест?

Це тест, у якому трафік ділять між контролем і двома чи більше альтернативами того самого елемента, наприклад чотирма написами на кнопці. Літера «n» означає довільну кількість варіантів. Мультиваріантний тест влаштований інакше: він змінює кілька елементів одночасно й порівнює їхні комбінації.

Бонферроні чи Холм: яку поправку обрати?

Обидві утримують ризик для всього сімейства порівнянь на обраному рівні. Поправка Холма ніколи не суворіша, тому для p-значень вона краща як вибір за замовчуванням. Поправку Бонферроні простіше пояснити, і до неї є відповідні скориговані інтервали. Обирайте до того, як побачите результати.

Чи потрібна поправка, якщо порівнювати варіанти лише з контролем?

Так. Три порівняння з контролем на рівні 5 % кожне однаково дають до 14 % ризику хоча б одного хибнопозитивного результату. Поправка м'якша, ніж для всіх пар, бо сімейство менше: три порівняння замість шести.

Спробуйте на практиці

Множинні порівняння, підглядання та ефект новизни ламають тести, які на вигляд цілком справні. Безкоштовний урок «Пастки: підглядання, множинні порівняння, ефект новизни» розбирає їх на тестах Котокорму, з тестами на розуміння і практичним завданням, яке перевіряє ШІ. Це частина безкоштовного курсу «Статистика для продакт-менеджерів і маркетологів».

Вивчіть це в курсі

Вивчайте статистику на практиці

Безкоштовний курс для продактів і маркетологів: короткі уроки, реальні продуктові дані та вправи з миттєвим фідбеком.

Почати безкоштовний курс

Схожі статті

8 хв читання

Підглядання в A/B-тестах: чому «вже значущий» — ще не результат

Підглядання в A/B-тестах множить хибні перемоги: у 100 000 симульованих A/A-тестів щоденні перевірки дали 27,6 % помилок замість 5 %. Що робити натомість.