Изучение метода начальной загрузки, мотивации и того, как это работает

Bootstrap - это мощный компьютерный метод статистического вывода, не полагающийся на слишком много предположений. Впервые я применил метод начальной загрузки в проекте A / B-тестирования. В то время я использовал мощную магию для формирования выборочного распределения только из одного образца данных. Для моих статистических выводов формулы не нужны. Мало того, что на самом деле он широко применяется в других статистических выводах, таких как доверительный интервал, регрессионная модель, даже в области машинного обучения. Это побудило меня пройти некоторые исследования бутстрапа, чтобы дополнить знания о статистическом выводе более практическими занятиями, помимо моей теории математической статистики.

Эта статья в основном посвящена представлению основных концепций Bootstrap, а не его приложения. Но некоторые коды внедрения будут использоваться в качестве иллюстрации концепции. Мы сделаем введение в метод передискретизации Bootstrap, затем проиллюстрируем мотивацию Bootstrap, когда он был представлен Брэдли Эфроном (1979), и проиллюстрируем общую идею о бутстрапе.

Связанные фундаментальные знания

Идеи, лежащие в основе бутстрапа, на самом деле содержат так много статистических тем, которые необходимо учитывать. Однако это хороший шанс повторить некоторые концепции статистического вывода! Соответствующая статистическая концепция охватывает:

  • Основы исчисления и понятие функции
  • Среднее, дисперсия и стандартное отклонение
  • Функция распределения (CDF) и функция плотности вероятности (PDF)
  • Выборочное распределение
  • Центральная предельная теория, закон больших чисел и сходимость по вероятности
  • Статистическая функциональная, эмпирическая функция распределения и принцип подключаемого модуля

Приведенные выше базовые знания помогут получить базовые идеи, лежащие в основе начальной загрузки. Некоторые идеи могут охватывать предварительную статистику, но я буду использовать простой способ и не очень формальные математические выражения, чтобы проиллюстрировать основную идею настолько простой, насколько я могу. Ссылки в конце статьи будут предоставлены, если вы хотите узнать больше об этих концепциях.

Метод выборки начальной загрузки

Основная идея начальной загрузки - сделать вывод о оценке (например, выборочном среднем) для параметра генеральной совокупности θ (например, генерального среднего) на выборочных данных. Это метод повторной выборки путем независимой выборки с заменой из существующих выборочных данных с тем же размером выборки n и выполнения логического вывода среди этих повторно выбранных данных.

Как правило, начальная загрузка включает следующие шаги:

  1. Выборка из совокупности с размером выборки n.
  2. Нарисуйте образец из исходных данных образца с заменой размером n и повторите B раз, каждый повторно выбранный образец называется Bootstrap Sample, и всего будет B Bootstrap Samples.
  3. Оцените статистику θ для каждого примера начальной загрузки, и будет всего B оценок θ.
  4. Постройте выборочное распределение с помощью этих статистических данных B Bootstrap и используйте его для дальнейших статистических выводов, например:
  • Оценка стандартной ошибки статистики для θ.
  • Получение доверительного интервала для θ.

Мы видим, что генерируем новые точки данных путем повторной выборки из существующей выборки и делаем вывод только на основе этих новых точек данных.

Как и почему работает бутстрап?

В этой статье я разделю этот большой вопрос на три части:

  1. Какова первоначальная мотивация, что Эфрон ввел бутстрап?
  2. Зачем использовать технику моделирования? Другими словами, как я могу найти оценочную дисперсию статистики с помощью повторной выборки?
  3. Какова основная идея, которую нам нужно взять образец из исходного образца с заменой?

I. Первоначальная мотивация - стандартная ошибка оценщика

Основная идея метода начальной загрузки заключается в том, чтобы делать определенные виды статистических выводов с помощью современных компьютерных мощностей. Когда Эфрон представил этот метод, он был особенно мотивирован оценкой точности оценки в области статистических выводов. Обычно расчетная стандартная ошибка - это первый шаг к критическому осмыслению статистических оценок точности.

Теперь, чтобы проиллюстрировать, как работает бутстрап и как важную роль играет стандартная ошибка оценщика, давайте начнем с простого случая.

Сценарий Дело

Представьте, что вы хотите подсчитать, сколько раз в день учащиеся берут свои смартфоны в вашу лабораторию вместе с 100 учащимися. Сложно подсчитать количество приемов по всей лаборатории, как при переписи населения. Вместо этого вы проводите онлайн-опрос, в котором также есть приложение для подсчета самовывоза. В течение следующих нескольких дней вы получите ответы 30 студентов с указанием их количества отправлений за день. Вы подсчитали среднее этих 30 срабатываний и получили оценку срабатываний в 228,06 раз.

В области статистики описанный выше процесс называется точечной оценкой. Мы хотели бы знать истинное количество датчиков во всей лаборатории. У нас нет данных переписи, мы можем просто оценить параметр населения с помощью оценки на основе наблюдаемой выборки, а затем получить оценку в качестве оценки среднего использования смартфона в лаборатории.

  • Оценщик / статистика: правило расчета оценки . В данном случае это примерное среднее, всегда обозначаемое как .
  • Параметр населения: числовая сводка о населении. В данном случае это среднее время взятия трубок в день в нашей лаборатории, всегда обозначаемое как μ.

Один из ключевых вопросов: Насколько точен этот расчетный результат?

Из-за изменчивости выборки практически никогда не бывает X̄ = μ . Следовательно, , помимо сообщения значения точечной оценки необходимо указать некоторые сведения о точности. Общей мерой точности является стандартная ошибка оценки.

Стандартная ошибка

Стандартная ошибка оценщика - это стандартное отклонение. Он сообщает нам, насколько ваша выборочная оценка отклоняется от фактического параметра. Если сама стандартная ошибка включает неизвестные параметры, мы использовали оценочную стандартную ошибку , заменяя неизвестные параметры оценкой параметров.

Возьмем пример. В нашем случае наша оценка - это выборочное среднее, а для выборочного среднего (и почти единственного!) У нас есть простая формула, позволяющая легко получить стандартную ошибку.

Однако стандартное отклонение генеральной совокупности σ всегда неизвестно в реальном мире, поэтому наиболее распространенным измерением является расчетная стандартная ошибка. , которые используют стандартное отклонение выборки S в качестве оценочного стандартного отклонения генеральной совокупности:

В нашем случае у нас есть выборка с 30, и выборочное среднее значение составляет 228,06, а стандартное отклонение выборки составляет 166,97, поэтому наша оценочная стандартная ошибка для нашего выборочного среднего составляет 166,97 / √30 = 30,48.

Стандартная ошибка статистического вывода

Теперь у нас есть наша расчетная стандартная ошибка. Как можно использовать стандартную ошибку при выводе статистики? Давайте проиллюстрируем это на простом примере.

Грубо говоря, если оценщик имеет нормальное распределение или приблизительно нормальное распределение, то мы ожидаем, что наша оценка будет менее чем на одну стандартную ошибку от ее ожидания, равного 68. % времени и менее двух стандартных ошибок примерно в 95% случаев.

В нашем случае напомним, что собранная нами выборка представляет собой 30 выборок ответов, что достаточно велико для большого пальца, Центральная предельная теорема говорит нам, что выборочное распределение X равно близко к нормальному распределению. Комбинируя предполагаемую стандартную ошибку, мы можем получить:

Мы можем быть достаточно уверены в том, что истинное значение μ, среднее время в день, когда студенты берут свой смартфон в нашу лабораторию, находится в пределах примерно двух стандартных ошибок X̄, что составляет (228,06 −2 × 30,48, 228,06 + 2 × 30,48) = (167,1, 289,02).

Идеал и реальность в статистическом мире

Мы сделали статистический вывод. Однако то, как этот вывод прошел успешно, зависит от некоторых строгих предположений.

Вспомним, какое предположение или классическую теорему мы могли использовать до сих пор:

  • Стандартная ошибка среднего значения нашей выборки может быть легко оценена. Мы использовали стандартное отклонение выборки в качестве оценки и простую формулу для получения оцененной стандартной ошибки.
  • Мы предполагаем, что знаем или можем оценить совокупность оценщика. В нашем случае это приближенное нормальное распределение.

Однако в нашем реальном мире иногда бывает трудно встретить предположения или теоремы, подобные приведенным выше:

  • Трудно узнать информацию о населении или его распределении.
  • Стандартную ошибку оценки трудно оценить в целом. В большинстве случаев не существует точной формулы, такой как стандартная ошибка выборочного среднего. Если сейчас мы хотим сделать вывод для медианы срабатываний смартфонов, какова стандартная ошибка выборки медианы?

Вот почему для решения подобных проблем используется начальная загрузка. Когда эти предположения нарушаются или когда не существует формулы для оценки стандартных ошибок, бутстрап является мощным выбором.

II. Пояснения к Bootstrap

Чтобы проиллюстрировать основные концепции, в следующем объяснении будут развиваться некоторые математические определения и обозначения, которые являются своего рода неформальными, чтобы обеспечить больше интуиции и понимания.

1. Первоначальный сценарий

Предположим, мы хотим оценить стандартную ошибку нашей статистики, чтобы сделать вывод о параметре совокупности, например, для построения соответствующего доверительного интервала (точно так же, как мы делали раньше!). А также:

  • Мы ничего не знаем о населении.
  • Не существует точной формулы для оценки стандартной ошибки статистики .

Пусть X1, X2,…, Xn будет случайной выборкой из генеральной совокупности P с функцией распределения F . И пусть M = g (X1, X2,…, Xn) будет нашей статистикой для интересующего параметра, означает, что статистика является функцией выборочных данных X1, X2,…, Xn. Мы хотим знать дисперсию M , обозначается как Var (M).

  • Во-первых, поскольку мы ничего не знаем о численности населения, мы не можем определить значение Var (M) , для которого требуется известный параметр совокупности ,, поэтому нам нужно оценить Var (M) с оценкой стандартной ошибки , обозначается как EST_Var (M). (Помните расчетную стандартную ошибку выборочного среднего?)
  • Во-вторых, в реальном мире у нас всегда нет простой формулы для вычисления EST_Var (M) , кроме выборочного среднего.

Это приводит нас к необходимости приблизить EST_Var (M) . Как? Прежде чем ответить на этот вопрос, давайте представим распространенный практический способ - моделирование, предположим, что мы знаем P.

2. Моделирование

Поговорим об идее моделирования. Это полезно для получения информации о распределении выборки статистики с помощью компьютеров. Но у него есть важное предположение - предположим, что мы знаем популяцию P.

Теперь пусть X1, X2,…, Xn - случайная выборка из генеральной совокупности, и предположим, что M = g (X1, X2,…, Xn) - интересующая статистика , мы могли бы аппроксимировать среднее значение и дисперсию статистика M путем моделирования следующим образом:

  1. Нарисуйте случайную выборку размера n из P .
  2. Вычислите статистику для образца.
  3. Повторите B раз для процесса 1 и 2 и получите статистику B.
  4. Получите среднее и дисперсию для этой статистики B.

Почему это моделирование работает? Поскольку согласно классической теореме, Закон больших чисел:

  • Среднее значение этой статистики B сходится к истинному среднему значению статистики M при B → ∞ .

И по закону больших чисел и нескольким теоремам, связанным с сходимостью в вероятности:

  • Выборочная дисперсия этой статистики B сходится к истинной дисперсии статистики M при B → ∞ .

С помощью компьютера мы можем сделать B настолько большим, насколько захотим, чтобы приблизиться к выборочному распределению статистики M.

Ниже приведен пример кода Python для моделирования в предыдущем случае с выбором телефона. Я использую B = 100000, и моделируемое среднее значение и стандартная ошибка для выборочного среднего очень близки к теоретическим результатам в последних двух ячейках. Не стесняйтесь проверить.

3. Эмпирическая функция распределения и принцип подключаемого модуля.

Мы узнали идею симуляции. Теперь можем мы приблизительно вычислить EST_Var (M) путем моделирования? К сожалению, для моделирования, приведенного выше, нам необходимо знать информацию о популяции P . На самом деле мы ничего не знаем о P. Для решения этой проблемы был принят один из наиболее важных компонентов метода начальной загрузки:

Используя Эмпирическую функцию распределения для аппроксимации функции распределения популяции , и применяя Принцип подключаемого модуля, чтобы получить оценку для Var (M) - Плагин оценщика.

(1) Эмпирическая функция распределения

Идея Эмпирической функции распределения (EDF) заключается в построении функции распределения (CDF) из существующего набора данных. EDF обычно довольно хорошо аппроксимирует CDF, особенно для большого размера выборки. Фактически, это распространенный и полезный метод оценки CDF случайной величины на практике.

EDF - это дискретное распределение, которое придает равный вес каждой точке данных (т. Е. Присваивает вероятность 1 / n каждому из исходных n наблюдений) и формирует кумулятивную функцию распределения, которая является ступенчатой ​​функцией, которая увеличивается на 1 / n в каждой из n точек данных.

(2) Статистический функционал

Bootstrap использует EDF в качестве оценки для CDF совокупности . Однако мы знаем, что EDF - это тип кумулятивной функции распределения (CDF). Чтобы применить EDF в качестве оценки для нашей статистики M, нам нужно сделать форму M как функцию от типа CDF, даже интересующего параметра как хорошо иметь некоторую базовую линию. Для этого широко используется концепция под названием «Статистический функционал». Грубо говоря, статистический функционал - это любая функция функции распределения. Возьмем пример:

Допустим, нас интересуют параметры населения. В области статистики всегда существует ситуация, когда интересующие параметры являются функцией функции распределения, они называются статистическими функционалами. Ниже приводится список, что среднее значение E (X) является статистической функцией:

Сверху мы видим, что среднее значение совокупности E (X) также может быть выражено как форма CDF совокупности F -, это статистический функционал. Конечно, это выражение можно применить к любой функции, кроме среднего, например к дисперсии.

Статистический функционал можно рассматривать как величину, описывающую особенности совокупности. Среднее значение, дисперсия, медиана и квантили F являются характеристиками населения. Таким образом, используя статистический функционал, у нас есть более строгий способ определения концепций популяционных параметров. Следовательно, мы можем сказать, что наша статистика M может быть: M = g (F) с CDF F населения.

(3) Принцип плагина = EDF + статистический функционал

Мы сделали нашу статистику M = g (X1, X2,…, Xn) = g (F) статистической функциональной формой. Однако мы не знаем F. Таким образом, мы должны «подключить» оценщик для F, «в» нашу M = g (F), чтобы сделать это M можно вычислить.

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

  • Если наш интересующий параметр, скажем, θ, имеет вид статистической функции θ = g (F), где F является CDF населения.
  • Подключаемый модуль оценки для θ = g (F) определяется как θ_hat = g (F_hat):

  • Из приведенной выше формулы мы видим, что мы «подключаем» θ_hat и F_hat для неизвестных θ и F. F_hat здесь чисто оценивается по выборочным данным.
  • Обратите внимание, что оба θ и θ_hat определяются одной и той же функцией g (.).

Давайте возьмем средний пример, как показано ниже, мы можем видеть g (.) Для среднего значения - усреднение всех точек данных, и оно также применяется для выборочного среднего. F_hat здесь формируется по выборке как средство оценки F. Мы говорим, что среднее значение выборки представляет собой дополнительный модуль оценки среднего значения генеральной совокупности (более четкий результат будет вскоре предоставлен).

Итак, что такое F_hat? Помните, как бутстрап использовал эмпирическую функцию распределения (EDF) в качестве оценки CDF населения? Фактически, EDF также является обычным оценщиком, который широко используется в подключаемом модуле для F_hat.

Давайте посмотрим, как будет выглядеть наша оценка M = g (X1, X2,…, Xn) = g (F), если мы подключим к ней модуль EDF.

  • Пусть интересующая статистика представляет собой M = g (X1, X2,…, Xn) = g (F) из совокупности CDF F.
  • Мы не знаем F, поэтому мы создаем плагин для оценки M, M становится M_hat = g (F_hat). Перепишем M_hat следующим образом:

Мы знаем, что EDF - это дискретное распределение, которое с функцией массы вероятности PMF присваивает вероятность 1 / n каждому из n наблюдений, поэтому в соответствии с этим M_hat становится:

В соответствии с этим, для нашего среднего примера мы можем найти плагин для оценки среднего значения μ - это просто выборочное среднее:

Следовательно, мы используем принцип подключаемого модуля, чтобы оценить M = g (F), скажем, M_hat = g (F_hat). И помните, что мы хотим узнать Var (M), и мы аппроксимируем Var (M) с помощью Var (M_hat). Но в общем случае не существует точной формулы для Var (M_hat), кроме выборочного среднего! Это заставляет нас применить симуляцию.

(4) Оценка дисперсии начальной загрузки

Это почти последний шаг! Давайте освежим весь процесс концепцией Plug-in Principle.

Наша цель - оценить дисперсию нашей оценки M, которая равна Var (M). Принцип начальной загрузки заключается в следующем:

  1. Мы не знаем совокупность P с CDF, обозначенным как F, поэтому при начальной загрузке используется Эмпирическая функция распределения (EDF) в качестве оценки F.
  2. Используя наши существующие данные выборки, чтобы сформировать EDF как оценочную совокупность.
  3. Применен принцип подключаемого модуля, чтобы M = g (F) можно было оценить с помощью EDF. Следовательно, M = g (F) становится M_hat = g (F_hat) , это встроенный оценщик с EDF - F_hat.
  4. Возьмите симуляцию, чтобы приблизиться к Var (M_hat).

Напомним, что для выполнения исходной версии моделирования нам нужно получить выборку данных из совокупности, получить из нее статистику M = g (F) и повторить процедуру B раз, а затем получить дисперсию этой B-статистики для приближения истинного значения. дисперсия статистики.

Поэтому для моделирования на шаге 4 нам необходимо:

  1. Нарисуйте образец данных из EDF.
  2. Получите статистику подключаемого модуля M_hat = g (F_hat).
  3. Повторите две процедуры B раз.
  4. Получите дисперсию этой B-статистики, чтобы приблизительно оценить истинную дисперсию статистики плагина. (Это легко запутать.)

Что такое симуляция? Фактически, это процесс начальной загрузки, о котором мы упоминали в начале этой статьи!

Здесь два вопроса (обещаю, это последние два!):

  1. Как выглядит рисование из EDF на шаге 1?
  2. Как работает эта симуляция?

Как выглядит рисунок из EDF?

Мы знаем, что EDF строит CDF из существующих данных выборки X1,…, Xn, и по определению помещает массу 1 / n в каждую точку данных выборки. Следовательно, извлечение случайной выборки из EDF можно рассматривать как извлечение n наблюдений с заменой из наших существующих выборочных данных X1,…, Xn. Вот почему образец начальной загрузки выбирается с заменой, как показано ранее.

Как работает симуляция?

Дисперсия модуля оценки M_hat = g (F_hat) - это то, что моделирование начальной загрузки хочет имитировать. В начале моделирования мы проводим наблюдения с заменой имеющихся у нас выборочных данных X1,…, Xn. Обозначим эти повторно выбранные данные X1 *,…, Xn *. Теперь давайте снова сравним моделирование начальной загрузки с нашей исходной версией моделирования.

Исходный процесс моделирования для Var (M = g (F)):

Original Simulation Version- Approximate EST_Var(M|F) with known F
Let X1, X2, … , Xn be a random sample from a population P and assume M= g(X1, X2, …, Xn) is the statistic of interest, we could approximate variance of statistic M by simulation as follows:
1. Draw random sample with size n from P.
2. Compute statistic for the sample.
3. Replicate B times for process 1. and 2 and get B statistics.
4. Get the variance for these B statistics.

Моделирование начальной загрузки для Var (M_hat = g (F_hat))

Bootstrap Simulation Version- Approximate Var(M_hat|F_hat) with EDF
Now let X1, X2, … , Xn be a random sample from a population P with CDF F, and assume M= g(X1, X2, …, Xn ;F) is the statistic of interest. But we don't know F, so we:
1.Form a EDF from the existing sample data by draw observations with replacement from our existing sample data X1, …, Xn. These are denote as X1*, X2*, …, Xn*. We call this is a bootstrap sample.
2.Compute statistic M_hat= g(X1*, X2*, …, Xn* ;F_hat) for the bootstrap sample.
3. Replicate B times for steps 2 and 3, and get B statistics M_hat.
4. Get the variance for these B statistics to approximate the Var(M_hat).

Чувствовали бы вы себя знакомыми с описанными выше процессами? Фактически, это тот же процесс, что и метод бутстраповой выборки, о котором мы упоминали ранее!

III. Что работает Bootstrap?

Наконец, давайте посмотрим, как будет работать наша симуляция. В результате этого начального моделирования мы получим приближение для Var (M_hat), но нас действительно волнует, может ли Var (M_hat) приблизиться к Var (M). Итак, два вопроса:

  1. Будет ли результат начального моделирования дисперсии, S², хорошо приближаться для Var (M_hat)?
  2. Может ли Var (M_hat) приблизиться к Var (M)?

Чтобы ответить на этот вопрос, давайте воспользуемся диаграммой, чтобы проиллюстрировать ошибки моделирования обоих типов:

  1. Из оценки дисперсии начальной загрузки мы получим оценку Var (M_hat) - оценку плагина для Var (M). А закон больших чисел говорит нам, что если время моделирования B достаточно велико, оценка дисперсии начальной загрузки S² является хорошим приближением для Var (M_hat). К счастью, мы можем получить больший B, как нам нравится, с помощью компьютера. Таким образом, эта ошибка моделирования может быть небольшой.
  2. Дисперсия M_hat - это подключаемый модуль оценки отклонения M от истинного F. Является ли Var (M_hat; F_hat) хорошей оценкой для Var (M; F)? Другими словами, хорошо ли аппроксимируется плагин оценщика интересующему нас оценщику? Это ключевой момент, который нас действительно беспокоит. Фактически, тема асимптотических свойств для оценок плагинов относится к высокоуровневой математической статистике. Но давайте объясним основные вопросы и идеи.
  • Во-первых, мы знаем, что эмпирическое распределение будет хорошо сходиться к истинной функции распределения, если размер выборки большой, скажем, F_hat → F.
  • Во-вторых, если F_hat → F и соответствующая статистическая функция g (.) Является условиями гладкости, то g (F_hat) → g (F). В нашем случае статистическая функция g (.) - это Дисперсия, которая удовлетворяет требуемым условиям непрерывности. Следовательно, это объясняет, почему дисперсия начальной загрузки является хорошей оценкой истинной дисперсии оценки M.

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

Ниже приведен мой пример кода Bootstrap для случая пикапа, который вы можете проверить.

Резюме Bootstrap

Давайте резюмируем основные идеи начальной загрузки с помощью следующей диаграммы!

Пока я знаю, что с множеством статистических концепций это непросто. Но понимание основных концепций, лежащих в основе метода, может направить нас в правильном направлении при его применении. В конце концов, Bootstrap был применен на гораздо более широком уровне практических случаев, более конструктивно изучать, начиная с базовой части. Спасибо, что дочитали до сих пор, и надеюсь, что эта статья поможет! Оставляйте свои комментарии, если я ошибся :)!

Ссылка

Самая полезная книга Эфрона с более общим понятием Bootstrap и тем, как он связан со статистическим выводом.

Также полезная книга, форма EDF в метод Bootstrap

Другая книга:

Эмпирическая функция распределения и принцип подключаемого модуля

Другие материалы