23 votos

Regresión lineal frente a no lineal

Tengo un conjunto de valores $x$ y $y$ que teóricamente están relacionados de forma exponencial:

$y = ax^b$

Una forma de obtener los coeficientes es aplicar logaritmos naturales a ambos lados y ajustar un modelo lineal:

> fit <- lm(log(y)~log(x))
> a <- exp(fit$coefficients[1])
> b <- fit$coefficients[2]

Otra forma de obtenerlo es mediante una regresión no lineal, dado un conjunto teórico de valores iniciales:

> fit <- nls(y~a*x^b, start=c(a=50, b=1.3))

Mis pruebas muestran resultados mejores y más relacionados con la teoría si aplico el segundo algoritmo. Sin embargo, me gustaría conocer el significado estadístico y las implicaciones de cada método.

¿Cuál de ellos es mejor?

29voto

AdamSane Puntos 1825

"Mejor" es una función de su modelo.

Parte de la razón de tu confusión es que sólo has escrito la mitad de tu modelo.

Cuando dices $y=ax^b$ Eso no es cierto. Su observación $y$ valores no son igual a $ax^b$ tienen un componente de error.

Por ejemplo, los dos modelos que menciona (que no son los únicos posibles, ni mucho menos) parten de supuestos totalmente distintos sobre el error.

Probablemente te refieres a algo más cercano a $E(Y|X=x) = ax^b\,$ .

Pero entonces, ¿qué decimos de la variación de $Y$ de esa expectativa en un determinado $x$ ? Es importante.

  • Cuando se ajusta el modelo de mínimos cuadrados no lineales, se está diciendo que los errores son aditivos y que la desviación típica de los errores es constante en todos los datos:

    $\: y_i \sim N(ax_i^b,\sigma^2)$

    o equivalentemente

    $\: y_i = ax_i^b + e_i$ con $\text{var}(e_i) = \sigma^2$

  • En cambio, cuando se toman los logaritmos y se ajusta un modelo lineal, se está diciendo que el error es aditivo en la escala logarítmica y (en la escala logarítmica) constante en todos los datos. Esto significa que en la escala de las observaciones, el término de error es multiplicativo por lo que los errores son mayores cuando los valores esperados son mayores:

    $\: y_i \sim \text{logN}(\log a+b\log x_i,\sigma^2)$

    o equivalentemente

    $\: y_i = ax_i^b \cdot \eta_i$ con $\eta_i \sim \text{logN}(0,\sigma^2)$

    (Tenga en cuenta que $\text{E}(\eta)$ no es 1. Si $\sigma^2$ no es muy pequeña, tendrá que tener en cuenta este efecto si quiere una aproximación razonable para la media condicional de $Y$ )

(Se pueden hacer mínimos cuadrados sin asumir normalidad / distribuciones lognormales, pero la cuestión central que se discute sigue siendo válida... y si no se está cerca de la normalidad, probablemente se debería considerar un modelo de error diferente de todos modos).

Por tanto, lo mejor depende del tipo de modelo de error que describa sus circunstancias.

[Si estás haciendo un análisis exploratorio con algún tipo de datos que no se han visto antes, te plantearías preguntas como "¿Qué aspecto tienen tus datos? (por ejemplo $y$ comparado con $x$ ? ¿Qué aspecto tienen los residuos frente a $x$ ?". Por otro lado, si variables como éstas no son poco comunes, ya deberías tener información sobre su comportamiento general].

10voto

Cuando ajusta cualquiera de los dos modelos, está suponiendo que el conjunto de residuos (discrepancias entre los valores observados y predichos de Y) sigue una distribución gaussiana. Si esta suposición es cierta para los datos brutos (regresión no lineal), no lo será para los valores transformados logarítmicamente (regresión lineal), y viceversa.

¿Qué modelo es "mejor"? Aquel en el que los supuestos del modelo se ajustan más a los datos.

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