18 votos

La comprensión de la banda de confianza a partir de una regresión polinomial

Estoy tratando de entender el resultado que veo en mi siguiente gráfico. Por lo general, tienden a usar Excel y obtener un lineales-regresión de la línea, pero en el siguiente caso estoy usando R y me sale un polinomio de regresión con el comando:

ggplot(visual1, aes(ISSUE_DATE,COUNTED)) + geom_point() + geom_smooth()

Así que mis preguntas se reducen a esto:

  1. ¿Cuál es el área gris (flecha #1) todo el azul de la línea de regresión? Es esta la desviación estándar de la regresión polinomial?

  2. Puedo decir que el todo es fuera de la zona gris (flecha #2) es un "outlier" y todo lo que caiga dentro de la zona gris (flecha #3) está dentro de la desviación estándar?

enter image description here

14voto

Sean Hanley Puntos 2428

La banda gris es una banda de confianza para la recta de regresión. No estoy lo suficientemente familiarizado con ggplot2 segura de saber si es un 1 SE banda de confianza o un 95% de confianza de la banda, pero creo que es la antigua (Edit: evidentemente es un IC del 95%). Una banda de confianza proporciona una representación de la incertidumbre acerca de su línea de regresión. En un sentido, se puede pensar que la verdadera línea de regresión es tan alta como en la parte superior de esa banda tan bajos como los de la parte inferior, o la mueve de manera diferente dentro de la banda. (Tenga en cuenta que esta explicación está diseñado para ser intuitivo, y no es técnicamente correcto, pero totalmente correcta explicación es difícil para la mayoría de la gente a seguir.)

Usted debe utilizar la banda de confianza para ayudarle a entender y pensar sobre la línea de regresión. Usted no debe usar para pensar acerca de los datos en bruto de los puntos. Recuerde que la línea de regresión representa la media de $Y$ en cada punto en $X$ (si usted necesita para comprender esto mejor, puede ayudar a leer mi respuesta a esta pregunta: ¿Qué es la intuición detrás condicional de distribución Gausiana?). Por otro lado, que sin duda no esperar que todos los datos observados punto de ser igual a la media condicional. En otras palabras, usted no debe usar la banda de confianza para evaluar si un punto de datos es un valor atípico.


(Edit: esta nota es periférica a la pregunta principal, pero se trata de aclarar un punto para el OP.)

Un polinomio de regresión no es una regresión no lineal, aunque lo que se obtiene no se ve como una línea recta. El término "lineal" tiene un significado muy específico en un contexto matemático, específicamente, que los parámetros se estiman--las betas, son todos los coeficientes. Un polinomio de regresión sólo significa que su covariables son $X$, $X^2$, $X^3$, etc., es decir, que no tiene una relación lineal para cada uno de los otros, pero su betas son todavía los coeficientes, lo que es todavía un modelo lineal. Si su betas eran, digamos, exponentes, entonces usted tendría un modelo no lineal.

En suma, si es o no una línea de mira de frente no tiene nada que ver con si o no es un modelo lineal. Cuando se ajuste a un polinomio de modelo (con $X$$X^2$), el modelo no "saben" que, por ejemplo, $X_2$ es en realidad sólo el cuadrado de $X_1$. 'Piensa' estos son sólo dos variables (aunque se puede reconocer que hay algunos multicolinealidad). Por lo tanto, en verdad es apropiado (recta / plana) de regresión plano en el espacio tridimensional en lugar de una (curva) de la regresión de la línea en un espacio de dos dimensiones. Esto no es útil para nosotros, para pensar, y de hecho, muy difícil de ver desde $X^2$ es una perfecta función de $X$. Como resultado, no te molestes en pensar de esta manera y nuestras parcelas son en realidad dos dimensiones proyecciones en el $(X,\ Y)$ plano. Sin embargo, en el espacio correspondiente, la línea es en realidad "recto" en algún sentido.

Desde una perspectiva matemática, un modelo es lineal si los parámetros que están tratando de estimar son los coeficientes. Para aclarar aún más, considere la posibilidad de la comparación entre el estándar (OLS) modelo de regresión lineal, y un simple modelo de regresión logística se presenta en dos formas diferentes:
$$ Y = \beta_0 + \beta_1X + \varepsilon $$ $$ \ln\left(\frac{\pi(Y)}{1 - \pi(Y)}\right) = \beta_0 + \beta_1X $$ $$ \pi(Y) = \frac{\exp(\beta_0 + \beta_1X)}{1 + \exp(\beta_0 + \beta_1X)} $$ El modelo superior es de regresión OLS, y las dos últimas son de regresión logística, aunque se presentan en diferentes formas. En los tres casos, cuando el ajuste del modelo, la estimación de la $\beta$s. Los dos primeros modelos son lineales, ya que todas las $\beta$s son los coeficientes, pero la parte inferior del modelo es no lineal (en este formulario) debido a que el $\beta$s son los exponentes. (Esto puede parecer muy extraño, pero la regresión logística es una instancia de la generalizada modelo lineal, ya que puede ser reescrito como un modelo lineal. Para obtener más información acerca de eso, puede ayudar a leer mi respuesta aquí: Diferencia entre los modelos logit y probit.)

13voto

Judioo Puntos 625

Para añadir a la ya existente de las respuestas, la banda representa un intervalo de confianza de la media, pero por tu pregunta que claramente están buscando un intervalo de predicción. Intervalos de predicción son de un rango que si usted dibujó un nuevo punto que punto sería, en teoría, contenida en el rango de X% del tiempo (donde se puede establecer el nivel de X).

library(ggplot2)
set.seed(5)
x <- rnorm(100)
y <- 0.5*x + rt(100,1)
MyD <- data.frame(cbind(x,y))

Se puede generar el mismo tipo de argumento que has mostrado en tu pregunta inicial, con un intervalo de confianza alrededor de la media de la atenuación del loess línea de regresión (el valor predeterminado es de un 95% de intervalo de confianza).

ConfiMean <- ggplot(data = MyD, aes(x,y)) + geom_point() + geom_smooth()
ConfiMean

enter image description here

Para un rápido y sucio ejemplo de intervalos de predicción, aquí puedo generar un intervalo de predicción mediante regresión lineal con splines de suavizado (por lo que no es necesariamente una línea recta). Con los datos de la muestra lo hace bastante bien, para los 100 puntos, sólo 4 están fuera de la gama (y la que se especifica un 90% de intervalo en la función de predicción).

#Now getting prediction intervals from lm using smoothing splines
library(splines)
MyMod <- lm(y ~ ns(x,4), MyD)
MyPreds <- data.frame(predict(MyMod, interval="predict", level = 0.90))
PredInt <- ggplot(data = MyD, aes(x,y)) + geom_point() + 
           geom_ribbon(data=MyPreds, aes(x=fit,ymin=lwr, ymax=upr), alpha=0.5)
PredInt

enter image description here

Ahora algunas notas más. Estoy de acuerdo con Ladislav que usted debe considerar la serie de tiempo de los métodos de predicción ya que tiene una serie regular ya que en algún momento de 2007 y está claro a partir de su parcela si miras hay estacionalidad (la conexión de los puntos que se haría mucho más clara). Para esto sugiero que lo consultes el pronóstico.stl en función de la previsión del paquete donde se puede elegir una temporada ventana y se proporciona una sólida descomposición de la estacionalidad y la tendencia de uso de Loess. Menciono métodos robustos debido a que sus datos tienen un par de notables picos.

En general, para no datos de series de tiempo, me volvería a considerar otros métodos robustos si usted tiene datos con ocasionales valores atípicos. No sé cómo generar intervalos de predicción utilizando Loess directamente, pero puede considerar la posibilidad de regresión cuantil (dependiendo de cómo extremos de los intervalos de predicción ser necesario). De lo contrario, si solo quieren encajar a ser potencialmente no lineal puede considerar la posibilidad de splines para permitir la función de variar a lo largo de x.

4voto

SiegeX Puntos 355

Así, la línea azul es un suave local de regresión. Usted puede controlar el wiggliness de la línea por la span parámetro (de 0 a 1). Pero tu ejemplo es un "series de tiempo" para tratar de buscar algunos más adecuada de los métodos de análisis que sólo encaja en una curva suave (que debe servir sólo para revelar las posibles tendencia).

De acuerdo a la documentación a ggplot2(y el libro en el comentario de abajo): stat_smooth es un intervalo de confianza de la lisa se muestra en gris. Si desea activar el intervalo de confianza de descuento, utilice el se = FALSE.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X