5 votos

la regresión lineal, la simetría del modelo no lleva a la simetría de los coeficientes de

Experimento: se Le da una gran población de los números reales. Por simplicidad tomar los números enteros desde -n para n. Tomar dos muestras aleatorias independientes x y y de tamaño k y tipo de ellos (cada uno individualmente). Calcular la regresión lineal $y=a+bx$.

Pregunta: ¿cuáles son los valores esperados para a y b? ¿Qué hace la distribución?

Como el escenario es simétrica en x y y yo esperaba $a=0$ $b=1$ pero los números muestran que este no es el caso.

Yo publicado por primera vez esta pregunta en la sección de matemáticas:

https://math.stackexchange.com/questions/2476502/linear-regression-symmetry-of-model-does-not-lead-to-symmetry-of-coefficients?

pero no se obtiene ningún respuestas útiles. Esta pregunta aquí

la simetría de la regresión lineal

también está estrechamente relacionado con.

Aquí hay algunos R código que se ejecuta este experimento.

n_pop  <- 100

n_sample <- 20

draws <- 1000

M <- matrix(c(1:(2*draws)), nrow=draws)

for (j in 1:draws) {

  x <- sort(sample(-n_pop:n_pop,n_sample,replace=FALSE))

  y <- sort(sample(-n_pop:n_pop,n_sample,replace=FALSE))

  xy_model <- lm(y~x)

  M[j,] <- coef(xy_model)

}

mean(M[,1])

mean(M[,2])

sd(M[,1])

sd(M[,2])

hist(M[,1],breaks=20)

hist(M[,2], breaks=20)

t.test(M[,2], mu=1, conf.level=0.99)

t.test(M[,1], mu=0, conf.level=0.99)

Para esta población y tamaño de la muestra yo me $a=1$ y $b=0.98$, $a=0$ y $b=1$ puede ser excluido con gran confianza.

Sospecho que esto está relacionado con el hecho de que OLS minizes distancia en el eje y, pero no entiendo por qué esto de los cambios de los coeficientes. Numéricamente, si el tamaño de la muestra se hace más pequeño, la cofficients alejan forma de 0 y 1. Si uno utiliza una regresión de Deming que minimiza la distancia euclidiana a la línea, numéricamente $a=0$ $b=1$ parece plausible.

edit: el código anterior nos da una distribución de $a$ que es simétrica alrededor de 0, tuve un error en mi código R. La pregunta para $b$ permanece y la respuesta a continuación le da una excelente explicación de por qué la $b$ no es igual a $1$.

2voto

user164061 Puntos 281

Uno

La regresión $y = a + bx + \epsilon$ es no simétrica para la sustitución de y y x, como ya se ha sugerido a través del enlace (simetría de regresión lineal).

Sin embargo, no es trivial si la expectativa de valores, $\hat{a}$$\hat{b}$, van a ser diferentes a partir de una simétrica $E(\hat{a}_{xy})=E(\hat{a}_{yx})=0$$E(\hat{b}_{xy})=1/E(\hat{b}_{yx})=1$. Posiblemente la diferencia en la regresión $y \sim x$ vs $x \sim y$ cancelar más de todas las posibilidades (vamos a ver que esto es cierto para $a$). Para ello tenemos que "ver" todas las posibilidades y cómo se media/cancelar.


2

Vamos a demostrar que la intersección es simétrica

$$E(\hat{a})=0$$

however the slope is not, and will be smaller than 1

$$E(\hat{b})<1$$

We show this by comparing the non-symmetric regression with a symmetric regression.


3

As symmetric regression we use the line in between the two regression lines lines defined by the y~x and x~y.

In algebraic terms:

$$\hat{b}_{sym} = \frac{\hat{b}_{xy} + \hat{b}_{yx}^{-1}}{2}$$

and

$$\hat{a}_{sym} = \frac{\hat{a}_{xy} - \hat{a}_{yx}\hat{b}_{yx}}{2}$$


4

Nota lo siguiente acerca de la simetría de la pendiente.

  1. La pendiente será simétrica alrededor del ángulo de 45 grados

    es decir, una probabilidad de un ángulo a con $45+\alpha$ es igual a un probabilty de un ángulo a con $45-\alpha$, también la expectativa de valor de para el ángulo de su coeficiente será 1, ya que:

    • $\hat{b}_{sym}(x,y)=\hat{b}_{sym}(y,x)$, lo que $E(\hat{b}_{sym}(x,y))=E(\hat{b}_{sym}(y,x))$

      (tenga en cuenta que no tenemos la misma por la pendiente del caso asimétrica $\hat{b}_{xy}(z_1,z_2)=\hat{b}_{yx}(z_2,z_1)$ )

    • sin embargo, también debemos tener la simetría $E(\hat{b}_{sym}(x,y))=1/E(\hat{b}_{sym}(y,x))$, la línea que se describe por la expectativa de que el coeficiente, si queremos cambiar las etiquetas xy de lo que esperamos una imagen en el espejo que tiene un diferente coeficiente b (a la inversa).
  2. La pendiente $\hat{b}_{xy}$ será menor debido a la regresión a la media.

Por lo tanto... la simetría de la pendiente se $E(\hat{b}_{sym})=1$, sin embargo, a continuación, desde siempre, $\hat{b}_{xy} \leq \hat{b}_{sym}$ tendremos $E(\hat{b}_{xy}) \leq E(\hat{b}_{sym})=1$. Y la igualdad sólo es cierto cuando no hay términos de error.

Ver la siguiente imagen para recordar las líneas de regresión $xy$, $yx$ (rojo curvas) y la simétrica entre (curva verde), esta imagen es de el código de ejemplo siguiente: example of regression to the mean and a symmetric regression line

Si dibujamos el ángulo de la línea simétrica (verde) y la línea de regresión para la y~x modelo (el rojo que tiene más pequeño ángel con el eje de las x), entonces podemos ver que el ángulo de la línea simétrica distribuye uniformemente alrededor de 45 grados, sin embargo el ángulo de la no-simétrica de la línea de $y~x$, es siempre inferior a:

slope angle of symmetric versus non symmetric regression line


5

Lo que queda es demostrar que el $E(\hat{a})=0$. No tengo una prueba directa de este. Sin embargo, debe ser suficiente para notar que la regresión a la media (que es cero) no favorece más grande o más pequeño $a$. Tenga en cuenta que hay un punto de simetría, $(x,y) \rightarrow (-x,-y)$, por lo que el ángulo de $b$ es invariante, pero no la intercepción $\hat{a}$, lo que significa que, $a$, debe ser igual a cero.

Usted obtener valores de $\hat{a}$ forma diferente de cero, pero debe tomar en cuenta es la muestra de la varianza. (El error de muestreo para $\hat{a}$ es diferente de cero)


6

A continuación se ajuste a su código para examinar los efectos descritos anteriormente

n_pop  <- 100

n_sample <- 20

draws <- 1000

M <- matrix(c(1:(2*draws)), nrow=draws)
K <- matrix(c(1:(2*draws)), nrow=draws)
ma <- matrix(c(1:(2*draws)), nrow=draws)
meanx <- matrix(c(1:(1*draws)), nrow=draws)

for (j in 1:draws) {

  x <- sort(sample(-n_pop:n_pop,n_sample,replace=FALSE))

  y <- sort(sample(-n_pop:n_pop,n_sample,replace=FALSE))

  xy_model <- lm(y~x)
  yx_model <- lm(x~y)

  M[j,] <- coef(xy_model)      
  K[j,] <- coef(yx_model)     

  # xy and yx model coefficients last loop
  b1 <- coef(xy_model)[2]
  b2 <- 1/coef(yx_model)[2]
  a1 <- coef(xy_model)[1]
  a2 <- -coef(yx_model)[1]*coef(yx_model)[2]

  ma[j,1] <- 0.5*sum(a1,a2)
  ma[j,2] <- 0.5*sum(b1,b2)

  meanx[j,1] <- mean(x)
}

# means
mean(M[,1])
mean(M[,2])
mean(ma[,1])
mean(ma[,2])



# plotting last for-loop x-y as example of regresion fits
plot(x,y)

xp <- -n_pop:n_pop
lines(xp,a1+b1*xp,col=2)
lines(xp,a2+b2*xp,col=2)
lines(xp,0.5*a2+0.5*a1+0.5*b2*xp+0.5*b1*xp,col=3)


# plotting coefficients symmetric versus xy
plot(180/pi*atan(ma[,2]),180/pi*atan(M[,2]), xlab="symmetric fit angle", ylab="xy-fit angle")
lines(c(0,90),c(0,90),col=2)

# plotting mean of x vs beta
plot(meanx,ma[,2]-M[,2], xlab="mu_x",ylab="beta_sym - beta_xy",pch=21,
     col=adjustcolor("black",alpha.f=0.1),
     bg=adjustcolor("black",alpha.f=0.1),log="y")

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