Процедура bootstrap включает выбор случайных выборок с заменой из набора данных и одинаковый анализ каждой выборки. Выборка с заменой означает, что каждое наблюдение выбирается отдельно случайным образом от исходного набора данных. Таким образом, конкретная точка данных из исходного набора данных может появиться несколько раз в заданной выборке загрузочного ремешка. Количество элементов в каждой выборке начальной загрузки равняется количеству элементов в исходном наборе данных. Область значений получаемых выборочных оценок позволяет вам установить неопределенность количества, которое вы оцениваете.
Этот пример из Эфрона и Тибширани сравнивает счета за прием в юридическую школу (LSAT) и последующие средние точки по классам юридической школы (GPA) для выборки из 15 юридических школ.
load lawdata plot(lsat,gpa,'+') lsline
Линия наименьших методов наименьших квадратов указывает, что более высокие счета LSAT идут с GPA высшей школы права. Но насколько достоверен этот вывод? График обеспечивает некоторую интуицию, но ничего количественного.
Можно вычислить коэффициент корреляции переменных с помощью |corr'function.
rhohat = corr(lsat,gpa)
rhohat = 0.7764
Теперь у вас есть число, описывающее положительную связь между LSAT и GPA; Хотя это может показаться большим, вы все еще не знаете, является ли это статистически значимым.
Использование bootstrp
функцию можно повторно отобразить в lsat
и gpa
векторы столько раз, сколько вам нравится, и учитывают изменение в полученных коэффициентах корреляции.
rng default % For reproducibility rhos1000 = bootstrp(1000,'corr',lsat,gpa);
Это повторяет lsat
и gpa
векторы 1000 раз и вычисляет corr
функция на каждой выборке. Затем можно построить график результата на гистограмме.
histogram(rhos1000,30,'FaceColor',[.8 .8 1])
Почти все оценки лежат на интервале [0,4 1,0].
Часто желательно создать доверие интервал для оценки параметра в статистических выводах. Использование bootci
функция, можно использовать bootstrapping, чтобы получить доверие интервал для lsat
и gpa
данные.
ci = bootci(5000,@corr,lsat,gpa)
ci = 2×1
0.3319
0.9427
Поэтому 95% доверительный интервал для коэффициента корреляции между LSAT и GPA составляет [0,33 0,94]. Это является убедительным количественным доказательством того, что LSAT и последующий GPA положительно коррелируют. Более того, эти доказательства не требуют каких-либо сильных предположений о распределении вероятностей коэффициента корреляции.
Хотя и bootci
функция вычисляет интервал Bias Corrected и accelerated (BCa) как тип по умолчанию, она также способна вычислять различные другие типы доверительных интервалов bootstrap, такие как исследуемый доверительный интервал bootstrap.
Подобным загрузочному ремешку является jackknife, который использует повторную дискретизацию для оценки смещения статистики выборки. Иногда он также используется для оценки стандартной ошибки выборки статистики. Джеккнайф реализован функцией Statistics and Machine Learning Toolbox™ jackknife
.
Jackknife повторяется систематически, а не наугад, как это делает bootstrap. Для выборки с n
точки, jackknife вычисляет выборку статистики по n
отдельные выборки размера n
-1. Каждая выборка является исходными данными с одним опущенным наблюдением.
В примере bootstrap вы измерили неопределенность в оценке коэффициента корреляции. Можно использовать jackknife, чтобы оценить смещение, которое является тенденцией корреляции выборки переоценивать или недооценивать истинную, неизвестную корреляцию. Сначала вычислите корреляцию выборки на данных.
load lawdata
rhohat = corr(lsat,gpa)
rhohat = 0.7764
Затем вычислите корреляции для выборок джекнайфа и вычислите их среднее значение.
rng default; % For reproducibility jackrho = jackknife(@corr,lsat,gpa); meanrho = mean(jackrho)
meanrho = 0.7759
Теперь вычислите оценку смещения.
n = length(lsat); biasrho = (n-1) * (meanrho-rhohat)
biasrho = -0.0065
Вероятно, корреляция выборки недооценивает истинную корреляцию примерно на эту величину.
Для получения информации о параллельных вычислениях статистики повторной дискретизации смотрите Parallel Computing Toolbox™.