Что такое p-value и как его интерпретировать в контексте A/B-тестирования?
Комментарии (1)
Ответ сгенерирован нейросетью и может содержать ошибки
p-value в A/B-тестировании — неправильно понимаемая, но критическая метрика
p-value — это одна из самых неправильно интерпретируемых статистических метрик в A/B-тестировании. Это не вероятность того, что вариант лучше, а вероятность наблюдаемых данных при предположении, что нулевая гипотеза верна.
Что такое p-value на самом деле
Определение: p-value — это вероятность получить наблюдаемые результаты (или более экстремальные) ЕСЛИ нулевая гипотеза верна (т.е. если между вариантами нет разницы).
Математически: P-value = P(Observed Data given H0 is True)
Где H0 (нулевая гипотеза) обычно звучит как: Нет разницы между вариантом A и вариантом B
Пример A/B-теста
Сценарий: Тестируем две версии кнопки на сайте.
Вариант A (контроль): 1,000 пользователей, 100 кликов (10% конверсия)
Вариант B (тест): 1,000 пользователей, 120 кликов (12% конверсия)
Разница: 2 процентных пункта
Статистический тест даёт: p-value = 0.045
Что это означает: Если между вариантами на самом деле нет никакой разницы (обе версии одинаково хорошие), вероятность увидеть такую разницу в результатах (или ещё большую) составляет 4.5%.
Что p-value НЕ означает
Это критически важно:
Неправильно:
- Вероятность того, что вариант B лучше (это неверно!)
- Практическую значимость результата
- Размер эффекта
- Вероятность ошибки в эксперименте
Правильно:
- Вероятность данных при нулевой гипотезе
- Насколько экстремальны наблюдаемые результаты
- Статистическую редкость наблюдаемой разницы
Пороги значимости (alpha-level)
В науке используются стандартные пороги:
p меньше 0.05 — статистически значимо на 95% уровне
- Это означает, что риск ошибки (Type I error) менее 5%
- Стандарт в большинстве отраслей
- Можно остановить тест и внедрить вариант
p меньше 0.01 — статистически значимо на 99% уровне
- Более консервативный порог
- Используется для критичных экспериментов
- Требует больше данных
p меньше 0.10 — слабая значимость
- Иногда используется в ранних экспериментах
- Требует больше исследований
Ошибка интерпретации: Type I Error (False Positive)
Type I Error (alpha) — вероятность отклонить нулевую гипотезу, когда она на самом деле верна (найти победителя, когда его нет).
Если p-value = 0.05 и ты используешь 0.05 порог:
- Вероятность того, что ты ошибаешься = 5%
- В 5% случаев объявишь победителя, которого нет
Практический пример интерпретации
Результаты A/B-теста:
Вариант A: 10,000 пользователей, 15% конверсия Вариант B: 10,000 пользователей, 16.5% конверсия p-value = 0.02
Правильная интерпретация: Если вариант A и B на самом деле одинаковы, вероятность увидеть разницу в 1.5% или больше составляет 2%. Это редко, поэтому мы отклоняем нулевую гипотезу и считаем вариант B лучше с 95% уверенностью.
Неправильная интерпретация:
- Вариант B на 98% лучше (неверно)
- Есть 2% шанс, что вариант B не победит (неверно)
Факторы, влияющие на p-value
1. Размер эффекта (Effect Size)
- Чем больше разница между вариантами, тем меньше p-value
2. Размер выборки (Sample Size)
- Чем больше данных, тем меньше p-value (при одинаковой разнице)
- Большая выборка может найти значимой очень маленькую практически бесполезную разницу
3. Вариабельность данных (Variance)
- Чем более стабильны данные, тем меньше p-value
- Высокая вариабельность требует большего размера выборки
Правильный подход к A/B-тестированию
1. Определи размер выборки ДО теста
alpha = 0.05
beta = 0.20
p1 = 0.10
p2 = 0.12
2. Собери эту выборку (не заканчивай тест рано)
3. Проведи статистический тест
from scipy.stats import chi2_contingency
contingency_table = [
[conversions_a, non_conversions_a],
[conversions_b, non_conversions_b]
]
chi2, p_value, dof, expected = chi2_contingency(contingency_table)
4. Интерпретируй результат
- p-value меньше 0.05 → Достаточно доказательств отклонить H0
- p-value больше или равно 0.05 → Недостаточно доказательств
Важные ошибки
Ошибка 1: Early Stopping (Peeking)
- Проверяешь результаты каждый день
- Повышает риск Type I Error
- Нужно зафиксировать размер выборки заранее
Ошибка 2: Multiple Testing
- Запускаешь 20 A/B-тестов
- По статистике примерно 1 будет значимым случайно (5% × 20)
- Нужно применять correction (Bonferroni)
Ошибка 3: Confusion с Confidence Interval
- p-value = 0.05 НЕ означает, что истинное значение в доверительном интервале
Выводы
- p-value — это вероятность данных при нулевой гипотезе, не вероятность победы варианта
- p меньше 0.05 — стандарт, но это условность, а не магическое число
- Всегда считай размер выборки заранее — не заканчивай тест рано
- Смотри на confidence interval и effect size — не только на p-value
- p-value + здравый смысл — статистика это инструмент, не решение
Понимание p-value критично для правильного проведения A/B-тестов и принятия решений на основе данных.