Биномиальное распределение простыми словами

Проверь себя · 1/3разбор после ответа
Курьер проехал первую половину пути со скоростью 60 км/ч, вторую — со скоростью 40 км/ч. Какова средняя скорость на всём пути?

Зачем это знать

A/B-тест с бинарной метрикой (конверсия) — это биномиальное распределение. Когда спрашивают «какая вероятность, что за 1000 визитов купят ровно 100» — это задача про биномиальное распределение.

На собесах middle+ аналитика биномиальное распределение всплывает в контексте power analysis, расчёта размера выборки и байесовского A/B. Без понимания — ответы слабые.

Короткое объяснение

Биномиальное B(N, p) описывает количество успехов в N независимых пробах, где каждая проба имеет вероятность успеха p.

Пример: бросили монету 10 раз. Сколько раз выпадет орёл? От 0 до 10. Это биномиальное с N=10, p=0.5.

Формула

P(X = k) = C(N, k) × p^k × (1 - p)^(N - k)

Где C(N, k) = N! / (k! × (N-k)!) — биномиальный коэффициент (сочетания).

Характеристики

  • Среднее: N × p
  • Дисперсия: N × p × (1 - p)
  • Std: √(N × p × (1 - p))

Пример в аналитике

1000 визитов, конверсия 10%. Сколько ожидается покупок?

E[X] = 1000 × 0.1 = 100 покупок.

Std = √(1000 × 0.1 × 0.9) = √90 ≈ 9.5.

Значит «обычно» 100 ± 9.5, то есть 90-110 покупок — нормальный разброс.

В Python

from scipy.stats import binom

# Вероятность ровно 100 покупок из 1000 при p = 0.1
print(binom.pmf(100, 1000, 0.1))

# Вероятность <= 95 покупок
print(binom.cdf(95, 1000, 0.1))

# Симуляция
samples = binom.rvs(n=1000, p=0.1, size=10000)

Аппроксимация нормальным

При большом N и не-краевом p:

Binomial(N, p) ≈ Normal(Np, √(Np(1-p)))

Правило: Np > 5 И N(1-p) > 5.

Подготовься к собесу по A/B и статистике
300+ вопросов с разбором: дизайн, размер выборки, p-value, ловушки
Тренировать A/B в Telegram

Аппроксимация Пуассоном

При малых p и больших N:

Binomial(N, p) ≈ Poisson(Np)

Когда 10 000 писем, конверсия 0.01% — удобнее Пуассон.

В A/B-тестах

Расчёт размера выборки

Для теста конверсии нужно найти N, при котором детектим MDE с заданной мощностью. Формула опирается на биномиальное.

Стандартная ошибка разницы пропорций

SE = √(p1(1-p1)/N1 + p2(1-p2)/N2)

Следует из дисперсии биномиального.

Chi-square тест

Сравнение двух конверсий — тест на биномиальные пропорции.

Типичные задачи

Задача 1

«Конверсия 5%, пришло 100 визитов. Какая вероятность, что будет ≥ 10 покупок?».

1 - binom.cdf(9, 100, 0.05) ≈ 2.8%

Задача 2

«Что более вероятно: 10 из 100 или 100 из 1000?».

У обоих одинаковая пропорция E[X], но разная дисперсия. 100/1000 более предсказуемо, 10/100 более шумно.

На собесе

«Что такое биномиальное?» N независимых Bernoulli с одинаковым p.

«Когда использовать?» Любая бинарная метрика, где N проб.

«Среднее, дисперсия?» Np и Np(1-p).

«Когда аппроксимируется нормальным?» Np > 5, N(1-p) > 5.

«Когда Пуассоном?» N большое, p маленькое, Np умеренное.

Частые ошибки

Путать с Bernoulli

Bernoulli — одна проба. Биномиальное — N проб.

Требует независимости

Если события зависимы (например, каскадные) — уже не биномиальное.

Маленькое p + малое N

binomial(N, 0.001) для N = 10 — нормальная аппроксимация плохо работает.

Применять Пуассон при большом p

При p > 0.05 аппроксимация Пуассоном даёт заметную ошибку. Используйте биномиальное напрямую.

Считать сумму Бернулли с разными p как биномиальное

Если у проб разные p — это уже Пуассон-биномиальное, а не биномиальное.

Связанные темы

FAQ

Когда не биномиальное?

Когда пробы не независимы или p меняется между пробами.

Почему N × p?

Mean — произведение N и вероятности каждой пробы.

Связь с нормальным?

По ЦПТ: Binomial(N, p) → Normal при большом N.