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

Карьерник — квиз-тренажёр в Telegram с 1500+ вопросами для собесов аналитика. SQL, Python, A/B, метрики. Бесплатно.

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

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

На собесах middle+ аналитика биномиальное распределение всплывает в контексте power analysis, sample size calculation и Bayesian 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 визитов, CR = 10%. Сколько ожидается покупок?

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

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

Значит «обычно» 100 ± 9.5, то есть 90-110 покупок — normal variation.

В 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.

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

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

Binomial(N, p) ≈ Poisson(Np)

Когда 10 000 писем, CR = 0.01% — удобнее Poisson.

В A/B-тестах

Sample size calculation

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

Standard error разницы пропорций

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

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

Chi-square тест

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

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

Задача 1

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

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

Задача 2

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

Оба имеют E[X] в одинаковой пропорции, но разную variance. 100/1000 более предсказуемо, 10/100 более volatile.

На собесе

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

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

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

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

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

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

Путать с Bernoulli

Bernoulli — одна проба. Binomial — N проб.

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

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

Небольшое p + N

binomial(N, 0.001) для N = 10 — Normal approximation плохо работает.

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

FAQ

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

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

Почему N × p?

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

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

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


Тренируйте статистику — откройте тренажёр с 1500+ вопросами для собесов.