Что такое бутстрап и когда он нужен?
Короткий ответ
Бутстрап — метод оценки погрешности через многократный ресэмплинг из имеющейся выборки с возвращением. Строим тысячи «псевдовыборок» того же размера, считаем на каждой нужную метрику и по разбросу этих оценок получаем доверительный интервал. Выручает, когда аналитической формулы нет (медиана, перцентили, конверсия×чек) или данные скошены и мала выборка — то есть когда классические формулы не применить.
Бутстрап спрашивают, чтобы проверить, умеешь ли ты оценивать неопределённость, когда красивой формулы не существует. Для продуктового аналитика это рабочая лошадь: половина реальных метрик — не среднее, а что-то, для чего готового «± 1.96 SE» нет.
Как рассуждать
Идея одной фразой: относись к своей выборке как к «мини-генеральной совокупности» и переигрывай сбор данных из неё. Раз мы не можем сходить в реальность за новыми выборками, мы имитируем их, вытягивая наблюдения из уже собранных — с возвращением. Разброс метрики по этим переигровкам и есть оценка её погрешности.
Эталонный ответ
Алгоритм:
- Есть выборка из n наблюдений.
- Случайно вытягиваем из неё n значений с возвращением (одно наблюдение может попасть несколько раз, другое — ни разу). Это одна бутстрап-выборка.
- Считаем на ней интересующую метрику (медиану, 95-й перцентиль, разницу конверсий и т.п.).
- Повторяем шаги 2–3 много раз — обычно 1000–10000.
- Получаем распределение метрики. Его стандартное отклонение — это стандартная ошибка, а 2.5-й и 97.5-й перцентили дают 95%-й доверительный интервал.
Когда бутстрап особенно полезен:
- Нет аналитической формулы. Для среднего формула стандартной ошибки известна, а для медианы, перцентилей или хитрых метрик вроде «выручка на пользователя = конверсия × чек» её под рукой нет. Бутстрап даёт интервал для чего угодно.
- Скошенные данные и небольшая выборка, где нормальное приближение ЦПТ ещё не сработало.
- Сложные метрики в A/B-тестах — например, доверительный интервал разницы медиан времени на сайте между группами.
Плюсы — универсальность и минимум предположений. Минус — считать надо, это дороже формулы, и на очень маленьких выборках (5–10 точек) бутстрап тоже врёт: он не создаёт информации, которой в данных нет.
Почему это вообще работает, если объяснять на пальцах: выборка — наша лучшая имеющаяся картинка генеральной совокупности, и переигрывая сбор из неё, мы имитируем ту изменчивость, которую увидели бы, собирая данные заново. Отсюда и минимум предположений: мы не навязываем данным форму распределения, а даём им самим показать разброс. Поэтому бутстрап так удобен, когда метрика нестандартная, а вывести формулу лень или невозможно.
Частые ошибки
- Думать, что бутстрап «чинит» крошечную выборку. Он лишь честно оценивает погрешность по имеющимся данным — из десяти точек чуда не будет.
- Ресэмплить без возвращения — тогда каждая псевдовыборка равна исходной, и весь смысл теряется.
- Забывать про структуру данных: если наблюдения зависимы (несколько событий на пользователя), ресэмплить нужно пользователей целиком (кластерный бутстрап), а не отдельные строки.
- Считать бутстрап-интервал и молчать про размер эффекта — как и с p-value, сам факт «интервал не накрыл ноль» решения ещё не принимает.
Потренируй этот вопрос с ИИ-интервьюером
Читать разбор полезно, а отвечать вслух под давлением — совсем другое. ИИ-интервьюер задаст этот и смежные вопросы, будет копать глубже и разберёт твои ответы. Первое короткое интервью — бесплатно.
Пройти собеседование бесплатно