Собесов

alexeygrigorev/data-science-interviews: что такое p-value и как его не интерпретировать

Статистика и теорверГипотезыСредняяMiddle

Условие

Что такое p-value? Если в A/B-тесте получили p-value = 0.03, какие выводы можно делать, а какие нельзя?

Решение

Подход

Формальное определение: p-value — это вероятность получить статистику, как минимум столь же экстремальную, как наблюдаемая, при условии что нулевая гипотеза верна.

Если H₀: «нет разницы между A и B», и p = 0.03, то «при условии что разницы нет, такое или более выраженное расхождение в данных встречается в 3% случаев».

Что можно сказать при p = 0.03

  • При α = 0.05 — отклоняем H₀, говорим о «статистически значимой» разнице.
  • Это слабая улика против H₀, не доказательство её ложности.

Что нельзя

  • p-value ≠ вероятность того, что H₀ верна. Для этого нужен байесовский подход.
  • p-value ≠ вероятность того, что результат повторится в новом эксперименте.
  • Маленький p при большой выборке не означает «бизнес-значимый эффект». Различие на 0.01% можно сделать значимым на миллионе пользователей.
  • p-value сам по себе ничего не говорит о размере эффекта.

Что лучше делать

  1. Смотреть доверительный интервал для эффекта — он сразу показывает и направление, и величину, и неопределённость.
  2. Фиксировать минимально интересный эффект (MDE) до старта теста.
  3. При множественных проверках — корректировка (Бонферрони, BH).
from scipy import stats
 
# z-test для разницы двух конверсий
import statsmodels.stats.proportion as smp
z, p = smp.proportions_ztest([120, 100], [2000, 2000])
print(p)

Подводные камни

  1. Peeking — подглядывать в результаты ежедневно и останавливать тест при p < 0.05. Это раздувает FPR с 5% до 30-50%. Нужны sequential testing или фиксированная длительность.
  2. На очень большой выборке любая микроскопическая разница даст p < 0.05. Бизнес-значимость и стат-значимость — это разные вещи.
  3. p-value 0.06 «почти значимо» — не существует. Граница α — это просто соглашение.

Эталонный ответ

P-value — вероятность увидеть такие или более экстремальные данные при условии H₀. p = 0.03 означает: при отсутствии эффекта такое расхождение случается 3% времени. Это не вероятность того, что H₀ ложна. Обязательно смотрите ещё на размер эффекта и доверительный интервал.

Хочешь увидеть разбор?

Зарегистрируйся бесплатно — откроется развёрнутое решение этой задачи и ещё 4 на выбор.

Зарегистрироваться и увидеть разбор
Уже есть аккаунт? Войти