Доверительные интервалы LOESS зависят от количества баллов

Давайте построим линейный тренд с некоторым «шумом» следующим образом:

X <- seq(0,20,1); Y <- X/4 + sin(X); plot(X,Y)

Теперь я сглаживаю набор данных с помощью loess и строю «95% доверительные интервалы» с qt и стандартной ошибкой лесса:

X.pred <- seq(0, 20, length.out = 1000)   # To have smooth lines
Fit    <- predict(loess(Y ~ X, span = 0.75), newdata = X.pred, se = TRUE)
lines(X.pred, Fit$fit)
lines(X.pred, Fit$fit + qt(0.975, Fit$df) * Fit$se.fit, lty = 3)
lines(X.pred, Fit$fit - qt(0.975, Fit$df) * Fit$se.fit, lty = 3)

Результат очень интуитивно понятен, так как нижележащий тренд четко показан, а «полоса» покрывает почти все точки (как и ожидалось в 95% доверительном интервале).

Проблема возникает, когда нам нужно подогнать много точек. Давайте увеличим количество баллов в 10 раз:

X <- seq(0, 20, 0.1); Y <- X/4 + sin(X); plot(X, Y)

Когда я запускаю тот же сценарий, что и выше, полоса становится очень узкой и явно не покрывает 95% точек. Как я могу получить «интуитивно понятные» loess 95% диапазоны, независимо от количества подобранных точек?


person JASC    schedule 30.03.2018    source источник


Ответы (1)


Это неправильное понимание поведения групп доверия; для любой разумной формы оценки доверительные интервалы будут сокращаться до нуля по мере увеличения размера выборки (даже если остаточная дисперсия останется прежней). Похоже, вы ищете интервалы прогноза. Вы можете получить их приблизительно, добавив остаточную дисперсию (например, resid.sd <- loess(Y ~ X, span = 0.75)$s; resid.var <- resid.sd^2) к квадрату стандартной ошибки подгонки и используя квадратный корень из суммы в качестве стандартного отклонения в qnorm(). (Нелегко объединить t-распределенное распределение ошибки параметра и гауссово распределение остаточной ошибки ...)

person Ben Bolker    schedule 30.03.2018