В математической статистике, чтобы оценить значение какого-то параметра случайного процесса (или, например, истинного значения физического параметра, измеряемого с погрешностью), анализируют конечную выборку значений. Эта выборка всегда случайная, поэтому точно оценить параметр нельзя, а значит нужно оценивать с помощью интервалов. На этом же основана статистическая обработка результатов научных экспериментов. Но что означают эти интервалы? Об этом и поговорим.
Представьте классическую ситуацию. Вы — аналитик. Вы только что провели A/B-тест или оценили средний чек. Ваш скрипт на Python выдал результат:
95% Confidence Interval: [100, 120].
Вы приходите к продакт-менеджеру и уверенно говорите:
С вероятностью 95% истинный средний чек находится между 100 и 120 рублями.
Менеджер доволен, вы довольны. Все звучит логично. Но у меня для вас новости. В этом утверждении вы допустили фундаментальную ошибку.
Если бы в комнате сидел настоящий математик, он бы начал кричать:
Нет там никакой вероятности! Параметр либо там, либо нет!.
Вы бы подумали, что он сумасшедший. Но самое смешное (и страшное) в том, что он прав.
Это самая распространенная и устойчивая когнитивная ошибка в Data Science. Она встречается в курсовых, в учебниках и даже в документациях библиотек.
Здесь мы напишем симуляцию на Python, увидим, как «прыгают» интервалы, поймем, как тут могут помочь пластмассовые игрушки советских детей, и узнаем, как же тогда математически точно отвечать менеджерам на их вопросы, чтобы они перестали с вами разговаривать.
Добро пожаловать в кроличью нору частотной статистики.
1. Тест на интуицию
Давайте проверим вашу интуицию на прочность. Забудьте сложные формулы, включите здравый смысл.
Дано: Мы провели эксперимент и получили 95% доверительный интервал: .
Вопрос: Какова вероятность того, что истинное среднее значение находится внутри этого отрезка? Выберите вариант:
95%. (Ну, это же 95-процентный интервал, очевидно).
5%. (Вопрос с подвохом?).
0 или 1. (Либо да, либо нет).
50%. (Как встретить динозавра: либо встречу, либо нет).
Нажмите, чтобы узнать правильный ответ
Правильный ответ: 3 (0 или 1).
Если вы выбрали вариант 1, поздравляю — вы попали в самую массовую ловушку интерпретации данных. Вы приписали вероятность факту, который уже свершился.
В чем подвох?
Когда мы говорим «вероятность 95%», наш мозг рисует такую картину: границы интервала — это твердые стены, а истинный параметр — это «призрачный шарик», который случайно болтается где-то посередине.
Но классическая (частотная) статистика видит мир иначе:
Истинный параметр
— это константа. Он не случайный, он просто есть.
Интервал — это ловушка. Это мы строим рамку вокруг предполагаемого места.
Поскольку вы уже получили числа (5 и 10), рамка нарисована. Гвоздь (истина) либо попал внутрь рамки, либо нет.
Если попал — вероятность 100%.
Если промахнулся — вероятность 0%.
Третьего не дано. Гвоздь не может быть «на 95% внутри рамки».
2. Бог не играет в кости (а мы играем)
В мире частотной статистики действует жесткое правило: истина одна и она неизменна.
Представьте, что мы хотим узнать истинный рост всех людей на Земле. Это число существует. Если бы мы могли остановить время и измерить всех, мы бы получили конкретное число, скажем, 170.543... см.
Откуда тогда берется 95%?
Если камень неподвижен, что тогда движется? Движемся мы.
Мы не можем измерить всех, поэтому берем выборку.
Сегодня мы зачерпнули воду и поймали много высоких людей — среднее выборки улетело вправо.
Завтра зачерпнули — попались низкие. Среднее улетело влево.
Доверительный интервал — это не твердая коробка, в которую мы ловим дрожащий атом истины. Всё ровно наоборот. Истинное значение параметра — это неподвижный атом. А доверительный интервал — это дрожащая коробка, которую мы пытаемся на него накинуть.
Давайте увидим это своими глазами. Напишем симуляцию, где истинное математическое ожидание стоит на месте, а мы 10 раз пытаемся её «поймать».
import numpy as np
import scipy.stats as stats
# 1. Бог не играет в кости: Фиксируем Истину
TRUE_MEAN = 100 # Невидимый гвоздь
POPULATION_STD = 15 # Разброс в генеральной совокупности
# Параметры нашей игры
SAMPLE_SIZE = 50 # Размер выборки
N_EXPERIMENTS = 10 # Количество попыток
print(f"ИСТИНА (скрытая от нас): {TRUE_MEAN}\n")
# ИСПРАВЛЕННАЯ СТРОКА ЗАГОЛОВКА:
print(f"{'Exp #':<7} | {'Нижняя' :<10} | {'Верхняя':<10} | {'Поймали?'}")
print("-" * 50)
for i in range(N_EXPERIMENTS):
# Генерируем выборку (черпаем данные)
sample = np.random.normal(loc=TRUE_MEAN, scale=POPULATION_STD, size=SAMPLE_SIZE)
# Считаем статистики
sample_mean = np.mean(sample)
sample_sem = stats.sem(sample)
# Строим 95% CI (Это случайная величина!)
confidence = 0.95
interval = stats.t.interval(confidence, df=len(sample)-1, loc=sample_mean, scale=sample_sem)
lower, upper = interval
hit = lower <= TRUE_MEAN <= upper
status = "✅ ДА" if hit else "❌ НЕТ"
# ИСПРАВЛЕННАЯ СТРОКА ВЫВОДА:
print(f"{i+1:<7} | {lower:.2f} | {upper:.2f} | {status}")
Результат:
ИСТИНА (скрытая от нас): 100
Exp # | Нижняя | Верхняя | Поймали?
1 | 96.96 | 106.52 | ✅ ДА
2 | 94.98 | 104.08 | ✅ ДА
3 | 96.94 | 104.81 | ✅ ДА
4 | 96.04 | 103.58 | ✅ ДА
5 | 100.26 | 109.15 | ❌ НЕТ
6 | 93.83 | 100.05 | ✅ ДА
7 | 96.59 | 106.00 | ✅ ДА
8 | 92.36 | 102.29 | ✅ ДА
9 | 96.09 | 104.04 | ✅ ДА
10 | 96.85 | 105.54 | ✅ ДА
Вы видите, что в большинстве случаев мы ловим истину. Но обратите внимание на неудачные попытки (например, Exp #5, зависит от запуска). Там интервал может быть [100.26, 109.15]. Истина (100) в него не входит. Для этого конкретного интервала вероятность попадания — ноль. Но аналитик, получивший эти данные, этого не знает!

3. Визуализация проблемы: лес зелёных и красных линий
Чтобы окончательно разрушить иллюзию, давайте проведем масштабную симуляцию. Мы запустим 100 независимых исследователей. Каждый построит свой интервал.
Если интервал накрыл истину — красим в зеленый.
Если промахнулся — в красный.
import numpy as np
import matplotlib.pyplot as plt
import scipy.stats as stats
NP = 100 # 100 исследователей
N_SAMPLES = 50 # Размер выборки
MU = 0 # Истина
SIGMA = 1
plt.figure(figsize=(10, 8))
# Рисуем Истину (черная линия)
plt.axvline(x=MU, color='black', linestyle='-', linewidth=3, label=r'Истина ($\mu$)')
missed_count = 0
np.random.seed(25)
for i in range(NP):
sample = np.random.normal(loc=MU, scale=SIGMA, size=N_SAMPLES)
# Считаем CI
ci = stats.t.interval(0.95, df=len(sample)-1, loc=np.mean(sample), scale=stats.sem(sample))
low, high = ci
# ИСПРАВЛЕННОЕ УСЛОВИЕ:
# Проверяем, попал ли ноль (Истина) в интервал
if low <= MU <= high:
color = 'green'
else:
color = 'red'
missed_count += 1
plt.hlines(i, low, high, colors=color, alpha=0.8, linewidth=2)
plt.title(f'Forest Plot: {missed_count} промахов из {NP}', fontsize=16)
plt.xlabel('Значение параметра')
plt.yticks([])
plt.xlim(-1, 1)
plt.legend() # Выводим легенду
plt.show()

Что мы видим на графике?
Вы видите много зеленых линий и несколько красных. А теперь представьте, что вы — исследователь, которому досталась красная линия. Вы не видите черную вертикальную черту (Истину). Вы видите только свой красный отрезок.
Вы говорите: «Истина внутри с вероятностью 95%».
Но реальность такова, что истина вообще не там.
Главный вывод:
95% — это не свойство вашего конкретного интервала.
95% — это свойство алгоритма, который порождает эти интервалы.
Если мы будем бесконечно долго рисовать такие линии, то 95% из них будут зелеными. Но как только вы провели свой единственный эксперимент, магия вероятности исчезает. Вы держите в руках либо «победу», либо «промах». И вы никогда не узнаете, что именно.
4. Лучшая аналогия: кольцеброс
Почему наш мозг так сопротивляется этой логике? Потому что мы используем неверную ментальную модель «Стрельба по мишени», где мишень (интервал) висит на стене, а природа стреляет в неё истинным значением параметра.
Правильная модель — кольцеброс, детская игрушка родом из СССР.

Колышек (истинное значение параметра) — вбит в землю. Он неподвижен.
Кольца (интервалы) — у вас в руках.
Бросок (эксперимент) — вы кидаете кольцо, пытаясь накрыть колышек.
Что означает «95%»? Это ваша меткость.
Когда кольцо уже упало (интервал посчитан), оно либо на колышке, либо в траве. Вероятность схлопнулась в факт. Но вы можете доверять своей меткости. Вы говорите: «Я не знаю, попал ли я в этот раз, но я хороший стрелок, я редко мажу».
5. Почему мы все так ошибаемся? Байесовское мышление.
Если частотная интерпретация так не интуитивна, почему мы ею пользуемся?
Потому что наш мозг работает в Байесовском режиме.
Мы хотим знать вероятность события (где истина?), а не свойства инструмента (как часто ошибается метод?).
В Байесовской статистике понятие вероятности другое. Там параметр считается случайной величиной, а данные — фиксированным фактом. И там фраза "С вероятностью 95% параметр лежит здесь" — верна (это называется Кредибильный Интервал).
Если у нас нет предварительных знаний и много данных, то численно Байесовский интервал почти совпадает с частотным. Мы приходим к правильным выводам («Истина где-то между 5 и 10») неправильным путем. Это работает, пока данных много. Но на малых выборках эта ошибка мышления может стоить вам дорого.
6. Зачем нам тогда доверительные интервалы?
Читатель может спросить:
Если я не знаю, "зеленая" у меня линия или "красная", зачем мне вообще эти интервалы? Зачем мне инструмент, который не говорит правду?»
Ответ здесь будет очень прагматичным
Доверительные интервалы нужны не для поиска истины в одном случае, а для контроля качества процесса .
Вы не снайпер, вы — владелец казино
Представьте, что вы принимаете 100 продуктовых решений в год на основе A/B тестов.
Используя 95% доверительный интервал, вы заключаете сделку со статистикой:
«Я буду слепо следовать правилу: если интервал не пересекает ноль — внедряем».
«Я знаю, что в 5 случаях из 100 я ошибусь и внедрю "пустышку" (получу красную линию)».
«Зато в 95 случаях я буду прав».
Вы не можете быть уверены в каждом отдельном решении. Но вы можете быть уверены, что ваша система принятия решений генерирует не более 5% ошибок на дистанции.
Казино не знает, выиграет ли пьяный турист на этом конкретном спине рулетки. Но казино знает, что на дистанции оно всегда в плюсе. Не будьте туристом, будьте как казино.
7. Шпаргалка: как говорить правильно
Теперь вы обладаете знанием, которое отличает профи от новичка. Как это использовать?
❌ НИКОГДА не говорите:
С вероятностью 95% истинное значение находится внутри этого интервала.
✅ ГОВОРИТЕ так (строго):
Если мы повторим эксперимент много раз, 95% таких интервалов накроют истинное значение.
✅ ГОВОРИТЕ так (для бизнеса):
Наши расчеты показывают диапазон от X до Y. Мы использовали метод, который дает верный ответ в 95% случаев. Риск ошибки есть, но он контролируемый...
Это честная позиция. Вы признаете риск, но опираетесь на надежность метода. Это тонкое различие? Да. Важное? Критически. Потому что оно переносит нас от ложной уверенности в конкретном результате к пониманию рисков метода.
Как только данных мало, или вы знаете что-то важное до начала эксперимента (например, «конверсия не может быть 90%»), частотный подход начнет давать сбои, а байесовский (с правильно настроенным Prior) спасет ситуацию. Но это уже тема для отдельной статьи.
В следующий раз, когда кто-то на митинге скажет:
Ну, вероятность 95%, что конверсия выросла
вы можете вздохнуть и сказать:
Вообще-то, коллега, параметр конверсии фиксирован. Вероятность относится лишь к процедуре построения интервала...
Возможно, вас перестанут звать на обеды, будут избегать и даже уволят с работы, зато все данные в ваших отчетах будут кристально честными, а формулировки математически безупречным. Главное, что это единственное, что по-настоящему имеет значение.
Комментарии (13)

vtal007
07.12.2025 17:49Я так и не понял, вроде одно и то же.
--С вероятностью 95% истинное значение находится внутри этого интервала.
--Если мы повторим эксперимент много раз, 95% таких интервалов накроют истинное значение.
Да, у нас с вероятностью 95% искомое значение в пределах этого интервала. Да, может быть искомое (реальное) значение и не в этих границах (если бы знали точно, у нас была бы вероятность 100%) - на это и выделяют 5% (а мы можем критерий сделать более жестким, 1 к 1000, тоже можно)
А что значит "Вы не можете быть уверены." Вообще по теории вероятности. Верить никому нельзя. Мы не можем (физически) прощупать всю генеральную совокупность (в тех случаях, когда можем, нам не нужна мат-статистика со всей этой "выборочными средними" и прочими штуками)
А бизнесу, бизнес интересует "да" или "Нет", а не ваши (наши) теории вероятностей и мужик, который пиво тестировал :) (но подписался студентом) :)
(я больше скажу, 5% на ошибку это еще очень хорошо, на самом деле в бизнесе приходится принимать решения с гораздо более сложной картиной и неизвестным количеством неизвестных параметров)

master_program Автор
07.12.2025 17:49Истинное значение либо находится внутри интервала (вероятность равна 1), либо нет (вероятность равна 0). 95 процентов там быть не может, потому что истинное значение не является случайной величиной.. Об этом статья.

vtal007
07.12.2025 17:49Это понятно, что или находится или нет
Но Вы статистику сводите к анекдоту про вероятность встретить динозавра. Там тоже или встречу или нет :)
Если оно находится (мы об это откуда то знаем), то тогда речь не про вероятность. Если мы знаем, нам не нужна теорвер
Вероятность события измеряется в процентах. Например, завтра пойдет дождь с вероятностью 47 процентов. Это значит, завтра он или пойдет или нет. Но мы пока не знаем. Поэтому у нас есть оценка вероятности. Когда случится "завтра", мы будем знать точно пошел он или не пошёл . И тут уже не будет никакой вероятности. Тут факт будет

master_program Автор
07.12.2025 17:49Да, с точки зрения бизнеса разницы нет. А если говорить про случаи, когда выборка AB-тестирования маленькая, с точки зрения бизнеса это просто всё равно не надежно.

chuzhiegrably
07.12.2025 17:49Впервые услышал о вас в 2017 году в тогда еще слаке ODS. Учился на 3-м потоке ML Course Open, закончил в топ-30 рейтинга, до сих пор считаю ту программу одной из лучших инвестиций своего времени и рекомендую для знакомства с ML наравне с материалами Анатолия Карпова по статистике.
Спустя 8 лет уже не смогу самостоятельно написать градиентный бустинг на питоне (да и не надо мне это), но корректную интерпретацию p-value запомнил хорошо. И не раз применял.
Всего хорошего и удачи вам.

BoomerCore
07.12.2025 17:49Реальный бизнес за пределами МФТИ и ВШЭ не интересует математическая безупречность, а только лишь ответ на заданный вопрос. Который (ответ) "что лбом по пню, что пнем по лбу" звучит одинаково. И важно именно это, а не то, с каким переподвыпердом (или без него) ответ озвучен

master_program Автор
07.12.2025 17:49Поэтому там немного иронии есть в конце статьи.

BoomerCore
07.12.2025 17:49Это настолько метаирония, что я ее не заметил. И продолжаю задавать себе вопрос "А о чем вообще эта статья про сферических коней в вакууме?"

Exlt8
07.12.2025 17:49Как человек из бизнеса с вами полностью согласен. Но в защиту данной статьи скажу, что не так много людей могут посоветовать правильный способ математического мышления, в задачах связанных с математикой. А про казуистику в сказанных словах и про политически правильные формулировки оставим же упражнения нашим юристам, пусть математики топят за безупречность в своем реально не легком деле

BoomerCore
07.12.2025 17:49Теоретики в башнях из слоновой кости могут быть для себя сколь угодно безупречными, но "древо жизни зеленеет" и требует не безупречный, а точный ответ на поставленный вопрос. Простейший пример — проверьте на не "первом встречном на улице", но обычном сапиенсе, академическое определение p-value
P‑value (p‑значение, уровень значимости, p‑критерий) — это вероятность получить для данной вероятностной модели такое же или более экстремальное значение статистики (среднего, медианы и др.), как наблюдаемое в выборке, — при условии, что нулевая гипотеза (H₀) верна.
и живое, не такое строгое, но тоже формально корректное
P‑value показывает, насколько необычно выглядят ваши данные — если предположить, что предполагаемый/наблюдаемый эффект случаен.
Если p‑value маленький (обычно ≤ 0,05), это сигнал: эффект вряд ли объясняется одной случайностью — стоит присмотреться.
Если p‑value большой (> 0,05), данных недостаточно, чтобы уверенно говорить о неслучайности эффекта.
А потом методом опроса без пристрастия проверьте, какой из вариантов оставил в голове слушателя чуть больше, чем белый шум.
Безупречность ради безупречности — троцкизм, людей же (здоровых) интересует результат, а не процесс
Именно последнее утверждение в общем-то и вызвало мою изначальную реплику
pg_expecto
Поэтому я использую медиану.