Використання стандартної помилки розподілу завантажувальної програми


19

(ігноруйте R-код за потреби, оскільки моє головне питання - незалежне від мови)

Якщо я хочу подивитися на мінливість простої статистики (наприклад: середня), я знаю, що можу це зробити за допомогою теорії, наприклад:

x = rnorm(50)

# Estimate standard error from theory
summary(lm(x~1))
# same as...
sd(x) / sqrt(length(x))

або з завантажувальним приладом, наприклад:

library(boot)

# Estimate standard error from bootstrap
(x.bs = boot(x, function(x, inds) mean(x[inds]), 1000))
# which is simply the standard *deviation* of the bootstrap distribution...
sd(x.bs$t)

Однак, що мені цікаво, чи може бути корисним / дійсним (?) Звернути увагу на стандартну помилку розподілу завантажувальної програми в певних ситуаціях? Я маю справу з відносно галасливою нелінійною функцією, такою як:

# Simulate dataset
set.seed(12345)
n   = 100
x   = runif(n, 0, 20)
y   = SSasymp(x, 5, 1, -1) + rnorm(n, sd=2)
dat = data.frame(x, y)

Тут модель навіть не конвергується, використовуючи оригінальний набір даних,

> (fit = nls(y ~ SSasymp(x, Asym, R0, lrc), dat))
Error in numericDeriv(form[[3L]], names(ind), env) : 
  Missing value or an infinity produced when evaluating the model

тому статистика, що мене цікавить, натомість є більш стабілізованими оцінками цих параметрів nls - можливо, їхніми засобами для ряду реплікацій завантажувальної програми.

# Obtain mean bootstrap nls parameter estimates
fit.bs = boot(dat, function(dat, inds)
              tryCatch(coef(nls(y ~ SSasymp(x, Asym, R0, lrc), dat[inds, ])),
                       error=function(e) c(NA, NA, NA)), 100)
pars = colMeans(fit.bs$t, na.rm=T)

Ось це, справді, в кульовому парку того, що я використовував для імітації вихідних даних:

> pars
[1]  5.606190  1.859591 -1.390816

Схематична версія виглядає так:

# Plot
with(dat, plot(x, y))

newx = seq(min(x), max(x), len=100)
lines(newx, SSasymp(newx, pars[1], pars[2], pars[3]))

lines(newx, SSasymp(newx, 5, 1, -1), col='red')
legend('bottomright', c('Actual', 'Predicted'), bty='n', lty=1, col=2:1)

введіть тут опис зображення

Тепер, якщо я хочу, щоб мінливість цих оцінок стабілізованих параметрів, я думаю, що можу, припускаючи нормальність цього розподілу завантажувальної програми, просто обчислити їх стандартні помилки:

> apply(fit.bs$t, 2, function(x) sd(x, na.rm=T) / sqrt(length(na.omit(x))))
[1] 0.08369921 0.17230957 0.08386824

Це розумний підхід? Чи є кращий загальний підхід до висновку щодо таких нестабільних параметрів, як ця? (Я припускаю, що я міг би зробити тут другий шар перекомпонування, замість того, щоб останній біт покладатися на теорію, але це може зайняти багато часу залежно від моделі. Навіть все ж я не впевнений, що ці стандартні помилки будуть бути корисним для будь-чого, оскільки вони підійдуть до 0, якщо я просто збільшить кількість реплікацій завантажувальної програми.)

Велике спасибі, і, до речі, я інженер, тому, будь ласка, пробачте мене, що я тут родич.

Відповіді:


13

У цьому питанні є кілька проблем. По-перше, виникає питання про те, чи будуть завантажені середні показники розумними оцінками, навіть коли деякі окремі завантажувані оцінки не піддаються обчисленню (відсутність конвергенції, відсутність рішень). По-друге, з огляду на те, що завантажені оцінювачі є розумними, виникає питання, як отримати довірчі інтервали або, можливо, просто стандартні помилки для цих оцінок.

Ідея усереднення завантажених оцінок тісно пов’язана, якщо насправді не збігається з агрегацією завантажувальної завантажувальної машини або мішковиною, що використовується в машинному навчанні для підвищення ефективності прогнозування слабких прогнозів. Див. ESL , Розділ 8.7. У певних випадках також для оцінювання параметрів усереднення оцінок завантажувальної програми може зменшити дисперсію результуючого оцінювача порівняно з просто використанням оцінки в початковому наборі даних.--

Метою питання є, однак, створення оцінок навіть у тих випадках, коли алгоритм обчислення оцінок може виходити з ладу або періодично, коли оцінювач час від часу не визначений. Як загальний підхід існує проблема:

  • Усереднення завантажених оцінок під час сліпого викидання завантажених зразків, для яких оцінки не підлягають обчисленню, загалом дасть необ’єктивні результати.

Наскільки важка загальна проблема залежить від кількох речей. Наприклад, наскільки частота оцінки не піддається обчисленню та чи умовний розподіл вибірки, враховуючи, що оцінка не піддається обчисленню, відрізняється від умовного розподілу вибірки, враховуючи, що оцінка обчислюється. Я б не рекомендував використовувати метод.

Для другої частини питання нам потрібно трохи позначити. Якщо позначає наш вихідний набір даних, наш оцінювач (припустимо, для простоти це реально оцінюється і дозволяється приймати значення NA) таким, що є оцінкою для вихідних даних set, а позначає один зразок завантаження, тоді усереднення завантажувальної стрічки ефективно обчислює оцінювач де позначає подію, залежно від , на якій . Тобто ми обчислюємо умовне очікування оцінки на завантаженому зразкуХθ^θ^(Х)Y

θ~(Х)=Е(θ^(Y)Х,А(Х))
А(Х)Хθ^(Y)НС-обумовлюючи вихідний зразок та подію , що оцінювач піддається обчисленню для завантаженого зразка. Фактичне обчислення завантажувальної програми - це наближення на основі вибірки .ХА(Х)θ~(Х)

Пропозиція у питанні полягає у обчисленні емпіричного стандартного відхилення завантажених оцінювачів, що є оцінкою стандартного відхилення умовно на та . Бажане стандартне відхилення, стандартна помилка, - це стандартне відхилення . Ви не можете отримати останнє від першого. Я не бачу іншого очевидного і загального способу, ніж використовувати другий шар завантажувального завантаження для отримання достовірної оцінки стандартної помилки.θ^(Y)ХА(Х)θ~(Х)

Дискусія про оцінку стандартної помилки не залежить від того, як умова на впливає на зміщення обчислювача . Якщо ефект сильний, навіть при правильних оцінках стандартної помилки інтервал довіри буде вводити в оману. А(Х)θ~(Х)

Редагувати :

Дуже приємний документ Оцінка та точність після вибору моделі Efron дає загальний метод для оцінки стандартної помилки мішеного оцінювача без використання другого шару завантажувального завантаження. Документ не стосується явних оцінок, які періодично не піддаються обчисленню.


Дякую за приголомшливу відповідь. Особливо добре сприймається точка щодо упередженості . Ви можете уявити крайній випадок, коли хмара точок абсолютно рівномірна, за винятком одного набору віддалених точок, які дуже добре підходять до моделі. Переважна більшість nlsприпадків може зазнати невдач, але, з тих, що сходяться, ухил буде величезним, а прогнозовані стандартні помилки / CI неправдиво малі. nlsBootвикористовує спеціальну вимогу 50% успішних підходів, але я згоден з вами, що (не) подібність умовних розподілів однаково викликає занепокоєння.
Джон Колбі

(Я спробую дати вам бонус завтра, якщо цей сайт дозволить мені подобатися ТАК)
Джон Колбі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.