Где используется p-value?

«Где используется p-value?» — вопрос из категории Статистика и теория вероятностей, который задают на 26% собеседований Data Scientist / ML Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

P-value — это фундаментальная концепция в частотной статистике, которую я применяю для принятия решений на основе данных. Основное использование — проверка статистических гипотез.

Мои практические сценарии применения:

  1. A/B-тестирование: Оцениваю, является ли разница в метриках (например, конверсии, среднем чеке) между контрольной и тестовой группой статистически значимой, а не случайной флуктуацией.
  2. Анализ значимости признаков в ML: При построении линейных моделей (линейная/логистическая регрессия) смотрю на p-value коэффициентов, чтобы отсеять неинформативные признаки.
  3. Валидация результатов экспериментов: В научно-ориентированных проектах (например, биоинформатика) p-value используется как стандартный порог для публикации результатов.

Пример на Python (scipy.stats):

import numpy as np
from scipy import stats

# Симулируем данные A/B-теста: конверсии в двух группах
conversions_A = np.random.binomial(1, 0.10, size=1000)  # Контроль: 10%
conversions_B = np.random.binomial(1, 0.12, size=1000)  # Тест: 12%

# Проводим тест на равенство пропорций (хи-квадрат)
from scipy.stats import chi2_contingency
contingency_table = np.array([
    [conversions_A.sum(), len(conversions_A) - conversions_A.sum()],
    [conversions_B.sum(), len(conversions_B) - conversions_B.sum()]
])
chi2, p_value, dof, expected = chi2_contingency(contingency_table)

print(f"P-value: {p_value:.4f}")
if p_value < 0.05:  # Уровень значимости alpha = 0.05
    print("Отвергаем нулевую гипотезу: разница в конверсии статистически значима.")
else:
    print("Нет оснований отвергать нулевую гипотезу.")

Критически важные замечания из практики:

  • P-value не является вероятностью того, что гипотеза верна. Это вероятность наблюдать такие или более экстремальные данные при условии истинности нулевой гипотезы.
  • Маленький p-value не говорит о размере эффекта (effect size). Разница может быть статистически значимой, но коммерчески незначимой. Всегда нужно смотреть на доверительные интервалы.
  • Слепая опора на порог 0.05 может быть опасна. Контекст и предметная область важны.