🔴 Сложный ⏱️ 55 минут

Проверка статистических гипотез

📋 Содержание урока

Проверка статистических гипотез ⚖️

Представь: команда в компании выкатила новую версию рекомендательной модели. На тестовой группе пользователей средняя конверсия выросла с $5\%$ до $5{,}6\%$. Хорошая новость? Вроде да. Но здесь сразу возникает неудобный вопрос: а вдруг это просто повезло с конкретной группой пользователей, и если завтра набрать другую тысячу человек, разница исчезнет или вообще развернётся в обратную сторону? Модель ничем не отличается от старой, а разница в цифрах — просто шум случайной выборки, с которым ты уже научился работать в двух предыдущих уроках.

Именно на этот вопрос — «это реальный эффект или случайность?» — отвечает проверка статистических гипотез. Это не отдельная экзотическая тема, а прямое продолжение всего, что было раньше: ты уже знаешь, что оценка параметра (урок 246), посчитанная по выборке, — это случайная величина сама по себе, у неё есть разброс. Проверка гипотез — это формальная процедура, которая берёт этот разброс и превращает интуитивное «мне кажется, это неслучайно» в строгое, воспроизводимое решение с контролируемой вероятностью ошибки.

Без этого инструмента вся индустрия A/B-тестирования попросту не существовала бы. Любая компания, которая выкатывает новую версию сайта, кнопки, алгоритма ранжирования или модели рекомендаций, стоит перед одним и тем же выбором: запускать изменение на всех пользователей или нет. Стандартный ответ индустрии — «не катим в прод, пока не получили статистически значимое улучшение» — это не лозунг, а прямая ссылка на аппарат проверки гипотез. За фразой «результат статистически значим» стоит конкретная, вычисляемая процедура, и цель этого урока — чтобы ты понимал её не как магическое заклинание «p меньше 0,05 — свисти в дудку», а как логически прозрачный механизм с чёткими допущениями и чётко определённой ценой ошибки.

Урок построен вокруг одного сквозного примера, который будет возвращаться снова и снова: тест новой версии рекомендательной модели против старой. Мы пройдём его целиком — от формулировки гипотез до итогового решения — и по пути разберём каждое ключевое понятие: нулевую и альтернативную гипотезы, p-значение (и самое главное — чем оно НЕ является), уровень значимости и правило принятия решения, а также две принципиально разные цены, которые можно заплатить за ошибку.

🎯 Ты узнаешь:

  • Что такое нулевая гипотеза $H_0$ и альтернативная гипотеза $H_1$, и почему вся логика проверки строится «от противного» — как в суде, где сначала предполагают невиновность

  • Что такое p-значение на самом деле — вероятность получить такие же или более экстремальные данные, если верна $H_0$ — и почему путать его с «вероятностью того, что $H_0$ верна» является одной из самых частых ошибок во всей статистике

  • Как работает уровень значимости $\alpha$ и правило принятия решения — и почему порог $\alpha = 0{,}05$ появился не по божественному откровению, а по историческому соглашению

  • Чем отличается ошибка первого рода (ложное срабатывание) от ошибки второго рода (пропуск реального эффекта), и почему снижение одной обычно повышает другую

  • Как всё это работает вместе на живом примере A/B-теста — от постановки гипотез до итогового бизнес-решения


История: откуда это взялось?

Современная проверка гипотез — это на самом деле сплав двух конкурировавших идей, придуманных независимо и впоследствии слитых в один рабочий инструмент, которым пользуется весь мир. Первую идею предложил Рональд Фишер в 1920-х годах, работая на сельскохозяйственной опытной станции в Ротамстеде. Фишер занимался вопросом настолько приземлённым, насколько это вообще возможно: помогает ли конкретное удобрение увеличить урожай пшеницы, или наблюдаемая разница между полем с удобрением и полем без него — просто случайные колебания погоды и почвы? В своей книге 1925 года «Статистические методы для научных работников» Фишер предложил считать так называемую нулевую гипотезу — предположение «эффекта нет» — и вычислять, насколько неправдоподобны наблюдаемые данные при условии, что эта гипотеза верна. Меру этой неправдоподобности он и назвал p-значением. Фишер рассматривал это скорее как непрерывную шкалу доказательности, а не жёсткое правило «да/нет», хотя именно он полушутя предложил порог в $5\%$ — «одно из двадцати» — как ориентировочную границу «достаточно редкого» события.

Вторая идея пришла чуть позже, в конце 1920-х — начале 1930-х годов, от польского математика Ежи Неймана и английского статистика Эгона Пирсона (сына того самого Карла Пирсона из урока про многомерные случайные величины). Нейман и Пирсон подошли к задаче иначе: их интересовало не столько «насколько удивительны эти данные», сколько формализованное решение, принимаемое между двумя конкурирующими гипотезами — нулевой $H_0$ и альтернативной $H_1$. Именно они ввели строгое разграничение двух типов ошибок, которые можно совершить при таком решении, — сегодня мы называем их ошибками первого и второго рода, — и показали, что между вероятностью каждой из них существует неустранимый компромисс при фиксированном объёме данных. Их подход был более формальным и инженерным: заранее фиксируется допустимая вероятность ложной тревоги $\alpha$, и на основе неё строится правило принятия решения.

Фишер и Нейман-Пирсон долго и довольно ожесточённо спорили друг с другом — Фишер считал подход Неймана-Пирсона излишне механистичным, превращающим научное мышление в бездумное сравнение с порогом. Забавно, что то, чем сегодня пользуется практически весь мир — от медицинских исследований до A/B-тестов в IT-компаниях, — это гибрид, которого ни один из авторов, вероятно, не одобрил бы полностью: у нас есть p-значение по Фишеру и есть заранее заданный порог $\alpha$ и формальные $H_0$/$H_1$ по Нейману-Пирсону, и мы используем их вместе. Понимание этой истории — не праздное любопытство: оно объясняет, почему в современных учебниках и статьях можно встретить путаницу в терминологии и почему сама интерпретация p-значения регулярно становится предметом споров даже среди профессиональных статистиков.


Нулевая и альтернативная гипотезы: логика «от противного»

Интуиция: презумпция невиновности

Представь суд присяжных. Подсудимого не начинают судить с предположения «он виновен, пусть докажет обратное» — процесс стартует с презумпции невиновности: изначально предполагается, что человек невиновен, и обвинению нужно предъявить достаточно веские улики, чтобы это предположение опровергнуть. Если улик недостаточно, суд не объявляет «подсудимый невиновен» — он объявляет «вина не доказана», что не одно и то же.

Проверка статистических гипотез устроена ровно так же. Мы начинаем с нулевой гипотезы $H_0$ — консервативного предположения «эффекта нет, различий нет, всё как обычно» — и смотрим, насколько наблюдаемые данные с ней согласуются. Если данные оказываются настолько неправдоподобными при условии верности $H_0$, что в это трудно поверить, мы отвергаем $H_0$ в пользу альтернативной гипотезы $H_1$, которая как раз и утверждает наличие эффекта. Но если данные не выглядят экстремальными — мы не заявляем «$H_0$ верна», мы говорим лишь «у нас недостаточно оснований её отвергнуть». Это тонкое, но принципиальное различие: отсутствие доказательств эффекта — не то же самое, что доказательство отсутствия эффекта.

Определение: Нулевая гипотеза $H_0$ — это утверждение об отсутствии эффекта, различия или связи, которое принимается за отправную точку и проверяется на согласованность с данными. Альтернативная гипотеза $H_1$ — это утверждение, противоречащее $H_0$, которое исследователь обычно и хочет доказать. Проверка гипотез — это процедура «от противного»: мы временно допускаем, что $H_0$ верна, вычисляем, насколько правдоподобны при этом допущении наблюдаемые данные, и либо отвергаем $H_0$ (если данные слишком неправдоподобны), либо не находим оснований её отвергнуть.

Важная деталь: альтернативная гипотеза может быть двусторонней ($H_1$: параметр просто не равен значению из $H_0$, эффект в любую сторону) или односторонней ($H_1$: параметр строго больше или строго меньше значения из $H_0$, эффект в конкретном направлении). Выбор между ними делается до того, как увидены данные, исходя из содержательного вопроса, а не подгоняется под результат постфактум — иначе вся логика проверки рассыпается.

Примеры с разбором

Пример 1 (лёгкий). Компания утверждает, что среднее время ответа её API равно $250$ мс. Инженер хочет проверить, изменилось ли это время после обновления инфраструктуры — в любую сторону, неважно, ускорилось оно или замедлилось. Сформулируем гипотезы. Поскольку вопрос симметричный («изменилось ли вообще»), это двусторонний случай:

$$H_0: \mu = 250 \text{ мс}, \qquad H_1: \mu \ne 250 \text{ мс}.$$

Здесь $H_0$ утверждает, что среднее время ответа осталось прежним, а $H_1$ — что оно стало каким-то другим, без уточнения направления.

Пример 2 (средний). Тот же инженер, но теперь вопрос иначе: конкретно интересует, ускорилось ли API после оптимизации (замедление их не пугает — это уже отдельный вопрос). Здесь вопрос направленный, значит альтернатива односторонняя:

$$H_0: \mu \ge 250 \text{ мс}, \qquad H_1: \mu < 250 \text{ мс}.$$

Обрати внимание на формальную тонкость: строгая нулевая гипотеза для расчётов обычно берётся как равенство ($\mu = 250$), а неравенство ($\mu \ge 250$) — содержательная формулировка «противоположного лагеря» альтернативе. На практике для вычислений почти всегда используют именно граничное значение $\mu_0 = 250$, потому что если данные неправдоподобны при этом самом благоприятном для $H_0$ значении, то они тем более неправдоподобны при любом $\mu > 250$.

Пример 3 (сложный). Команда дата-сайентистов выкатывает новую версию рекомендательной модели и хочет протестировать её против старой на реальных пользователях — классический A/B-тест. Пользователей случайно делят на две группы: группа $A$ (контроль) продолжает видеть рекомендации от старой модели, группа $B$ (тест) получает рекомендации от новой. Метрика — конверсия (доля пользователей, кликнувших хотя бы по одной рекомендации). Команду интересует не абстрактное «есть ли разница», а конкретный вопрос: стала ли новая модель лучше, а не просто «другой». Значит, нужен односторонний тест, где $p_A$ и $p_B$ — истинные (генеральные) доли конверсии в группах $A$ и $B$:

$$H_0: p_B = p_A, \qquad H_1: p_B > p_A.$$

Это стандартная постановка для A/B-теста продуктового улучшения: нулевая гипотеза — «новая версия не лучше старой», альтернатива — «новая версия строго лучше». Такую формулировку команда фиксирует до запуска теста и до просмотра результатов — иначе есть риск неосознанно подогнать формулировку гипотезы под то, что уже увидели в данных, а это грубо нарушает логику всей процедуры (об этом — в разделе «Частые ошибки»).

Почему это важно. Формулировка $H_0$ и $H_1$ — это не бюрократическая формальность перед «настоящими» вычислениями, а решение, которое определяет всю дальнейшую математику: выбор одностороннего или двустороннего теста меняет критическое значение и итоговое p-значение, а значит может изменить решение «отвергаем или нет» при одних и тех же данных (мы увидим это наглядно дальше). В инженерной практике A/B-тестов это решение принимает продуктовая команда до запуска эксперимента и фиксирует в документе эксперимента — именно поэтому дисциплинированные компании требуют формулировать гипотезу теста заранее, а не «смотреть на дашборд и решать по ходу дела».


p-значение: что это такое и чем оно НЕ является

Интуиция: детектив оценивает алиби

Представь детектива, который расследует кражу. У подозреваемого есть алиби — цепочка случайных совпадений, которая теоретически могла произойти и без его участия в краже. Детектив задаётся вопросом: «Если этот человек действительно невиновен (наша $H_0$), насколько вероятно было бы случайно увидеть именно такую цепочку совпадений, как эта — или ещё более подозрительную?» Если ответ «крайне маловероятно» — совпадения слишком удачные, чтобы быть совпадениями, — это веский довод против невиновности. Если ответ «да запросто, такое бывает часто» — цепочка совпадений ничего не доказывает.

p-значение — это именно такая оценка «насколько подозрительны данные», выраженная числом от $0$ до $1$. Формально: p-значение — это вероятность получить наблюдаемый результат теста (например, конкретную разницу конверсий) или ещё более экстремальный результат в сторону альтернативы, при условии, что верна нулевая гипотеза. Маленькое p-значение означает: «если бы эффекта на самом деле не было, было бы очень маловероятно увидеть такие данные — значит, скорее всего, эффект есть». Большое p-значение означает: «такие данные вполне ожидаемы даже при отсутствии эффекта — ничего удивительного здесь нет».

Определение: p-значение — это вероятность при условии истинности нулевой гипотезы $H_0$ получить значение тестовой статистики, равное наблюдаемому, или ещё более экстремальное в направлении альтернативной гипотезы $H_1$. Формально, если $T$ — тестовая статистика, а $t_{\text{набл}}$ — её наблюдаемое значение, то для одностороннего теста (правый хвост) $p = P(T \ge t_{\text{набл}} \mid H_0)$, а для двустороннего теста $p = P(|T| \ge |t_{\text{набл}}| \mid H_0)$. Крайне важно: p-значение НЕ равно вероятности того, что $H_0$ верна. Это вероятность данных при условии гипотезы, а не вероятность гипотезы при условии данных — это две принципиально разные, не взаимозаменяемые вещи.

Последнее предложение определения — это, вероятно, самая важная фраза во всём уроке, и к ней мы вернёмся ещё не раз. Путаница между $P(\text{данные} \mid H_0)$ и $P(H_0 \mid \text{данные})$ — это классическая логическая ошибка обращения условной вероятности, та же самая ловушка, что и в задачах на формулу Байеса (урок 232): вероятность того, что у больного человека будет положительный тест, — это совсем не то же самое, что вероятность того, что у человека с положительным тестом есть болезнь.

Примеры с разбором

Пример 1 (лёгкий). Монету подбросили $10$ раз, выпало $7$ орлов. Тестируем гипотезу о честности монеты: $H_0: p = 0{,}5$ против двусторонней $H_1: p \ne 0{,}5$. Наблюдаемое отклонение — $7$ орлов из $10$ или более экстремальное в любую сторону (то есть $7, 8, 9, 10$ орлов, а по симметрии биномиального распределения при $p=0{,}5$ — и $0, 1, 2, 3$ орлов). Вычислим по биномиальному распределению $\mathrm{Bin}(10;\ 0{,}5)$:

$$P(X \ge 7) = \sum_{k=7}^{10} \binom{10}{k} 0{,}5^{10} = \frac{120+45+10+1}{1024} = \frac{176}{1024} \approx 0{,}1719.$$

Поскольку тест двусторонний, а распределение при $p=0{,}5$ симметрично, p-значение удваивается:

$$p = 2 \times 0{,}1719 \approx 0{,}3438.$$

Это довольно большое p-значение: если монета честная, увидеть $7$ или более крайних орлов из $10$ бросков — обычное дело, случается почти в трети всех серий из десяти бросков. Данные совершенно не удивительны при условии честности монеты, поэтому нет оснований отвергать $H_0$: монета выглядит честной, а $7$ орлов из $10$ — рядовая случайная флуктуация.

Пример 2 (средний). Возвращаемся к A/B-тесту рекомендательной модели из предыдущего блока: $H_0: p_B = p_A$, $H_1: p_B > p_A$ (одностороннее направление — интересует именно улучшение). В группе $A$ (старая модель) из $n_A = 10\,000$ пользователей конверсию совершили $x_A = 500$ человек, то есть $\hat p_A = 0{,}05$. В группе $B$ (новая модель) из $n_B = 10\,000$ пользователей конверсию совершили $x_B = 560$ человек, $\hat p_B = 0{,}056$.

Для теста двух пропорций при условии $H_0$ (доли предполагаются равными) используется объединённая оценка доли:

$$\hat p = \frac{x_A + x_B}{n_A+n_B} = \frac{500+560}{20\,000} = \frac{1060}{20\,000} = 0{,}053.$$

Стандартная ошибка разности пропорций под $H_0$:

$$SE = \sqrt{\hat p(1-\hat p)\left(\frac{1}{n_A}+\frac{1}{n_B}\right)} = \sqrt{0{,}053 \cdot 0{,}947 \cdot \frac{2}{10\,000}} \approx 0{,}003168.$$

Z-статистика:

$$z = \frac{\hat p_B - \hat p_A}{SE} = \frac{0{,}056-0{,}05}{0{,}003168} \approx 1{,}894.$$

p-значение для одностороннего теста (правый хвост стандартного нормального распределения):

$$p = P(Z \ge 1{,}894) \approx 0{,}0291.$$

Интерпретация: если новая модель на самом деле никак не отличается от старой ($H_0$ верна), то получить разницу конверсий в $0{,}6$ процентного пункта или больше — событие с вероятностью примерно $2{,}9\%$. Это достаточно маловероятно, чтобы усомниться в $H_0$, — к вопросу о конкретном решении мы вернёмся в разделе про уровень значимости.

Пример 3 (сложный — самая частая ошибка интерпретации). Разберём, почему p-значение категорически нельзя читать как «вероятность того, что $H_0$ верна», на конкретных числах. Представь, что аналитик компании тестирует много разных гипотез о фичах продукта (кнопки, формулировки, цвета), и лишь $10\%$ из всех идей, которые вообще приходят в голову командам, на самом деле содержат реальный эффект — остальные $90\%$ идей ничего не меняют по существу. Пусть мощность типичного теста (вероятность обнаружить реальный эффект, если он есть) составляет $80\%$, а уровень значимости — стандартные $\alpha=0{,}05$.

По формуле полной вероятности (урок 231) найдём, какая доля всех «статистически значимых» результатов (то есть случаев, когда тест отверг $H_0$) на самом деле соответствует реальному эффекту:

$$P(\text{отверг } H_0) = P(\text{эффект реален}) \cdot P(\text{отверг} \mid \text{реален}) + P(\text{эффекта нет}) \cdot P(\text{отверг} \mid \text{нет эффекта})$$$$= 0{,}1 \cdot 0{,}8 + 0{,}9 \cdot 0{,}05 = 0{,}08 + 0{,}045 = 0{,}125.$$

Теперь по формуле Байеса найдём вероятность того, что эффект реален, при условии, что тест дал значимый результат:

$$P(\text{эффект реален} \mid \text{отверг } H_0) = \frac{0{,}08}{0{,}125} = 0{,}64.$$

Получилось $64\%$, а не $95\%$ и не $99\%$, как можно было бы подумать, глядя на $\alpha=0{,}05$. Даже при вполне разумной мощности теста, если реальных эффектов среди всех проверяемых идей мало, значительная доля «статистически значимых» результатов на самом деле оказывается ложноположительными. Вот в чём принципиальная разница: p-значение — это $P(\text{данные} \mid H_0)$, а вопрос «какова вероятность, что эффект реален» — это $P(H_0 \text{ ложна} \mid \text{данные})$, и превратить первое во второе можно только зная априорную вероятность эффекта — то, что p-значение само по себе никак не учитывает и учитывать не может.

Почему это важно. Именно из-за этой путаницы возник так называемый «репликационный кризис» в науке — десятки тысяч результатов, объявленных «статистически значимыми» ($p<0{,}05$), впоследствии не подтвердились при повторных экспериментах. Для практика в ML это означает конкретную вещь: если твоя команда тестирует десятки мелких изменений интерфейса или гиперпараметров подряд, и лишь малая доля из них реально что-то меняет, то простое правило «$p<0{,}05$ — катим в прод» гарантированно приведёт к внедрению немалого числа ложных «улучшений». Именно поэтому серьёзные продуктовые команды требуют не просто $p<0{,}05$, а ещё и содержательного объяснения эффекта, повторяемости результата на независимых выборках и учёта того, сколько гипотез вообще было протестировано (к этому мы вернёмся в разделе про множественные сравнения).


Уровень значимости $\alpha$ и правило принятия решения

Интуиция: порог разумного сомнения

В уголовном праве есть стандарт доказанности «вне разумного сомнения» — суд не требует стопроцентной уверенности (это невозможно), но требует, чтобы сомнения в виновности были достаточно малы. В статистике роль этого стандарта играет уровень значимости $\alpha$ — заранее, до начала эксперимента, зафиксированный порог, ниже которого p-значение считается «достаточно маленьким», чтобы отвергнуть $H_0$.

Именно «заранее» — ключевое слово. Уровень значимости — это не про конкретный эксперимент, а про долгосрочную частоту ошибок: если ты будешь тестировать множество верных нулевых гипотез при $\alpha=0{,}05$, то в среднем в $5\%$ случаев ты будешь ошибочно их отвергать, просто из-за случайного шума выборки. $\alpha$ — это цена, которую исследователь заранее соглашается платить за ложные тревоги, в обмен на возможность вообще обнаруживать реальные эффекты.

Определение: Уровень значимости $\alpha$ — это заранее заданная максимально допустимая вероятность ошибочно отвергнуть верную нулевую гипотезу. Правило принятия решения: если p-значение меньше или равно $\alpha$, нулевая гипотеза отвергается в пользу альтернативной («результат статистически значим на уровне $\alpha$»); если p-значение больше $\alpha$, оснований отвергнуть $H_0$ недостаточно. Эквивалентная формулировка через критическое значение: для z-теста при $\alpha=0{,}05$ критическое значение равно $z_{\text{крит}} = 1{,}96$ для двустороннего теста и $z_{\text{крит}}=1{,}645$ для одностороннего; если наблюдаемая статистика превышает критическое значение по модулю (в нужную сторону), $H_0$ отвергается.

Значение $\alpha=0{,}05$ — не физическая константа природы, а историческое соглашение, унаследованное от Фишера. В медицинских испытаниях, где цена ложноположительного результата особенно высока (вывод на рынок неэффективного лекарства), часто используют более строгий порог $\alpha=0{,}01$. В разведочном анализе данных, где ошибки не так критичны, иногда допускают $\alpha=0{,}10$. Выбор $\alpha$ — это осознанное решение о балансе, а не механическое копирование числа $0{,}05$ из учебника.

Примеры с разбором

Пример 1 (лёгкий). Тест дал $p=0{,}02$, заранее выбранный уровень значимости $\alpha=0{,}05$. Поскольку $0{,}02 < 0{,}05$, результат статистически значим — $H_0$ отвергается. Это прямое применение правила решения без дополнительных вычислений.

Пример 2 (средний — критическое значение сталкивается с направлением теста). Вернёмся к A/B-тесту рекомендательной модели: мы уже посчитали $z \approx 1{,}894$. Рассмотрим два сценария постановки задачи.

Если гипотеза была сформулирована односторонне ($H_1: p_B > p_A$, что мы и сделали изначально, потому что интересовало именно улучшение), критическое значение при $\alpha=0{,}05$ равно $z_{\text{крит}}=1{,}645$. Поскольку $1{,}894 > 1{,}645$, результат значим — $H_0$ отвергается, новая модель статистически значимо лучше.

Если бы та же самая команда изначально сформулировала гипотезу двусторонне ($H_1: p_B \ne p_A$, «есть ли разница вообще, в любую сторону»), критическое значение было бы $z_{\text{крит}}=1{,}96$. Поскольку $1{,}894 < 1{,}96$, для двустороннего теста результат не достигает значимости на уровне $\alpha=0{,}05$ — та же самая z-статистика, то же самое значение $1{,}894$, но другой вывод! (Ранее мы уже считали, что двустороннее p-значение здесь равно $p \approx 0{,}0583$, что действительно чуть больше $0{,}05$.)

Этот пример показывает вещь, которую легко упустить: одни и те же данные могут дать разные решения в зависимости от того, как заранее была сформулирована гипотеза. Именно поэтому выбор между односторонним и двусторонним тестом обязан делаться до эксперимента, исходя из содержательного вопроса, а не подгоняться под удобный результат после того, как данные уже видны.

Пример 3 (сложный — проблема множественных сравнений). Продуктовая команда тестирует $20$ разных вариантов цвета кнопки «Купить», сравнивая каждый с контролем независимым тестом при $\alpha=0{,}05$ на каждый. Если на самом деле ни один из $20$ вариантов не отличается от контроля (все $20$ нулевых гипотез верны), какова вероятность, что хотя бы один тест из двадцати всё равно покажет «статистически значимый» результат чисто случайно?

Вероятность того, что конкретный тест НЕ даст ложного срабатывания, равна $1-\alpha=0{,}95$. Если все $20$ тестов независимы, вероятность, что ни один из них не сработает ложно:

$$P(\text{ни одной ложной тревоги}) = 0{,}95^{20} \approx 0{,}3585.$$

Значит, вероятность хотя бы одной ложной тревоги среди двадцати тестов:

$$P(\text{хотя бы одна ложная тревога}) = 1 - 0{,}95^{20} \approx 0{,}6415.$$

То есть при $20$ независимых тестах шанс получить хотя бы один «значимый» результат чисто случайно, даже если ни одна из проверяемых идей на самом деле ничего не меняет, — около $64\%$! Это называется проблемой множественных сравнений: при большом количестве одновременных тестов индивидуальный уровень значимости $\alpha=0{,}05$ перестаёт означать «5%-й риск ошибки» на уровне всего эксперимента — риск ошибки резко накапливается. Один из стандартных способов борьбы — поправка Бонферрони, которую мы применим в практических заданиях: делить $\alpha$ на число сравнений.

Почему это важно. Правило «$p<\alpha$ — отвергаем» — это не про уверенность в конкретном отдельном результате, а про контроль частоты ошибок в долгосрочной перспективе применения одной и той же процедуры. Для инженера A/B-тестирования это означает две практические вещи: во-первых, гипотезу (одностороннюю или двустороннюю) нужно фиксировать до запуска теста в документе эксперимента, а не после просмотра дашборда; во-вторых, если компания одновременно гоняет десятки экспериментов на разные метрики и сегменты, наивное применение $\alpha=0{,}05$ к каждому из них гарантированно приведёт к постоянному потоку ложных «побед», и требуется поправка на множественность сравнений.


Ошибки первого и второго рода

Интуиция: две разные цены неправильного решения

Продолжим аналогию с судом. У любого вердикта есть два принципиально разных способа ошибиться: осудить невиновного или оправдать виновного. Это не «одна и та же ошибка разной силы» — это два разных события с разными последствиями и, что важно, разными вероятностями, которые обычно движутся в противоположных направлениях при изменении строгости суда.

В статистике то же самое. Ошибка первого рода — это отвергнуть верную $H_0$ (осудить невиновного: заявить об эффекте, которого на самом деле нет). Ошибка второго рода — это не отвергнуть неверную $H_0$ (оправдать виновного: пропустить реальный эффект, который на самом деле есть). Вероятность ошибки первого рода — это в точности уровень значимости $\alpha$, который мы уже обсудили. Вероятность ошибки второго рода обозначается $\beta$, а величина $1-\beta$ называется мощностью теста — способностью теста действительно обнаружить эффект, когда он есть.

Определение: Ошибка первого рода (ложное срабатывание) — отклонение верной нулевой гипотезы $H_0$; её вероятность равна уровню значимости $\alpha$. Ошибка второго рода (пропуск эффекта) — неотклонение неверной нулевой гипотезы $H_0$ (когда на самом деле верна $H_1$); её вероятность обозначается $\beta$. Мощность теста $1-\beta$ — вероятность правильно отклонить $H_0$, когда $H_1$ действительно верна. При фиксированном объёме выборки между $\alpha$ и $\beta$ существует компромисс: уменьшение допустимой вероятности ложных срабатываний ($\alpha$) обычно увеличивает вероятность пропуска реального эффекта ($\beta$), и наоборот. Единственный способ уменьшить оба одновременно — увеличить объём выборки.

Полезно свести это в таблицу — классическую матрицу решений, которая встречается в любом учебнике по статистике:

$H_0$ на самом деле верна $H_0$ на самом деле неверна
Не отвергаем $H_0$ Верное решение (вероятность $1-\alpha$) Ошибка II рода, $\beta$
Отвергаем $H_0$ Ошибка I рода, $\alpha$ Верное решение — мощность, $1-\beta$

Примеры с разбором

Пример 1 (лёгкий — вычисляем обе ошибки для простого правила). Вернёмся к тесту честности монеты: $n=10$ бросков, правило принятия решения — «отвергнуть гипотезу о честности, если выпало $8$ или больше орлов, либо $2$ или меньше орлов» (то есть отвергаем при исходах $\{0,1,2,8,9,10\}$).

Сначала проверим, чему на самом деле равна вероятность ошибки первого рода для этого правила, если монета честная ($p=0{,}5$):

$$\alpha = P(X\in\{0,1,2,8,9,10\} \mid p=0{,}5) = \frac{1+10+45+45+10+1}{1024} = \frac{112}{1024} \approx 0{,}1094.$$

Заметь: это правило соответствует не «стандартным» $5\%$, а примерно $10{,}94\%$ — округлённое до целых чисел исходов правило редко попадает точно в желаемый $\alpha$, это нормальная особенность дискретных распределений.

Теперь предположим, что монета на самом деле нечестная, с истинной вероятностью орла $p=0{,}8$ — то есть $H_0$ на самом деле неверна, и мы должны бы её отвергнуть. Мощность теста — вероятность того, что наше правило действительно это заметит:

$$1-\beta = P(X\in\{0,1,2,8,9,10\} \mid p=0{,}8) \approx 0{,}6779.$$

Значит, $\beta \approx 1-0{,}6779=0{,}3221$: даже при довольно сильной нечестности монеты ($80\%$ орлов вместо $50\%$), с такой маленькой выборкой из $10$ бросков мы пропустим эту нечестность примерно в $32\%$ случаев. Это наглядная иллюстрация того, как малый объём выборки резко повышает риск ошибки второго рода.

Пример 2 (средний — компромисс между $\alpha$ и $\beta$). Продолжим тот же тест монеты, но ужесточим правило принятия решения, чтобы снизить $\alpha$: теперь отвергаем гипотезу о честности только при совсем крайних исходах $\{0,1,9,10\}$ (раньше было $\{0,1,2,8,9,10\}$). Пересчитаем обе вероятности:

$$\alpha' = P(X\in\{0,1,9,10\}\mid p=0{,}5) = \frac{1+10+10+1}{1024} \approx 0{,}0215.$$

Мы действительно снизили риск ложной тревоги почти в пять раз — с $10{,}94\%$ до $2{,}15\%$. Но какой ценой? Пересчитаем мощность против той же альтернативы $p=0{,}7$ (возьмём чуть более мягкую нечестность монеты для наглядности) для обоих правил:

$$1-\beta_{\text{старое правило}} = P(X\in\{0,1,2,8,9,10\}\mid p=0{,}7) \approx 0{,}3844,$$

$$1-\beta_{\text{новое правило}} = P(X\in\{0,1,9,10\}\mid p=0{,}7) \approx 0{,}1495.$$

Мощность обвалилась с примерно $38{,}4\%$ до $15{,}0\%$ — то есть более строгое правило (меньше $\alpha$) стало значительно хуже обнаруживать реальную нечестность монеты (выше $\beta$). Это и есть тот самый компромисс из определения: при фиксированном объёме выборки $\alpha$ и $\beta$ тянут в разные стороны, как два конца одного каната. Единственный способ по-настоящему улучшить оба показателя сразу — не ужесточать порог, а увеличить количество бросков (в общем случае — размер выборки).

Пример 3 (сложный — полный разбор A/B-теста с точки зрения обеих ошибок). Соберём весь наш сквозной пример воедино и явно проговорим, что означают обе ошибки в терминах бизнеса. Напомним: $n_A=n_B=10\,000$, $\hat p_A=0{,}05$, $\hat p_B=0{,}056$, $z\approx1{,}894$, одностороннее p-значение $p\approx0{,}0291$, $\alpha=0{,}05$. Поскольку $0{,}0291<0{,}05$, команда отвергает $H_0$ и делает вывод: новая модель статистически значимо повышает конверсию.

Что означала бы ошибка первого рода в этом конкретном контексте? Это ситуация, в которой на самом деле новая модель ничем не лучше старой ($H_0$ верна), но случайное распределение пользователей по группам дало наблюдаемую разницу в $0{,}6$ процентного пункта чисто по воле случая, и команда, доверившись p-значению $0{,}0291<0{,}05$, ошибочно выкатывает новую модель на всех пользователей. Цена такой ошибки — потраченные ресурсы разработки и, возможно, скрытая деградация каких-то других метрик (новая модель может, например, незначительно улучшать клики, но ухудшать долгосрочное удержание, что тест не отследил).

А что означала бы ошибка второго рода? Представим противоположный сценарий: истинная разница конверсий на самом деле существует и даже больше, чем наблюдалось (скажем, реально $p_B=0{,}06$), но случайная выборка дала недостаточно убедительные данные, тест не достиг значимости, и команда решила не выкатывать модель — хотя она на самом деле была лучше. Цена такой ошибки — упущенная выгода: компания отказывается от реального улучшения продукта, потому что тест «не заметил» эффект.

Заметь асимметрию цены двух ошибок в этом конкретном бизнес-кейсе: ошибка первого рода означает внедрение бесполезного или чуть вредного изменения (относительно легко откатить, если заметили деградацию других метрик), а ошибка второго рода означает молчаливую потерю реальной возможности (которую компания может никогда и не узнать, что упустила). Именно поэтому многие продуктовые команды в реальности снижают требования к уровню значимости для «дешёвых» экспериментов (позволяя больше ложных срабатываний, но реже упуская реальные улучшения) и, наоборот, повышают строгость для дорогостоящих необратимых изменений.

Почему это важно. Понимание того, какая именно ошибка дороже в конкретной задаче, определяет весь дизайн эксперимента: выбор $\alpha$, необходимый размер выборки, а иногда и саму архитектуру теста. В медицине ошибка первого рода (вывод неэффективного лекарства на рынок) обычно считается значительно опаснее ошибки второго рода, поэтому используют строгие пороги $\alpha=0{,}01$ или даже жёстче. В спам-фильтрах, наоборот, часто важнее не пропускать спам (минимизировать ошибку второго рода — пропуск спама как «не спама»), но при этом стараться не блокировать легитимные письма (не раздувать ошибку первого рода). В любом ML-проекте вопрос «что дороже — ложное срабатывание или пропуск» должен быть задан явно, до выбора порогов и метрик.


Практика: 30 заданий

Базовые (задания 1–10)

Задание 1. Технолог утверждает, что средний вес пачки чипсов на линии — $150$ г. Инженер по качеству хочет проверить, не изменился ли средний вес (неважно, в большую или меньшую сторону) после настройки оборудования. Сформулируй $H_0$ и $H_1$.


Задание 2. Тот же технолог, но теперь интересует конкретно вопрос: не стало ли оборудование недосыпать продукт (то есть класть меньше $150$ г — это нарушение стандарта, а больше — не проблема). Сформулируй $H_0$ и $H_1$.


Задание 3. Тест дал $p=0{,}032$ при заранее выбранном уровне значимости $\alpha=0{,}05$. Прими решение.


Задание 4. Тест дал $p=0{,}08$ при $\alpha=0{,}05$. Прими решение.


Задание 5. Тест дал $p=0{,}049$ при $\alpha=0{,}05$. Прими решение и прокомментируй, насколько оно устойчиво.


Задание 6. Двусторонний z-тест дал $z=2{,}10$ при $\alpha=0{,}05$ (критическое значение $z_{\text{крит}}=1{,}96$). Прими решение.


Задание 7. Двусторонний z-тест дал $z=1{,}50$ при $\alpha=0{,}05$. Прими решение.


Задание 8. Односторонний z-тест ($H_1: \mu > \mu_0$) дал $z=1{,}80$ при $\alpha=0{,}05$ (критическое значение $z_{\text{крит}}=1{,}645$). Прими решение.


Задание 9. Объясни своими словами разницу между ошибкой первого и второго рода для теста рекламной кампании с гипотезами $H_0$: «кампания не увеличивает продажи», $H_1$: «кампания увеличивает продажи».


Задание 10. Монету подбросили $10$ раз, выпало $7$ орлов. Проверяется гипотеза о честности монеты: $H_0: p=0{,}5$ против двусторонней $H_1: p \ne 0{,}5$. Найди p-значение и сделай вывод при $\alpha=0{,}05$.


Средние (задания 11–20)

Задание 11. A/B-тест кнопки оформления заказа: контрольная группа $A$ — $n_A=400$ пользователей, $x_A=40$ конверсий ($10\%$); тестовая группа $B$ — $n_B=400$, $x_B=52$ конверсии ($13\%$). Проверь одностороннюю гипотезу $H_1: p_B > p_A$ при $\alpha=0{,}05$.


Задание 12. Испытание нового препарата: до приёма среднее давление в популяции — $\mu_0=130$. На выборке $n=36$ пациентов после приёма препарата среднее давление — $\bar x=125$, стандартное отклонение $\sigma=12$. Проверь одностороннюю гипотезу «препарат снижает давление» при $\alpha=0{,}05$.


Задание 13. Используя данные A/B-теста рекомендательной модели ($n_A=n_B=10\,000$, $\hat p_A=0{,}05$, $\hat p_B=0{,}056$, $z\approx1{,}894$), сравни решение при одностороннем и двустороннем тесте на уровне $\alpha=0{,}05$.


Задание 14. Коин-тест с правилом «отвергнуть честность при $8$ и более, либо $2$ и менее орлов из $10$ бросков». Найди фактическую вероятность ошибки первого рода этого правила.


Задание 15. Для правила из задания 14 найди мощность теста против альтернативы, что истинная вероятность орла на самом деле $p=0{,}8$.


Задание 16. Команда планирует протестировать $15$ независимых гипотез (разные варианты формулировки заголовка письма), каждую при $\alpha=0{,}05$. Найди вероятность хотя бы одного ложного срабатывания, если на самом деле ни одна из формулировок не работает лучше остальных.


Задание 17. Тот же A/B-тест рекомендательной модели, но с уменьшенной выборкой: $n_A=n_B=2\,500$, при тех же пропорциях $\hat p_A=0{,}05$ ($x_A=125$) и $\hat p_B=0{,}056$ ($x_B=140$). Проверь одностороннюю гипотезу при $\alpha=0{,}05$ и сравни вывод с заданием 13.


Задание 18. Аналитик проверил гипотезу и получил $p=0{,}12$ при небольшой выборке — результат не значим. Объясни, какая ошибка могла быть допущена, и что стоит сделать дальше.


Задание 19. По формуле полной вероятности и Байеса: среди всех проверяемых в компании гипотез реальный эффект содержат $20\%$ ($P(\text{эффект})=0{,}2$), мощность типичного теста — $70\%$, уровень значимости — $\alpha=0{,}05$. Найди вероятность того, что эффект реален, при условии, что тест дал значимый результат.


Задание 20. Среднее время сессии в приложении раньше составляло $8{,}2$ минуты. После редизайна интерфейса на выборке $n=50$ пользователей среднее время сессии — $8{,}7$ минуты, стандартное отклонение $1{,}8$ минуты. Проверь одностороннюю гипотезу «редизайн увеличил время сессии» при $\alpha=0{,}05$.


Продвинутые (задания 21–30)

Задание 21. Проведи полный разбор A/B-теста рекомендательной модели «с нуля»: $n_A=n_B=10\,000$, $x_A=500$, $x_B=560$. Сформулируй гипотезы, вычисли z-статистику и p-значение, прими решение при $\alpha=0{,}05$ и обсуди, что означала бы каждая из двух ошибок в этом контексте.


Задание 22. Какой минимальный размер выборки на группу (при равных группах) нужен, чтобы с мощностью $80\%$ и уровнем значимости $\alpha=0{,}05$ (односторонний тест) обнаружить рост конверсии с $5\%$ до $6\%$? Используй приближённую формулу $n \approx \dfrac{(z_\alpha+z_\beta)^2\left[p_1(1-p_1)+p_2(1-p_2)\right]}{(p_2-p_1)^2}$, где $z_\alpha=1{,}645$, $z_\beta=0{,}8416$.


Задание 23. Компания проверяет $10$ независимых гипотез с общим (семейным) уровнем значимости $\alpha_{\text{семья}}=0{,}05$, используя поправку Бонферрони. Найди скорректированный порог для каждого отдельного теста и определи, какие из двух результатов — $p=0{,}004$ и $p=0{,}008$ — остаются значимыми после поправки.


Задание 24. A/B-тест с неравными группами: $n_A=800$, $x_A=88$ ($11\%$); $n_B=1200$, $x_B=156$ ($13\%$). Проверь двустороннюю гипотезу о равенстве долей при $\alpha=0{,}05$.


Задание 25. Покажи на числах, как размер выборки влияет на значимость при одном и том же относительном эффекте: сравни z-статистику и p-значение для пропорций $5\%$ против $6\%$ при $n=1000$ на группу ($x_A=50$, $x_B=60$) и при $n=10\,000$ на группу ($x_A=500$, $x_B=600$).


Задание 26. Команда смотрит на p-значение своего A/B-теста каждый день по мере накопления данных и останавливает эксперимент, как только впервые видит $p<0{,}05$ («подглядывание» за данными). Грубо оцени риск: если сделать $5$ таких «подглядываний» и приближённо считать каждое независимым тестом с $\alpha=0{,}05$, какова вероятность хотя бы одного ложного срабатывания, даже если реального эффекта нет?


Задание 27. Для того же A/B-теста рекомендательной модели ($n_A=n_B=10\,000$, критическое значение для $\alpha=0{,}05$ одностороннего теста — $z_{\text{крит}}=1{,}645$) найди мощность теста для обнаружения значительно более скромного истинного эффекта — роста конверсии с $5\%$ до $5{,}2\%$ (вместо наблюдавшихся $5{,}6\%$).


Задание 28. Построй небольшую сравнительную таблицу для теста честности монеты ($n=10$): для двух правил принятия решения — критическая область $\{0,1,9,10\}$ и критическая область $\{0,1,2,8,9,10\}$ — найди $\alpha$ и мощность против альтернативы $p=0{,}7$. Сделай общий вывод о компромиссе.


Задание 29. Компания сравнила две версии рекомендательного алгоритма на огромной выборке: $n_A=n_B=1\,000\,000$ пользователей, конверсия $5{,}00\%$ против $5{,}10\%$. Проверь двустороннюю значимость этой разницы при $\alpha=0{,}05$ и обсуди, стоит ли компании радоваться результату.


Задание 30. Компания тестирует новый спам-фильтр: старый фильтр на выборке $n_A=5000$ писем дал $150$ ложных срабатываний ($3{,}0\%$ ложноположительных писем — легитимных писем, ошибочно помеченных как спам); новый фильтр на выборке $n_B=5000$ дал $110$ ложных срабатываний ($2{,}2\%$). Проверь одностороннюю гипотезу «новый фильтр снижает долю ложных срабатываний» при $\alpha=0{,}05$ и сформулируй итоговый вывод для команды.


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

  • Путать p-значение с вероятностью того, что $H_0$ верна. Это самая частая и самая опасная ошибка во всей статистике. p-значение — это $P(\text{данные} \mid H_0)$, а не $P(H_0 \mid \text{данные})$. Как мы посчитали в разделе про p-значение, даже при $p<0{,}05$ вероятность того, что эффект действительно реален, может быть заметно ниже, чем интуитивно ожидаемые $95\%$, — она зависит от того, насколько вообще правдоподобна альтернатива до эксперимента.

  • Интерпретировать «не отвергли $H_0$» как «$H_0$ доказана». Отсутствие статистической значимости означает лишь «данных недостаточно, чтобы отвергнуть $H_0$», а не «эффекта точно нет». Возможно, выборка была слишком мала, мощность теста — недостаточной (как в заданиях 17 и 27), и реальный эффект остался незамеченным.

  • Менять гипотезу после того, как увидены данные (подгонка формулировки под уже полученный результат). Формулировка $H_0$/$H_1$ и выбор между односторонним и двусторонним тестом должны быть зафиксированы до эксперимента. Если после просмотра данных «внезапно» переформулировать одностороннюю гипотезу в удобную сторону, реальный уровень ложных срабатываний оказывается значительно выше заявленного $\alpha$.

  • «Подглядывать» за p-значением по ходу накопления данных и останавливать эксперимент в момент, когда оно впервые упало ниже $0{,}05$. Как показано в задании 26, это резко завышает истинную вероятность ложного срабатывания — правило принятия решения рассчитано на однократную проверку в заранее оговорённый момент, а не на постоянный мониторинг с остановкой «когда понравится».

  • Игнорировать проблему множественных сравнений. Если тестируется много гипотез одновременно (десятки метрик, сегментов пользователей, вариантов дизайна), применение $\alpha=0{,}05$ к каждому тесту по отдельности резко увеличивает совокупный риск хотя бы одной ложной тревоги — как показано в задании 16, при $15$ тестах этот риск превышает $50\%$.

  • Путать статистическую значимость с практической. При достаточно большой выборке даже ничтожно малый, коммерчески неинтересный эффект становится «статистически значимым» (задание 29). Значимый результат всегда стоит сопровождать оценкой величины эффекта и вопросом «а стоит ли этот эффект вообще внедрять».

  • Забывать про ошибку второго рода, фокусируясь только на $\alpha$. Низкий $\alpha$ звучит безопасно, но при фиксированном объёме выборки он почти всегда достигается за счёт роста $\beta$ — растущего риска пропустить реальный, работающий эффект (задание 28). Хороший дизайн эксперимента всегда учитывает обе ошибки, а не только контролирует ложные срабатывания.


Главное запомнить

  • Проверка гипотез работает «от противного»: предполагаем, что верна нулевая гипотеза $H_0$ (эффекта нет), и смотрим, насколько данные ей противоречат.

  • Альтернативная гипотеза $H_1$ — то, что мы хотим доказать; она может быть двусторонней ($\ne$) или односторонней ($>$ или $<$), и это решается до эксперимента.

  • p-значение — вероятность получить такие же или более экстремальные данные при условии истинности $H_0$; маленькое p-значение означает, что данные плохо согласуются с $H_0$.

  • p-значение — это НЕ вероятность того, что $H_0$ верна. Это принципиально разные условные вероятности, и их смешение — главная ошибка при интерпретации результатов.

  • Уровень значимости $\alpha$ — заранее заданный порог допустимого риска ложной тревоги; правило решения: $p\le\alpha$ — отвергаем $H_0$, иначе — не отвергаем.

  • Ошибка первого рода ($\alpha$) — ложное срабатывание, отвержение верной $H_0$; ошибка второго рода ($\beta$) — пропуск, неотвержение неверной $H_0$.

  • Между $\alpha$ и $\beta$ при фиксированном объёме выборки существует компромисс: снижая одну, обычно повышаешь другую; единственный способ снизить обе — увеличить размер выборки.

  • Мощность теста $1-\beta$ — вероятность правильно обнаружить реальный эффект; её нужно закладывать в дизайн эксперимента заранее, а не считать постфактум.

  • Одни и те же данные могут давать разные решения в зависимости от постановки гипотезы (одно- или двусторонней) и уровня значимости — выбор этих параметров нужно фиксировать до эксперимента.

  • A/B-тестирование — прикладной инструмент, целиком построенный на проверке гипотез: «не катим изменение, пока не получили статистически значимое улучшение» — это ровно применение правила $p\le\alpha$.


Связь с другими темами курса

Этот урок опирается на оценку параметров (урок 246) — тестовая статистика почти всегда строится из точечной оценки параметра (например, $\hat p$ или $\bar x$) и её стандартной ошибки, а сама идея, что оценка — случайная величина со своим разбросом, без урока 246 была бы непонятна. Формула полной вероятности и формула Байеса (уроки 231 и 232) напрямую нужны, чтобы правильно объяснить, почему p-значение не равно $P(H_0 \mid \text{данные})$, — это буквально та же логическая структура, что и классическая задача про тестирование на болезнь. Центральная предельная теорема (урок 241) — фундамент того, почему z-статистика (разность пропорций или средних, делённая на стандартную ошибку) приближённо имеет стандартное нормальное распределение даже при негауссовских исходных данных, что и позволяет считать p-значения через таблицы нормального распределения. Следующий урок (248) про критерий хи-квадрат расширяет ровно ту же логику проверки гипотез — $H_0$, статистика, p-значение, решение — на категориальные данные и таблицы сопряжённости, то есть на случаи, когда сравниваемая величина не одно число, а целое распределение по категориям.


Интересные факты

  • Порог $\alpha=0{,}05$ — не научный закон, а историческое совпадение. Фишер в 1925 году написал, что «удобно» считать событие с вероятностью около одной двадцатой достаточно редким, — и это случайное по сути замечание стало почти религиозным стандартом на следующие сто лет.

  • В 2016 году Американская статистическая ассоциация (ASA) выпустила официальное заявление о p-значениях — редкий случай, когда профессиональная организация публично предупреждает о повсеместном неправильном использовании собственного главного инструмента, включая явное указание, что p-значение не измеряет вероятность истинности гипотезы.

  • Некоторые научные журналы (например, в психологии) в последние годы вообще запретили публикацию результатов, основанных исключительно на пороге $p<0{,}05$, без указания величины эффекта и доверительных интервалов, — прямая реакция на «репликационный кризис», когда множество опубликованных «значимых» результатов не подтвердились при повторных экспериментах.

  • Термин «ошибка первого рода» и «ошибка второго рода» — намеренно нейтральные, «пронумерованные» названия, придуманные Нейманом и Пирсоном именно для того, чтобы избежать оценочных слов вроде «плохая» или «серьёзная» ошибка: какая из них хуже, всегда зависит от контекста задачи, а не от самой статистики.

  • В крупных технологических компаниях (Google, Microsoft, Booking.com) счёт одновременно идущих A/B-тестов идёт на тысячи в год — именно поэтому у таких компаний есть отдельные внутренние платформы экспериментирования, которые автоматически применяют поправки на множественные сравнения и контролируют мощность тестов, чтобы наивное применение $\alpha=0{,}05$ не потонуло в потоке ложных «побед».


Лайфхаки и полезные трюки

  • Всегда формулируй $H_0$ и $H_1$ и фиксируй тип теста (одно- или двусторонний) до того, как посмотришь на данные — лучше всего письменно, в отдельном документе эксперимента. Это защищает от неосознанной подгонки гипотезы под результат.

  • Если результат теста «пограничный» (p-значение близко к $\alpha$, как в задании 5), не спеши с окончательным решением — лучше повторить эксперимент на независимой выборке или увеличить объём данных, чем полагаться на хрупкий вывод у самой границы.

  • Перед запуском эксперимента заранее посчитай необходимый размер выборки под желаемую мощность (как в задании 22) — это защитит и от «зря потраченного» эксперимента с недостаточной мощностью, и от избыточно долгого и дорогого сбора данных сверх необходимого.

  • Если тестируешь сразу много гипотез (метрики, сегменты, варианты), сразу применяй поправку на множественность сравнений (простейшая — поправка Бонферрони, разделить $\alpha$ на число тестов) вместо того, чтобы потом удивляться потоку случайных «значимых» результатов.

  • Никогда не смотри на p-значение по ходу накопления данных с намерением остановиться, как только оно упадёт ниже порога, — либо фиксируй момент остановки заранее (по времени или по размеру выборки), либо используй специальные методы последовательного тестирования, рассчитанные именно на промежуточные проверки.

  • Всегда указывай вместе с p-значением величину эффекта (например, разницу пропорций или доверительный интервал для неё) — само по себе p-значение ничего не говорит о размере эффекта, и, как показывает задание 29, даже крошечный, практически неважный эффект может оказаться «статистически значимым» при большой выборке.


Проверка статистических гипотез — это, по сути, формализованная дисциплина сомнения: инструмент, который не даёт тебе поверить в эффект просто потому, что цифры чуть-чуть отличаются. Каждый раз, когда ты видишь в отчёте фразу «результат статистически значим», за ней должна вставать вся цепочка, которую ты только что прошёл: чёткая формулировка $H_0$ и $H_1$ ещё до эксперимента, честный расчёт p-значения, осознанный выбор уровня значимости и понимание того, какую из двух ошибок — ложную тревогу или пропущенный эффект — тебе дороже допустить именно в этой задаче. Освоив это, ты получаешь не просто ещё один пункт в списке формул, а рабочий фильтр против самообмана — ровно то, что отличает специалиста по данным, которому можно доверять принятие решений, от человека, который просто умеет нажимать кнопку «посчитать p-значение».

Понял тему? Закрепи в боте! 🚀

Попрактикуйся на задачах и получи персональные рекомендации от AI

💪 Начать тренировку
💬 Есть вопрос? Спроси бота!