Статистика
Бутстрап и ресэмплинг
«Как построить доверительный интервал для медианы?» Для среднего есть формула. Для медианы - нет. В 1979 году Брэдли Эфрон предложил бутстрап: симулируй тысячи выборок из своих данных. Этот метод перевернул практическую статистику - теперь любая статистика получает доверительный интервал.
- A/B тестирование: доверительные интервалы для конверсии без предположений о нормальности
- Машинное обучение: bootstrap aggregating (bagging) - основа Random Forest
- Финансовый риск: VaR (Value at Risk) на основе бутстрап из исторических доходностей
- Клинические испытания: точные p-value для малых выборок без предположений о распределении
- Геномика: оценка ошибок при нескольких сотнях SNP-маркеров
Предварительные знания
Идея ресэмплинга: симуляция вместо формул
Bootstrap-метод используется в Random Forest (scikit-learn): 100+ деревьев, каждое обучается на 63.2% данных (выборка с возвращением). **Бутстрап** (bootstrap) - метод оценки распределения статистики через многократную перевыборку из имеющихся данных. Идея: если выборка хорошо представляет генеральную совокупность, то ресэмплинг из выборки имитирует ресэмплинг из совокупности. Алгоритм: 1. из n наблюдений взять n с возвращением 2. вычислить статистику 3. повторить B=1000 - 10000 раз 4. распределение статистики из B повторений = бутстрап-распределение.
**Когда применять бутстрап:** 1. для медианы, моды, межквартильного размаха, где формул нет 2. для сложных составных статистик (отношение медиан, trimmed mean) 3. малые выборки, где ЦПТ не работает 4. непонятная форма распределения. Не подходит: очень малые выборки (n < 10), данные с тяжёлыми хвостами (bootstrap может не уловить экстремумы).
Нужно построить 95% доверительный интервал для медианы выборки из 25 наблюдений с неизвестным распределением. Какой метод предпочесть?
Бутстрап доверительные интервалы: процентильный метод
Три основных метода бутстрап ДИ: 1. **Процентильный**: [Q(α/2), Q(1-α/2)] бутстрап-распределения - прост, но может быть смещён. 2. **BCa** (bias-corrected and accelerated) - исправляет смещение и асимметрию, рекомендован. 3. **Базовый** (basic bootstrap): 2×θ − [Q(1-α/2), Q(α/2)] - симметризует. На практике: BCa для точности, процентильный для скорости.
**Сколько бутстрап-повторений?** B=1000 достаточно для стандартной ошибки. B=5000 - для процентильного ДИ. B=10000+ - для BCa ДИ в хвостах (α=0.01). Больше - точнее, но дольше. Для быстрой проверки: B=1000; для публикации: B=5000-10000.
Бутстрап: процентильный 95% ДИ для разности медиан = [2.3, 18.7]. Что это означает?
Перестановочные тесты
**Перестановочный тест** (permutation test) - точный непараметрический тест без предположений о распределении. Идея: если H₀ верна (нет различий между группами), то метки групп случайны - можно их перемешать. Алгоритм: 1. вычислить наблюдённую статистику 2. случайно перемешать метки B раз 3. p-value = доля перемешиваний, давших статистику ≥ наблюдённой.
**Бутстрап vs Перестановочный тест:** бутстрап - для доверительных интервалов и стандартных ошибок (с ресэмплингом с возвращением). Перестановочный тест - для p-value (ресэмплинг без возвращения, перемешивание меток). Оба работают без предположений о распределении и подходят для произвольных статистик.
Перестановочный тест: вычислили разность средних (наблюдённую). Затем 10 000 раз перемешали метки групп и вычислили разность. p = 0.03. Что это означает?
Ключевые идеи
- Бутстрап: B-кратный ресэмплинг с возвращением → распределение любой статистики
- Работает без аналитических формул: медиана, trimmed mean, отношение медиан
- Процентильный ДИ: [Q(2.5%), Q(97.5%)] из B бутстрап-значений
- BCa ДИ - точнее при смещении и асимметрии; scipy.stats.bootstrap
- B=1000 для SE, B=5000 для ДИ, B=10000 для BCa
- Перестановочный тест: p-value без предположений (перемешивание меток групп)
- Ограничения: малые выборки (n<10), тяжёлые хвосты
Связь с другими методами
Бутстрап связан с cross-validation (перевыборка для оценки модели), bagging/Random Forest (бутстрап ансамблей), и джекнайфом (jackknife - предшественник бутстрапа).
- Доверительные интервалы — Бутстрап - альтернативный метод построения ДИ без предположений
- Непараметрические тесты — Перестановочные тесты - непараметрические точные тесты
Вопросы для размышления
- Почему бутстрап работает? Что позволяет считать перевыборку из выборки эквивалентной перевыборке из генеральной совокупности?
- В каком случае бутстрап даст плохие результаты? (подсказка: рассмотрим распределениях с тяжёлыми хвостами)
- Как связан бутстрап с методом Random Forest? Почему bgging помогает снизить дисперсию модели?