Условие
PM смотрит результаты A/B-теста и видит: «средний uplift = 3.2%, 95% CI = [0.5%; 5.9%]». Он трактует это как «с вероятностью 95% истинный uplift между 0.5% и 5.9%». Прав ли он? Сформулируйте корректную интерпретацию.
Решение
Частотная интерпретация CI
«95% CI» означает: если мы повторим эксперимент много раз и каждый раз построим такой интервал, то 95% построенных интервалов накроют истинное значение параметра.
Это утверждение о методе, а не о конкретном интервале. Для конкретного теста истинное значение либо лежит в [0.5%; 5.9%], либо нет — это уже фиксированная характеристика, не случайная.
Поэтому формально некорректно: «вероятность 95% что истинный uplift в этом интервале».
Что хочется сказать (но требует Bayes)
Утверждение P(параметр ∈ [a, b]) = 0.95 валидно только в байесовой парадигме — это credible interval, основанный на posterior distribution. Он требует prior. На практике для аналитика разница в формулировке часто несущественна, но интервью-вопрос «вы знаете разницу?» — частый.
Правильная формулировка
«В 95% случаев такая процедура построения интервала захватывает истинное значение. По нашему конкретному тесту — мы не знаем, попали ли мы в эти 95% или в 5% промахов, но статистически уверенно говорим, что uplift отличается от 0, потому что CI не содержит 0».
Что более полезно знать на практике
- CI не содержит 0 ↔ p < α для двустороннего теста (приблизительно, при симметричных распределениях). Это связывает CI и стат. значимость.
- Ширина CI =
2 · 1.96 · SE≈ MDE для уровня α=0.05 и power=50%. Чем уже CI, тем точнее оценка. - CI сужается как
1/√n. Удвоение точности требует 4× выборки. - Bayesian credible interval похож на CI при неинформативном prior и больших n.
Симуляция для интуиции
import numpy as np
true_mu = 5
hits = 0
for _ in range(1000):
sample = np.random.normal(true_mu, 1, size=100)
se = sample.std(ddof=1) / np.sqrt(100)
lo, hi = sample.mean() - 1.96*se, sample.mean() + 1.96*se
if lo <= true_mu <= hi:
hits += 1
print(hits / 1000) # ≈ 0.95Подводные камни
- «CI содержит истинное значение с вероятностью 95%» — для конкретного интервала неверно.
- CI и prediction interval — разные вещи. Первый — про параметр, второй — про следующее наблюдение.
- Перекрытие двух CI не означает «нет разницы». Стандартно перекрывающиеся 95% CI могут соответствовать значимой разнице (вплоть до p≈0.005).
- CI для не-нормально распределённого среднего на маленьком n искажён. Используйте bootstrap или t-distribution.
- «CI узкий — оценка точная». Узкий CI может быть на плохом методе с занижением дисперсии (peeking, недоучёт корреляций) — узость не гарантия качества.
Эталонный ответ
CI — характеристика метода: 95% из построенных таким методом интервалов накрывают истинный параметр. Для конкретного теста сказать «вероятность 95%, что истинное значение в CI» строго неверно (это credible interval, требующий байесова подхода). Практически: 95% CI не содержит 0 ↔ результат значим на α=0.05.