Множественные сравнения на собеседовании
В чём проблема
Каждый статистический тест с alpha = 0.05 имеет 5% шанс дать ложноположительный результат. Один тест — допустимый риск. Но если вы проводите 20 тестов одновременно, вероятность хотя бы одного ложного срабатывания — уже 64%. При 100 тестах — почти 100%.
Это не абстрактная математика. Аналитик, который проверяет сегменты в A/B-тесте, сравнивает несколько метрик или запускает серию тестов — сталкивается с этой проблемой ежедневно. На собеседовании вопрос про множественные сравнения показывает, понимает ли кандидат, когда результатам можно доверять.
FWER и FDR
Есть два подхода к контролю ошибок при множественных сравнениях, и важно понимать разницу.
FWER (Family-Wise Error Rate) — вероятность допустить хотя бы одну ложноположительную ошибку среди всех тестов. Строгий контроль: если вы не хотите ни одного ложного открытия — контролируйте FWER. Подходит, когда цена ошибки высока (медицина, финансы).
FDR (False Discovery Rate) — доля ложных открытий среди всех значимых результатов. Менее строгий: допускает, что часть находок ложные, но контролирует их пропорцию. Подходит для exploratory анализа, где важнее не пропустить реальные эффекты.
На собеседовании. Если спрашивают «какой метод коррекции использовать?» — начните с контекста: «Зависит от того, что мы контролируем — FWER или FDR. Для подтверждающего анализа — FWER (Бонферрони). Для исследовательского — FDR (Бенджамини-Хохберг)».
Коррекция Бонферрони
Самый простой и известный метод. Делите порог значимости на количество тестов: при 10 сравнениях новый порог — 0.005 вместо 0.05. Эквивалентно: умножайте каждый p-value на количество тестов и сравнивайте с 0.05.
Преимущества. Прост, интуитивен, гарантирует контроль FWER. Не требует предположений о зависимости тестов.
Недостатки. Очень консервативен — при большом числе тестов порог становится настолько строгим, что реальные эффекты пропускаются. При 100 тестах порог 0.0005 — почти ничего не пройдёт.
Альтернатива — Holm-Bonferroni. Менее консервативная модификация: p-value сортируются по возрастанию, и каждый сравнивается с alpha/(m-k+1), где k — порядковый номер. Мощнее Бонферрони при том же контроле FWER.
Бонферрони — это «пожарная лестница» статистики: грубо, надёжно, всегда работает. Но если есть возможность — используйте более точный метод.
FDR и метод Бенджамини-Хохберга
Метод Бенджамини-Хохберга (BH) контролирует FDR — долю ложных открытий. Алгоритм:
- Отсортируйте p-value по возрастанию: p(1) <= p(2) <= ... <= p(m)
- Для каждого i найдите порог: (i/m) * alpha
- Найдите максимальное k, при котором p(k) <= (k/m) * alpha
- Отвергните гипотезы с p(1), ..., p(k)
Преимущества. Значительно мощнее Бонферрони — пропускает больше реальных эффектов. При 20 тестах BH может найти 5 значимых, а Бонферрони — только 2.
Когда использовать. Exploratory анализ сегментов, сравнение множества метрик, генетические исследования — всюду, где допустима небольшая доля ложных открытий ради того, чтобы не пропустить реальные.
Практические примеры
A/B-тест с 5 метриками. Основная метрика + 4 guardrails. Нужна ли коррекция? Для основной метрики — нет, она одна и определена заранее. Для guardrails — да, если вы принимаете решение на основе каждой из них. Практика: разделите alpha-бюджет — 0.04 на основную, 0.0025 на каждый guardrail.
Post-hoc сегментация на 10 срезов. Нашли значимость в сегменте «мобильные iOS». Без коррекции — p = 0.02. С Бонферрони — p = 0.20 (незначимо). С BH — зависит от остальных p-value. Решение: зафиксировать как гипотезу и проверить в отдельном тесте.
Серия из 50 A/B-тестов за квартал. Если alpha = 0.05 для каждого — ожидаемо 2-3 ложных открытия. Это нормально для бизнеса, если каждый тест принимает решение независимо. Коррекция нужна, только если вы анализируете все 50 как единую систему.
Типичные вопросы на собеседовании
- «Вы проверили 20 сегментов и нашли два значимых. Что делать?» — скорректировать p-value (BH или Бонферрони) и проверить, остаётся ли значимость. Если нет — это exploratory находка, нужен подтверждающий тест
- «Чем Бонферрони отличается от BH?» — Бонферрони контролирует FWER (ни одной ложной ошибки), BH контролирует FDR (долю ложных среди найденных). BH мощнее, но допускает ложные открытия
- «Нужна ли коррекция, если метрики зависимы?» — Бонферрони не зависит от корреляции тестов, BH работает при положительной зависимости. Оба применимы
Главное, что проверяет интервьюер — осознаёт ли кандидат саму проблему. Конкретный метод коррекции вторичен по сравнению с пониманием того, что множественные проверки раздувают ошибку.
FAQ
Нужна ли коррекция для guardrail-метрик?
Зависит от фреймворка. Строгий подход: да, коррекция нужна для всех метрик, по которым принимается решение. Практический подход: основная метрика — без коррекции, guardrails — с более строгим порогом. Важно зафиксировать правила до начала теста.
Что если я заранее определил 3 сегмента для анализа?
Pre-registered (заранее определённые) сегменты можно анализировать без штрафа, если они включены в дизайн эксперимента и для них рассчитан размер выборки. Это отличается от post-hoc нарезки данных, где коррекция обязательна.
Как объяснить проблему множественных сравнений нетехническому коллеге?
Аналогия: представьте, что вы подбрасываете 20 монет и считаете «аномальной» любую серию из 5 орлов подряд. Вероятность найти такую серию хотя бы в одной монете — высокая, хотя каждая монета честная. Множественные сравнения — то же самое: чем больше проверок, тем выше шанс найти «эффект» там, где его нет.