что такое бутстреп статистика
Бутстрап, или прикладная статистика почти без формул
В институтах студентов учат интегрировать аналитически, а потом обнаруживается, что на практике интегралы почти все считают численными методами. Ну или по крайней мере проверяют таким образом аналитическое решение.
В статистике тоже есть нечестный метод, который позволяет получить примерный ответ на многие практические вопросы без анализа, грубой компьютерной силой: бутстрап (англ. bootstrap). Придумал и опубликовал его в 1979 году Брэдли Эфрон.
Допустим, есть у нас интернет-магазин, где мы торгуем всякой всячиной и привлекаем клиентов разными способами. Понятное дело, что мы постоянно что-то тестируем — расположение картинок и кнопок на странице, рекламный текст, AdWords, баннеры на сайтах партнёров и так далее. И вот свежие результаты — в тестовой группе из 893 пришедших у нас что-то купили 34, а в контрольной группе из 923 пришедших что-то купили 28.
Возникает вопрос — идти к начальству и говорить «в тестовой группе конверсия 3.81%, в контрольной группе 3.03%, налицо улучшение на 26%, где моя премия?» или продолжать сбор данных, потому что разница в 6 человек — ещё не статистика?
Так что премия пока не светит, надо продолжать собирать данные.
Теперь решим эту же задачу бутстрапом. Основная идея такова: хорошо бы повторить наш эксперимент много раз и посмотреть на распределение результатов. Но мы это сделать не можем, поэтому будем действовать нечестно — надёргаем выборок из имеющихся данных и сделаем вид, что каждая из них — результат повторения нашего эксперимента.
Алгоритм:
Теперь у нас есть распределение, на которое мы можем посмотреть или что-то по нему посчитать. Например, доверительный интервал, медиану или стандартное отклонение.
Обратите внимание на то, что мы не делаем никаких предположений о распределении чего-либо. Распределения могут быть несимметричными, с толстыми хвостами и вообще иметь причудливую форму. Алгоритм от этого не меняется.
Чудес, правда, не бывает. Если у распределения нет матожидания (такие встречаются), бутстрап его не найдёт. Ну то есть он найдёт матожидание выборки, но не генеральной совокупности. То же касается ситуации, когда выборка нерепрезентативна или просто маленькая.
Бутстрап прост в имплементации. Приведённый ниже пример написан на C (проще не бывает) и кроме ввода-вывода использует только две библиотечные функции: генератор псевдослучайных чисел и сортировку. Разберём его по частям.
Функция, которая на лету делает выборку и считает по ней процент конверсии.
Правильнее было бы использовать более точный алгоритм вычисления среднего значения,
но для нашего примера это не важно.
Функция сравнения для сортировки результатов
Инициализируем генератор псевдослучайных чисел параметром из командной строки. Если мы
всё сделали правильно, то результаты не должны сильно плавать при изменении этого
параметра.
Сюда будем складывать результаты
Определяем 95% доверительный интервал: cортируем результаты, отбрасываем 2.5% снизу и столько же сверху, показываем результат.
Ещё пару раз с другими псевдослучайными числами:
И зачем было огород городить?
У этой задачи есть простое аналитическое решение, но у многих реальных задач его или нет вообще, или оно есть, но очень сложное. Представьте, что вместо процента конверсии нас интересует отношение прибыли от клиента к затратам на его привлечение. Распределение такой метрики вряд ли будет нормальным, и формулы перестанут укладываться в пару строчек. А бутстрап будет работать точно так же, достаточно поменять Data_t на double и положить туда новые данные.
Первоисточники
Бутстреппинг (статистика)
Содержание
Неофициальное описание
Бутстреппинг основан на том, что зачастую наиболее достоверную информацию о форме распределения случайной величины несёт имеющаяся у нас выборка значений этой случайной величины. Например, выборка наблюдений с двумя пиками в гистограмме не будет хорошо аппроксимироваться кривой нормального распределения, которая имеет только одну вершину. И вместо того, чтобы постулировать неадекватную форму распределения случайной величины (например, нормальную), мы используем форму распределения, которую даёт нам выборка.
В качестве примера предположим, что мы исследуем высоту людей во всем мире. Мы не можем измерить всех людей, а вместо этого выбираем лишь малую часть. Пусть в нашей выборке N людей. Мы можем посчитать среднее значение. Но для того, чтобы рассуждать о доверительном интервале роста населения, нам нужно некоторое представление о вариабельности среднего. В простейшем варианте Бутстреппинга мы, используя наши исходные данные о росте N различных людей, составляем новую выборку, также размера N. Это новая выборка взята из исходной случайным образом так, что одно значение может быть выбрано несколько раз (т.е., строя новую выборку, мы каждый раз случайным образом выбираем из N имеющихся значений). У такой выборки будет другое среднее. Сделав такую выборку много раз (возможно, 1000 или 10000 раз), каждый раз вычисляя среднее, мы получаем гистограмму распределения, которая можем ответить на вопросы о доверительном интервале.
Основной принцип бутстрепинга: имитировать многократное получение выборки из генеральной совокупности, используя данные из имеющейся у нас выборки.
Рецентирирование
При проведении Бутстрапа истинное распределение заменяется выборочным, поэтому при использовании статистик вместо истинных параметров необходимо использовать данные по полной выборке
Типы бутстрапинга
Ресемплинг
Бутстрепинг, как правило, применяется для оценки статистик распределения (например, среднего, дисперсии) без использования параметрических допущений. Есть по крайней мере два способа выполнения ресемплинга..
Ресемплинг среднего арифметического
Рассмотрим эксперимент по бросанию монет. Мы подбрасываем монетку и записываем «орел» или «решка». Предположим для простоты, что есть только два исхода. Пусть X = x1, x2, …, x10 в 10 наблюдениях из эксперимента. х = 1, если орел, и 0 в противном случае. В обычной теории, мы можем использовать Т-статистику для оценки распределения выборочного среднего, .
Вместо этого мы используем бутстрапинг, в частности, ресемплинг (передискретизацию), чтобы получить распределение . Сначала проведем повторную выборку данных для получения передискредитованной выборки: X1 * = x2, x1, x10, x10, x3, x4, x6, x7, x1, x9. Обратите внимание, что есть дубликаты, так как бутстрап частоты дискретизации происходит от выборки с возвращением из данных. Отметим также, что число точек данных в первой и последующих бутстрап выборках равна количеству точек данных в оригинальной выборке. Затем вычисляем среднюю этой бутстрап-выборки — это будет первая точка бутстрап-оценки распределения: μ1 *. Мы повторяем этот процесс, чтобы получить вторую бутстрап-выборку X2 * и вычислить второй точку бутстрап оценки μ2 *. Если мы повторим это в 100 раз, то мы получим μ1 * μ2 *, …, μ100 *. Результат представляет собой эмпирическое бутстрап-распределение оценки среднего арифметического. Из этого эмпирического распределения, можно получить доверительный интервал оценки с целью проверки гипотез.
Пример передискретизации регрессии
Случай передискретизации регрессии относится к простой схеме интерполяции. Для проблемы регрессии, в случае если набор данных достаточно велик, эта простая схема часто приемлема. Тем не менее, метод является открытым для критики [источник?].
В проблеме регрессии, объясняющие переменные часто фиксированы, или по крайней мере, над ними наблюдается больший контроль, чем над зависимой переменной. Кроме того, ряд из объясняющих переменных определяет информацию о них. Таким образом, в случае повторной выборки, каждая бутстрап-выборка потеряет некоторую информацию. Таким образом, должны быть рассмотрены альтернативные процедуры бутстрапа.
Гладкий бутстраппинг
Согласно этой схеме, небольшое количество случайного шума (как правило, нормальное распределенного с нулевым мат. ожиданием) добавляется к каждому наблюдению. Примечания переводчика: Зачем?
Параметрический бутстраппинг
В этом случае параметрическая модель оснащена данными, часто максимального правдоподобия и примеры случайных чисел, взяты из этой подогнанной модели. Обычно проба имеет тот же размер, что и исходные данные. Тогда оценки рассчитывается исходя из этих данных. Эта бустрап-выборка повторяется много раз, как и для других способов. Использование параметрической модели на этапе отбора бутстрап выборок приводит к процедурам, которые отличаются от результатов, полученных путем применения основных статистических теорий бустрапинга для той же модели.
Передискретизация остатков
Другой подход к бустреппингу в регрессии является передискретизация остатоков. Метод состоит в следующем.
Эта схема имеет то преимущество, что она сохраняет информацию в независимых переменных. Тем не менее, возникает вопрос о том, какие остатки на повторной выборки. Сырье остатки являются одним из вариантов, другой стьюдентизированные остатки (в линейной регрессии). Хотя есть аргументы в пользу использования стьюдентизированные остатки, на практике она часто мало чем отличается и легко запускать обе схемы и сравнить результаты друг против друга.
Гауссовская процедура бутстрап регрессии
Когда данные временно взаимосвязаны, простой бустрап уничтожает присущее корреляции. Этот метод используется гауссовский процесс регрессии в соответствии с вероятностной модели, которая имитирует может быть обращено. Гауссовские процессы, методы байесовского непараметрической статистики, но здесь используется для построения параметрический подход начальной загрузки, который позволяет неявно зависимости от времени данных, которые должны быть приняты во внимание.
Дикий бутстраппинг
Каждый остаток случайно умножается на случайной величиной со средним 0 и дисперсией 1. Этот метод предполагает, что «истинное» распределения остатков симметрично и может предложить преимущества по сравнению с простым остаточным выборки для меньших размеров образца. [2]
Скользящий блочный бутстрапинг
В движущемся блочном бутстрапинге, n-b+1 перекрытия блоков длиной б будет создана следующим образом: Наблюдение 1 b будет блок 1, замечание 2 b+1 будет блок 2 и т. д. Затем из этих n-b+1 блоков, n/b блоки будут выбраны случайным замены. После согласования этих n/b блоки в порядке, они были выбраны, даст бустрап наблюдений. Этот бустраппинг работает с зависимыми данными, однако, бутстреп наблюдения не будет стационарным больше по построению. Но, было показано, что изменение длины блока можно избежать этой проблемы. [3]
Получение доверительного интервала по бутстрап распределению
Бустрап распределения параметров может была использовано для расчета доверительных интервалов для параметра.
Виды бустрап оценки доверительных интервалов
Есть несколько методов для построения доверительных интервалов методом бустреппинга:
По процентилям
Bias-Corrected бустрап
Коррекция смещением бустрапинга — корректирует отклонения в распределении загрузки.
Ускоренный бутстрап
Ускорений бустрап (BCa) — бустрап после смещения и исправления по Эфрону (1987 г.) [6] регулирует как смещение и перекос в распределении бустрапа. Такой подход является точным в самых различных условиях, имеет разумные требования вычислений, а также производит достаточно узкие интервалы.
Бутстреп, малые выборки, применение в анализе данных
Основная идея
Метод бутстрепа предложен Б. Эфроном как развитие метода складного ножа в 1979 году.
Опишем основную идею бутстрепа.
Цель анализа данных – получить максимально точные выборочные оценки и распространить результаты на всю популяцию.
Технический термин, которым обозначаются численные данные, построенные по выборке, это выборочная статистика.
Основные описательные статистики это выборочные среднее, медиана, стандартное отклонение и т.д.
Итоговая статистика, например, выборочное среднее, медиана, корреляция будут меняться от выборки к выборке.
Исследователю требуется знать размер этих отклонений в зависимости от популяции. На основании этого рассчитывается предел погрешности.
Исходная картина всех возможных значений выборочной статистики в форме распределения вероятностей называется выборочным распределением.
Ключевым является размер выборки. Что делать, если размер выборки небольшой? Один из разумных подходов состоит в том, чтобы случайным образом извлекать данные из имеющейся выборки.
Идея бутстрепа в том, чтобы использовать результаты вычислений по выборкам как “фиктивную популяцию” с целью определить выборочное распределение статистики. Фактически, при этом анализируется большое число “фантомных” выборок, называемых бутстреп-выборками.
Обычно случайным образом генерируется несколько тысяч выборок, из этого набора можно найти бутстреп-распределение интересующей нас статистики.
Итак, пусть имеем выборку выберем на первом шаге случайным образом один из элементов выборки, возвратим этот элемент в выборку, вновь случайным образом выберем элемент и тд.
Повторим описанную процедуру случайного выбора n раз.
В бутстрепе проводится случайный выбор с возвращением, выбранные элементы исходной выборки возвращается в выборку и далее могут быть снова выбраны.
Всего имеем n элементов исходной выборки, вероятность получить выборку с номерами ( N 1 … Nn ), где Ni меняется от 0 до n описывается полиномиальным распределением.
Таких выборок генерируется несколько тысяч, что вполне достижимо для современных компьютеров.
Для каждой выборки строится оценка интересующей величины, далее оценки усредняются.
Так как выборок много, можно построить эмпирическую функцию распределения оценок, далее рассчитать квантили, вычислить доверительный интервал.
Ясно, что бутстреп метод является модификацией метода Монте-Карло.
Если выборки генерируются без возвращения элементов, то получается известный метод складного ножа.
Вопрос: зачем это делать и когда метод разумно использовать в реальном анализе данных?
В бутстрепе мы не получаем новой информации, но разумно используем имеющиеся данные, исходя из поставленной задачи.
Например, бутстреп можно использовать для малых выборок, для оценок медианы, корреляций, построения доверительных интервалов и в других ситуациях.
В исходной работе Эфрона рассматривались оценки парной корреляции для размера выборки n = 15.
Генерируется B = 1000 бутстреп выборок ( bootstrap replication ).
На основе полученных коэффициентов ro 1 … ro В строится общая оценка коэффициента корреляции и оценка стандартного отклонения.
Стандартная ошибка выборочного коэффициента корреляции, вычисленная с помощью нормального приближения, имеет вид:
где коэффициент корреляции равен 0.776, размер исходной выборки n = 15.
Теоретический бэкграунд
Пусть — целевой параметр исследования, например, средний доход в выбранном обществе.
Для большинства выборочных статистик при большом значении (>30) выборочное распределение представляется из себя нормальную кривую с центром
и стандартным отклонением
, где положительный параметр
зависит от популяции и вида статистики
Этот классический результат известен как центральная предельная теорема.
Зачастую при оценке требуемого стандартного отклонения по данным возникают серьезные технические трудности.
Например, если медиана или выборочная корреляция.
Метод бутстрепа позволяет обойти эти трудности.
Идея простая: обозначим через произвольную величину, представляющую собой такую же статистику, вычисленную по бутстреп-выборке, которая получена из исходной выборки
Что можно сказать про выборочное распределение , если “исходная” выборка
фиксирована?
В пределе выборочное распределение
также является колоколообразным с параметрами
и
Таким образом, бутстреп-распределение хорошо аппроксимирует выборочное распределение
Заметим, что когда мы переходим от одной выборки к другой, в выражении меняется только
, так как
вычислена по
По сути это является бутстреп версией центральной предельной теоремы.
Также было установлено, если предельное выборочное распределение статистической функции не включает в себя неизвестные по популяции, бутстреп-распределение позволяет получить более хорошее приближение к выборочному распределению, чем центральная предельная теорема.
В частности, когда статистическая функция имеет вид где через
обозначена истинная, или выборочная оценка стандартной ошибки
при этом предельное выборочное распределение обычно стандартное нормальное.
Этот эффект получил название коррекции второго порядка с помощью бутстреппинга.
Пусть т.е. среднее по популяции, и
т.е. среднее по выборке;
— стандартное отклонение в популяции,
— выборочное стандартное отклонение, вычисленное по исходным данным, а
— вычисленное по бутстреп-выборке.
Тогда выборочное распределение величины где
, будет аппроксимироваться бутстреп-распределением
, где
— среднее по бутстреп-выборке,
.
Аналогично, выборочное распределение будет аппроксимироваться бутстреп-распределением
, где
.
Первые результаты по коррекции второго порядка были опубликованы Бабу и Сингхом в 1981-83 годах.
Приложения бутстрепа
Аппроксимация стандартной ошибки выборочной оценки
Предположим, что для популяции известен параметр
Пусть — оценка
сделанная на основе случайной выборки размера
т.е.
это функция от
Так как выборка меняется на множестве всех возможных выборок, то для того, чтобы оценить стандартную ошибку
используется следующий подход:
Вычислим используя ту же формулу, что использовалась для
но на этот раз на основе
различных бутстреп-выборок размера
каждая. Грубо говоря, можно принять
если только
не сильно велико. В этом случае можно сократить до nlnn. Тогда можно определить
исходя, собственно, из сути бутстреп-метода: популяция (выборка) заменяется эмпирической популяцией(выборкой).
Байесовская коррекция с помощью бутстреп метода
Среднее выборочного распределения часто зависит от
обычно как
для больших
То есть,
Байесовская аппроксимация:
где
— это бутстреп-копии
. Тогда скорректированное значение будет
—
Стоит отметить, что предыдущий метод ресэмплинга(замен выборки), называемый методом складного ножа, является более популярным.
Доверительные интервалы
Доверительные интервалы (ДИ) для заданного параметра это основанные на выборке диапазоны
.
Этот диапазон обладает тем свойством, что значение с очень высокой (заранее установленной) вероятностью принадлежит ему. Это называется уровнем значимости. Конечно, эта вероятность должна относиться к любой выборке из возможных, т.к. каждая выборка привносит свой вклад в определение доверительного интервала. Два наиболее часто используемых уровня значимости это 95% и 99%. Здесь мы ограничимся значением 95%.
Традиционно ДИ зависят от выборочного распределения величины точнее в пределе
. Есть два основных вида доверительных интервалов, которые могут быть построены с помощью бутстрепа.
Метод процентилей
Этот метод уже упоминался во введении, он очень популярен благодаря своей простоте и естественности. Предположим, что у нас есть 1000 бутстреп копий обозначим их через
Тогда в доверительный интервал попадут значения из диапазона
Возвращаясь к теоретическому обоснованию метода, стоит отметить, что в нем требуется симметрия выборочного распределения
вокруг
Причина этого заключается в том, что в методе аппроксимируется выборочное распределение
с помощью бутстреп-распределения
, хотя по логике получается, что оно должно аппроксимироваться значением
то есть противоположным по знаку.
Центрированный метод бутстреп-процентилей
Предположим, что выборочное распределение аппроксимируется с помощью бутстреп распределения
то есть как изначально и предполагалось в бутстреппинге. Обозначим 100-й процентиль
(в бутстреп-повторениях) через
Тогда предположение, что значение
лежит в диапазоне от
до
будет верным с вероятностью 95%. Это же выражение легко преобразуется в аналогичное для диапазона от
до
Этот интервал и называется центрированным доверительным интервалом по бутстреп-процентилям (при уровне значимости 95%).
Бутстреп-t критерий
Как уже было отмечено, в бутстрепе используется функция вида где
есть выборочная оценка стандартной ошибки
Это дает дополнительную точность.
В качестве основного примера возьмем стандартную t-статистику (отсюда название метода): то есть частный случай, когда
(популяционное среднее),
(выборочное среднее) и
— выборочное стандартное отклонение. Бутстреп аналогом такой функции является
где
вычисляется также, как и
только по бутстреп-выборке.
Обозначим 100-й бутстреп-процентиль через
и будем полагать, что значение
лежит в интервале
Используя равенство можно переписать предыдущее утверждение, т.е.
лежит в интервале
Этот промежуток называется бутстреп t-доверительным интервалом для при уровне 95%.
В литературе он используется для достижения большей точности, чем предыдущий подход.
Пример реальных данных
Возьмем для первого примера данные из работы Холландера и Вольфе 1999 года, стр. 63, которые представляют собой эффект влияния света на скорость вылупления цыплят.
Стандартный бокс-график предполагает отсутствие нормальности по данным популяции. Мы провели бутстреп анализ медианы и среднего.
Отдельно стоит отметить отсутствие симметрии на бутстреп t-гистограмме, которая отличается от стандартной предельной кривой. 95%-е доверительные интервалы для медианы и среднего (вычисленные с использованием бутстреп метода процентилей), грубо говоря, покрывают диапазон
Этот диапазон представляет общую разницу (нарастание) в результатах скорости вылупления цыплят в зависимости от подсветки.
Двумерные данные состоят их пар
и пары можно произвольно выбирать во время бутстреп ресэмплинга. Например, сначала взять
затем
и т.д.
На рисунке график ящики-усы показывает отсутствие нормальности для основных популяций. Гистограммы корреляций, вычисленные на основе бутстреп двумерных данных, являются асимметричными (сдвинутыми влево).
По этой причине, центрированный метод бутстреп процентилей является в данном случае более подходящим.
В результате анализа выяснилось, что измерения скоррелированы для как минимум 78% популяции.
Данные для примера 1:
Данные для примера 2:
2.5 4.0 4.1 6.2 7.1 7.0 8.3 9.2 9.3 12.0 12.2 12.6 14.2 14.4 15.1 15.2 16.3 17.1 17.9 17.9
8.0 6.2 9.2 6.4 8.6 12.2 7.2 12.0 14.9 12.1 15.3 14.8 14.3 16.3 17.9 19.5 17.5 14.3 18.3 16.2
В литературе часто предлагаются различные схемы для бутстреппинга, которые могли бы давать достоверные результаты в различных статистических ситуациях.
Парный метод остается корректным (в смысле результатов при ) даже если дисперсии ошибок в моделях не равны. Второй метод в этом случае некорректен. Этот недостаток компенсируется тем, что такая схема дает дополнительную точность в оценке стандартной ошибки.
Гораздо сложнее применять бутстреппинг для данных временных рядов.
Анализ временных рядов, однако, является одной из ключевых областей в эконометрике. Здесь можно выделить две основные трудности: во-первых, данные по временным рядам обладают свойством быть последовательно зависимыми. То есть, зависит от
,
и т.д.
Во-вторых, статистическая популяция со временем меняется, то есть появляется нестационарность.
Для этого разработаны методы, которые переносят зависимость в исходных данных на бутстреп-выборки, в частности, блоковая схема.
Вместо бутстреп выборки сразу строится блок данных, сохраняющий в себе зависимости из исходной выборки.
В области приложения бутстреппинга к разделам эконометрики в настоящий момент проводится довольно много исследований, в целом метод активно развивается.