Confidence intervals на собеседовании Data Scientist

Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Карьерник — Duolingo для аналитиков: 10 минут в день тренируй SQL, Python, A/B, статистику, метрики и ещё 3 темы собеса. 1500+ вопросов в Telegram-боте. Бесплатно.

Зачем разбирать на собесе

CI — base статистики для analytics, A/B testing. На собесе DS: «как считать», «правильная интерпретация».

Что такое CI

Range, который с probability X (95% типично) содержит true parameter.

Не значит «95% probability that parameter в этом range» — это Bayesian credible interval.

Frequentist interpretation. Если повторить эксперимент много раз, 95% построенных CI содержат true parameter.

Parametric CI

Для mean при large N (Central Limit Theorem):

CI = mean ± z · (std / √N)

z = 1.96 для 95% CI.

import scipy.stats as stats
mean = data.mean()
se = data.std() / np.sqrt(len(data))
ci = stats.norm.interval(0.95, loc=mean, scale=se)

Для small N — t-distribution вместо normal.

Bootstrap CI

Non-parametric — не предполагает distribution.

Алгоритм:

  1. Resample with replacement N раз (B = 1000-10000 bootstraps).
  2. Compute statistic для каждого resample.
  3. CI = percentiles (2.5% и 97.5%).
boot_means = [np.mean(np.random.choice(data, len(data), replace=True))
              for _ in range(10000)]
ci = np.percentile(boot_means, [2.5, 97.5])

Pros: работает на любую statistic (median, ratio, AUC). Не предполагает distribution.

Cons: computationally expensive.

Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Интерпретация

Правильно:

  • «95% CI: [10, 14]».
  • «CI procedure имеет 95% coverage».

Неправильно:

  • «95% probability что parameter в [10, 14]» (Bayesian).
  • «95% confidence that parameter ≈ 12».

В indeed practical sense — обычно достаточно близкая интуиция, но academic / paper writing требует точности.

Ошибки интерпретации

CI overlaps → no significance. Не точно. Independent test нужен.

Wider CI = bad model. Wider — больше uncertainty. Не «плохо», но less precise.

95% CI рекомендуется ВСЕГДА. Можно 90 / 99 — depends на use case.

Sample mean inside CI → null hypothesis confirmed. «Confirmed» только в weak sense — failed to reject.

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

FAQ

Bootstrap valid для time series?

Naive — нет, нарушает temporal dependency. Block bootstrap — да.

Это официальная информация?

Нет. Статья основана на классике (Efron 1979 bootstrap) и стандартных подходах статистики.


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