7 votos

La derivación de la EML de regresión lineal: y ahora? ¿Por qué hay discrepancia a la lm en R?

Quiero entender el ML de la Estimación de un modelo lineal, de arriba a abajo o viceversa ;-).
Estoy totalmente de obtener la parte de la formulación de la LogLikelihood función y cómo obtener los derivados de la beta y sigma...
Ahora tengo la fórmula para el beta=x'/XX'

Si yo produzco un simple conjunto de datos en R:

x <- matrix(c(60, 50, 30, 120, 200, 70))
y <- matrix(c(8, 7, 5, 10, 11, 6))

Puedo obtener la pendiente de la beta 1 y la intersección beta0, a ser:

b1 <- (t(x)%*%y)/(t(x)%*%x)
b1
0.07239819
b0 <- y[1]-x[1]*b1
b0
3.656109

Si comparo que a la salida de la lm en R:

lm(y~x)
Coefficients:
(Intercept)            x  
    4.89393      0.03328  

Así que 1. ¿por qué hay una discrepancia? 2. El ajuste de lm realmente es mejor si se visualiza en un gráfico.

Así que lo que soy yo no puedo llegar allí? Pensé en mi resultado no es el supuesto implícito en $y\sim N(\mu,1)$, mientras que en lm el sigma se estima también. Pero no estoy seguro de si esto es cierto.

Por lo que he leído sobre el estado de Hesse matriz de var-cov de la matriz. No sé dónde ponerlos en este contexto...

Gracias Franz

12voto

AdamSane Puntos 1825

En resumen, la discrepancia es porque no lo estás haciendo correctamente.

Las estimaciones de mínimos cuadrados de los coeficientes de regresión (que son ML a la normal) $(X'X)^{-1}X'y$ donde $X$ se compone de una columna de 1 al lado de una columna de la variable independiente. (En la práctica, en realidad no calcular la inversa.)

Sin embargo, su enfoque funciona para la regresión a través del origen. Ordinario de regresión lineal pasa a través de $(\bar{x},\bar{y})$.

Así que si lo haces por medio de corrección en primer lugar, su enfoque debe trabajar para la regresión lineal simple (al menos si corrige $XX'$ en tu post a $X'X$ primera):

paso 1: significa correcta de x y de y:

 x <- matrix(c(60, 50, 30, 120, 200, 70))
 y <- matrix(c(8, 7, 5, 10, 11, 6))
 xm <- x-mean(x)
 ym <- y-mean(y)

paso 2: aplicar su enfoque:

 slope=crossprod(xm,ym)/crossprod(xm)  # a more efficient way to do your calculation
 intercept=mean(y)-slope*mean(x)
 print(c(intercept,slope),d=4)
[1] 4.89393 0.03328

0voto

Franz Puntos 39

Muchas gracias!

He entendido el problema y su solución. Pero no entiendo cómo esto puede ser calculada usando la $\textbf{X}$ 2xn de la matriz.

No sé cómo resolver esto por $\beta_0$$\beta_1$:

$$ \beta = \begin{bmatrix} \beta_0 \\ \beta_1 \end{bmatrix} = \mathbf{X}^T y [\mathbf{X}^T \mathbf{X}]^{-1}= \frac{\begin{bmatrix} 1& 1 & \dots &1 \\ x_1 & x_2 & \dots & x_n \end{bmatrix} \begin{bmatrix}y_1\\y_2\\ \vdots \\ y_n \end{bmatrix}} {\begin{bmatrix} 1& 1 & \dots &1 \\ x_1 & x_2 & \dots & x_n \end{bmatrix} \begin{bmatrix}x_1 \\x_2\\\vdots \\x_n \end{bmatrix}}$$

Esto debe pasar por el origen de la derecha? Sé que $\beta_0$ se establece en 0 cuando se ven obligados por el origen, pero ¿para qué necesito la 1 de la columna en la $\textbf{X}$ matriz de entonces? Mejor, Franz

0voto

hjerpe Puntos 1

La expresión $\hat{\beta} = [X^TX]^{-1}X^Ty$ es un producto de matrices. Matriz de productos en su mayoría no conmutan y el plazo $[X^TX]^{-1}$ es una matriz inversa. Usted puede encontrar información sobre esta haciendo una búsqueda en Álgebra Lineal. Además los que siempre son necesarios ya que la expresión se deriva de $y = [1, x][\beta_0, \beta_1]^T$.

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