Мы почти никогда не видим всю генеральную совокупность, только выборку. Центральная предельная теорема и доверительные интервалы отвечают на вопрос: насколько можно доверять числу, посчитанному по выборке.
Выборочное распределение
Возьмите выборку из 1000 пользователей и посчитайте средний чек. Возьмите другую выборку: получится немного другое число. Распределение этих средних по всем возможным выборкам называют выборочным распределением среднего. Его стандартное отклонение называется стандартной ошибкой (SE):
SE = σ / √n
Стандартная ошибка падает как корень из n: чтобы сузить разброс оценки вдвое, нужно вчетверо больше данных.
Не путайте: стандартное отклонение описывает разброс данных, стандартная ошибка описывает разброс оценки.
Центральная предельная теорема
Если наблюдения независимы и одинаково распределены с конечной дисперсией, то при росте n распределение выборочного среднего приближается к нормальному со средним μ и стандартным отклонением σ/√n. Какой бы формы ни были сами данные.
Это главный рабочий инструмент: благодаря ЦПТ мы применяем z- и t-тесты к конверсиям и чекам, которые сами по себе совсем не нормальны.
Оговорки:
- «Достаточно большое n» зависит от формы данных. Для симметричных хватит десятков, для денежных метрик с тяжёлым хвостом могут понадобиться тысячи.
- Наблюдения должны быть независимы. Если в выборке клики, а пользователь кликает много раз, клики одного пользователя зависимы, и наивная SE занижена.
- При бесконечной дисперсии (очень тяжёлые хвосты) ЦПТ не работает.
Доверительный интервал для среднего
95% доверительный интервал:
mean ± 1.96 · s / √n
где s выборочное стандартное отклонение. На маленьких выборках вместо 1.96 берут квантиль t-распределения с n - 1 степенями свободы, он больше.
from statistics import NormalDist, mean, stdev
from math import sqrt
x = [...]
z = NormalDist().inv_cdf(0.975) # 1.96
se = stdev(x) / sqrt(len(x))
ci = (mean(x) - z * se, mean(x) + z * se)
Доверительный интервал для доли
Для конверсии p̂ = успехи / n:
p̂ ± 1.96 · √(p̂(1 - p̂) / n)
Это интервал Вальда. Он плохо работает при малых n и при p̂ близкой к 0 или 1 (например, 0 успехов дают интервал нулевой ширины). Тогда используют интервал Уилсона.
Как правильно читать интервал
Правильно: «если повторять эксперимент много раз и каждый раз строить интервал этим методом, 95% интервалов накроют истинное значение».
Неправильно: «с вероятностью 95% истинное значение лежит в этом интервале». В частотном подходе истинное значение фиксировано, а случайен интервал. Именно так рассуждает байесовский достоверный интервал, но это другой метод.
На собесе от аналитика обычно ждут знания этой разницы, но в разговоре с бизнесом допустимо сказать проще: «правдоподобный диапазон эффекта».
Что влияет на ширину
- Больше n: уже интервал (как 1/√n).
- Больше разброс данных: шире.
- Выше уровень доверия (99% вместо 95%): шире.
Интервал для разницы
В A/B-тесте нужен интервал для разницы средних: SE_diff = √(s₁²/n₁ + s₂²/n₂). Если интервал разницы не содержит 0, разница значима на соответствующем уровне. Интервал полезнее одного p-value: он показывает и знак, и правдоподобный размер эффекта.
Частые ошибки
- Путать стандартное отклонение и стандартную ошибку.
- Считать, что ЦПТ делает нормальными сами данные.
- Применять формулы к зависимым наблюдениям (клики, сессии одного пользователя).
- Делать вывод «интервалы двух групп пересекаются, значит разницы нет». Пересечение 95% интервалов групп ещё не означает незначимую разницу; смотреть нужно на интервал разницы.
Что спросят на собесе
- Сформулируйте ЦПТ и зачем она аналитику.
- Чем стандартная ошибка отличается от стандартного отклонения?
- Как построить доверительный интервал для конверсии?
- Как правильно интерпретировать 95% доверительный интервал?
- Во сколько раз нужно увеличить выборку, чтобы сузить интервал вдвое?