← Назад к вопросам

Что такое ошибки I и II рода в статистике? Приведите примеры в контексте A/B-тестирования.?

2.0 Middle🔥 221 комментариев
#A/B тестирование#Статистика и математика

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI26 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Ошибки I и II рода в статистике и A/B-тестировании

Ошибка I рода (False Positive) — мы отвергли нулевую гипотезу, хотя она верна. То есть, мы считаем, что эффект есть, но на самом деле его нет.

Ошибка II рода (False Negative) — мы не отвергли нулевую гипотезу, хотя она неверна. То есть, мы считаем, что эффекта нет, но на самом деле он есть.

Матрица ошибок (Confusion Matrix)

┌─────────────────────┬──────────────────┬──────────────────┐
│                     │ Эффект есть на самом деле │
│                     ├──────────────────┬──────────────────┤
│                     │ ДА (H₁ верна)    │ НЕТ (H₀ верна)   │
├─────────────────────┼──────────────────┼──────────────────┤
│ Мы сказали:         │                  │                  │
│ Эффект есть (H₁)    │ ✓ Правильно      │ ✗ Ошибка I рода  │
│                     │ (True Positive)  │ (False Positive) │
├─────────────────────┼──────────────────┼──────────────────┤
│ Мы сказали:         │                  │                  │
│ Эффекта нет (H₀)    │ ✗ Ошибка II рода │ ✓ Правильно      │
│                     │ (False Negative) │ (True Negative)  │
└─────────────────────┴──────────────────┴──────────────────┘

Нулевая и альтернативная гипотезы

H₀ (Нулевая гипотеза): нет разницы между группами

H₀: Control_CR = Test_CR (коэффициент конверсии одинаковый)

H₁ (Альтернативная гипотеза): есть разница

H₁: Control_CR ≠ Test_CR (коэффициент конверсии разный)

Ошибка I рода (False Positive, α)

Определение: мы думаем, что тест "победил", но это случайность.

Пример:

Контроль: 100 / 1000 = 10% конверсия
Тест:     105 / 1000 = 10,5% конверсия
Разница: +0,5% (статистически не значима!)

ОШИБКА I: мы решили, что тест лучше (p < 0.05)
На самом деле: это просто совпадение, эффекта нет

Последствия:
- Запустили плохой тест в продакшене
- Потеряли деньги на неэффективном change
- Дискредитировали A/B тестирование

Вероятность: α (alpha) — обычно 0,05 или 5% Это означает: в 5% случаев мы неправильно скажем "эффект есть"

Как контролировать:

  • Установить уровень значимости α = 0.05 (стандарт)
  • Увеличить размер выборки
  • Использовать Bonferroni correction при множественных тестах

Ошибка II рода (False Negative, β)

Определение: мы думаем, что эффекта нет, но он реально есть.

Пример:

Контроль: 1000 / 10000 = 10% конверсия
Тест:     1200 / 10000 = 12% конверсия
Разница: +2% (РЕАЛЬНЫЙ эффект!)

ОШИБКА II: мы решили, что разницы нет (p > 0.05)
На самом деле: эффект есть, но мы его не заметили

Последствия:
- Не запустили хорошую идею
- Потеряли доход, который мог бы быть
- Потратили время впустую

Вероятность: β (beta) — обычно 0,1-0,2 (10-20%) Мощность теста (Power) = 1 - β (часто 80-90%) Это означает: вероятность выявить реальный эффект

Как контролировать:

  • Увеличить размер выборки (главный способ)
  • Использовать sequential testing (ранний стоп)
  • Правильно рассчитать MDE (Minimum Detectable Effect)

Практические примеры в A/B-тестировании

Сценарий 1: Новый дизайн кнопки

Контроль: 50 покупок из 1000 = 5%
Тест: 52 покупок из 1000 = 5,2%
t-тест: p-value = 0.73 (не значимо)

Декларирование: "Дизайн не влияет на конверсию"

Что может быть:
Ошибка II рода: на самом деле дизайн лучше на 1%, но выборка слишком мала
Решение: увеличить выборку до 10000 пользователей

Сценарий 2: Новый алгоритм рекомендаций

Контроль: 100 покупок из 2000 = 5%
Тест: 115 покупок из 2000 = 5,75%
t-тест: p-value = 0.045 (значимо на α=0.05!)

Декларирование: "Новый алгоритм работает! +0,75%"

Что может быть:
Ошибка I рода: на самом деле нет эффекта, это случайность
Вероятность: 5% (по определению α)

Взаимосвязь α, β, и размера выборки

Чем больше размер выборки — тем ниже обе ошибки

Примеры:

Маленькая выборка (n = 100):
- Высокий риск Ошибки II (не заметим реальный эффект)
- Есть риск Ошибки I

Большая выборка (n = 100000):
- Низкий риск Ошибки II (почти точно заметим эффект)
- Низкий риск Ошибки I
- НО: можем выявить микроскопический эффект (0,1%), который не важен в бизнесе

SQL для расчёта размера выборки

-- Формула: n = (z_alpha + z_beta)^2 * (p1*(1-p1) + p2*(1-p2)) / (p2-p1)^2

WITH sample_calc AS (
  SELECT 
    0.05 as baseline_cr,  -- контроль конверсия
    0.06 as expected_cr,  -- ожидаемая конверсия теста (+1%)
    1.96 as z_alpha,      -- α=0.05, двусторонний
    0.84 as z_beta,       -- β=0.2, мощность 80%
    (1.96 + 0.84) as z_sum
)
SELECT 
  CEIL(POWER(z_sum, 2) * 
    (baseline_cr * (1 - baseline_cr) + expected_cr * (1 - expected_cr)) / 
    POWER(expected_cr - baseline_cr, 2)
  ) as required_sample_size_per_group
FROM sample_calc;

-- Результат: ~3138 пользователей на группу

Таблица соответствия между α и β

α (Ошибка I)β (Ошибка II)Power (мощность)Использование
0.05 (5%)0.20 (20%)80%Стандарт в industry
0.05 (5%)0.10 (10%)90%Когда важна точность
0.01 (1%)0.10 (10%)90%Очень критичные решения
0.10 (10%)0.20 (20%)80%Быстрые итеративные тесты

Примеры ошибок в реальных компаниях

Ошибка I рода (False Positive):

Компания запустила новый recommend engine и увидела рост на 2% (p=0.04). Запустили в 100% трафика. Через неделю обнаружили, что это была аномалия в данных, эффекта нет. Потеря репутации.

Ошибка II рода (False Negative):

Тестировали новый UI 2 недели, увидели рост на 1,5% (p=0.12). Решили, что не работает. На самом деле, при выборке 50000 пользователей, эффект был реальный (p=0.03). Потеряли 6 месяцев дохода.

Как избежать ошибок

1. Правильно рассчитать размер выборки

Не начинай тест без расчёта:
n = (z_alpha + z_beta)^2 * var / (effect_size)^2

2. Установить MDE (Minimum Detectable Effect)

В бизнесе определить: какой минимальный прирост нужен?
Если дизайн может улучшить конверсию на 1% и это приносит $100K в год
→ стоит тестировать с MDE = 0.5%

Если дизайн может улучшить на 0.1%, это не стоит того
→ не запускаем тест

3. Заранее определить длительность теста

Не смотреть на результаты раньше срока (peeking bias)
Остановить только если:
- Достигнута запланированная выборка
- Или есть явное нарушение (баг, критичное падение)

4. Использовать Sequential Testing

Можно остановить тест раньше, если:
- Эффект уже явно значимый (p < 0.001)
- Или явно нет эффекта и дальше бесполезно

5. Поправка на множественные тесты (Bonferroni)

Если запускаешь 10 A/B тестов одновременно:
Риск Ошибки I возрастает в 10 раз!
Решение: α = 0.05 / 10 = 0.005 для каждого теста

Роль Product Analyst

Product Analyst должен:

  1. Понимать оба типа ошибок и их последствия
  2. Правильно рассчитать размер выборки перед тестом
  3. Устанавливать MDE вместе с PM (минимальный эффект, что имеет смысл)
  4. Мониторить p-value и не спешить с выводами
  5. Документировать решения — какую α и β мы выбрали и почему

Это критичные знания для любого аналитика, работающего с A/B тестами. Ошибки могут стоить компании миллионы!

Что такое ошибки I и II рода в статистике? Приведите примеры в контексте A/B-тестирования.? | PrepBro