6. Álgebra de matrices para la regresión¶
Dwaine Studios opera una cadena de estudios de retratos y quiere crecer. Ya trabaja en 21 ciudades, y sus gerentes registran dos números para cada una: la población de 16 años o menos, el grupo de niños cuyos padres compran retratos, y el ingreso disponible per cápita, cuánto dinero tienen las familias para gastar. Quieren usar estos dos números para predecir las ventas de los estudios, de modo que puedan ordenar ciudades nuevas y abrir donde el pronóstico sea más alto. La pregunta es de pronóstico, pero por debajo es de modelado: ¿cómo dependen las ventas de ambos predictores a la vez?
En el Capítulo 2 ajustaste una recta con un solo predictor resolviendo dos ecuaciones normales para el intercepto y la pendiente (2.2 Mínimos cuadrados desde los primeros principios). Eso funcionó porque solo había dos incógnitas. Dwaine tiene tres, un intercepto y dos pendientes, y un estudio realista podría tener veinte. Escribir una ecuación normal separada para cada una y resolver la maraña a mano no es algo que nadie quiera hacer dos veces. El álgebra de matrices es el mejor lenguaje: empaqueta un conjunto de datos completo en dos símbolos, las ecuaciones normales en una sola, y la solución en una fórmula que escribes en una sola línea y calculas con un solo comando.
Nada de lo que sigue requiere que hayas visto una matriz antes. Construimos cada idea a partir de su definición, la probamos en un ejemplo pequeño que podrías verificar con lápiz, y luego la ejecutamos sobre el conjunto de datos real de 21 ciudades tanto en R como en Python. Si has tomado álgebra lineal, esto se leerá como un repaso con acento estadístico; si no, de todos modos terminarás capaz de ajustar y explicar una regresión múltiple, la única álgebra de matrices que este curso te pide.

Figure 1:Las ventas de Dwaine Studios contra la población menor de 16 años de una ciudad, con el ingreso disponible indicado por el sombreado. Ambos predictores acompañan mayores ventas, así que un buen pronóstico necesita usarlos juntos, que es exactamente lo que nos permite hacer la maquinaria matricial de este capítulo.
La Figure 1 muestra que ambos predictores importan: las ventas suben a medida que crece la población joven, y para una población dada las ciudades de mayor ingreso (puntos más oscuros) tienden a vender más. Un modelo que usa ambos a la vez es un modelo de regresión múltiple, y todo modelo de este tipo se construye, ajusta y comprende mediante matrices. Al terminar habrás construido, para los datos reales de Dwaine, la matriz de diseño , el producto , su inversa, las estimaciones de los coeficientes, la matriz sombrero, y el error estándar de cada coeficiente, cada uno a partir de operaciones que también puedes hacer a mano en un ejemplo pequeño.
6.1 Los datos como un vector y una matriz¶
Intuición¶
Empieza por la respuesta. Dwaine tiene 21 cifras de ventas, una por ciudad. Apílalas en una sola columna y tendrás un vector (Definición 6.1), una lista ordenada de números escrita verticalmente. Llámalo . Un vector es la matriz más simple: muchas filas, una columna.
Ahora los predictores. Cada ciudad lleva dos números, así que los predictores forman una tabla con 21 filas y 2 columnas, y una tabla de números con filas y columnas es una matriz (Definición 6.1). Para la regresión pegamos una columna extra de puros unos al frente: un truco de contabilidad que deja que el intercepto viaje como si fuera un coeficiente más. El resultado es la matriz de diseño (Definición 6.2), con 21 filas y 3 columnas. La Figure 2 muestra cómo se alinea todo el modelo como arreglos apilados.

Figure 2:El modelo de regresión en forma matricial. La respuesta Y y los errores son 21 por 1, la matriz de diseño X es 21 por 3 con una columna inicial de unos para el intercepto, y el vector de coeficientes beta es 3 por 1. Las dimensiones internas coinciden, así que el producto está definido.
Leer a lo ancho de una fila da el registro completo de una ciudad: un 1, su población joven, su ingreso disponible, y, en , sus ventas. Apilar las filas convierte 21 pequeñas ecuaciones separadas en el único enunciado . Esa compresión es la razón para aprender matrices: los mismos tres símbolos describen un conjunto de datos con 21 filas o con 21 millones.
Fórmula¶
Para una regresión con observaciones y parámetros (contando el intercepto), las piezas son
es el vector respuesta; la fila es la respuesta del caso .
es la matriz de diseño; su primera columna es de puros unos, y la columna contiene los valores del predictor .
es el vector de parámetros: el intercepto seguido de las pendientes.
es el número de parámetros de regresión incluyendo el intercepto ( para Dwaine), y es el número de observaciones ().
Para Dwaine, y : una columna de unos, una columna de poblaciones menores de 16 años, una columna de ingresos disponibles. Todo el modelo del Capítulo 2 se generaliza a , que desarrollamos en 7.1 El modelo y los mínimos cuadrados en forma matricial. En palabras: cada respuesta observada es igual a una suma ponderada de los predictores de esa fila, usando los mismos pesos para cada fila, más un error aleatorio.
R y Python¶
6.2 Transpuesta y multiplicación de matrices¶
Intuición¶
Tenemos los datos en matrices; ahora necesitamos combinarlos. Dos operaciones hacen casi todo el trabajo. La transpuesta (Definición 6.3) voltea una matriz sobre su diagonal, de modo que las filas se vuelven columnas. La multiplicación de matrices (Definición 6.4) es el motor que convierte la matriz de diseño en las sumas de cuadrados y productos cruzados sobre los que corre una regresión.
La multiplicación de matrices no es lo que un principiante espera. Una entrada del producto se construye a partir de toda una fila de la matriz izquierda y toda una columna de la derecha: alinéalas, multiplica término a término, y suma. Aplicada a , esa regla produce exactamente las sumas que de otra forma calcularías una penosa suma a la vez. La Figure 3 lo muestra en un ejemplo pequeño.

Figure 3:Multiplicación de matrices, entrada por entrada. La entrada resaltada del producto en la fila 1, columna 2 proviene de la fila 1 de A y la columna 2 de B, multiplicadas término a término y sumadas. Cada entrada de un producto es uno de esos productos punto de fila por columna.
Dos productos, y solo dos, importan para el ajuste: resume los predictores por sí mismos, y resume cómo se mueve cada predictor con la respuesta. Entre ambos guardan todo el resumen que los mínimos cuadrados necesitan, razón por la cual un conjunto de datos completo puede reducirse a un puñado de números: el ajuste no se interesa por las filas individuales una vez que esas sumas se conocen.
Fórmula¶
Imagínala como volcar una matriz sobre su esquina superior izquierda: cada fila se pone de pie para volverse columna, así que una matriz ancha se vuelca en una alta y de regreso. Un vector columna, volcado, se vuelve una sola fila, razón por la cual multiplica una copia acostada de un vector por una copia parada y colapsa a un solo número.
Las dimensiones internas ( y ) deben coincidir; son sobre las que se suma.
Las dimensiones externas ( y ) dan la forma de la respuesta.
La entrada es la fila de punto la columna de .
Dos productos cargan toda la faena en la regresión. Con de tamaño , la transpuesta es , así que
En palabras: reúne toda suma de cuadrados y producto cruzado de las columnas de predictores en una tabla cuadrada pequeña, y reúne toda suma de predictor por respuesta en una columna corta, la materia prima de las ecuaciones normales. Una regla que usaremos constantemente es que transponer un producto invierte el orden de sus factores.
Demostración. Mostramos comparando entradas. La entrada de es, por la definición de transpuesta, la entrada de , que es . La entrada de es la fila de punto la columna de , es decir . Las dos sumas tienen los mismos términos, así que las matrices son iguales.
R y Python¶
Primero el ejemplo pequeño de la Figure 3, para que la mecánica sea
concreta antes de soltar el motor sobre los datos reales. En R, %*% es la
multiplicación de matrices (un * simple multiplica entrada por entrada); en Python el
operador es @.
A <- matrix(c(1, 2, 3,
4, 5, 6), nrow = 2, byrow = TRUE)
B <- matrix(c(1, 0,
0, 1,
1, 1), nrow = 3, byrow = TRUE)
A %*% B [,1] [,2]
[1,] 4 5
[2,] 10 11A = np.array([[1, 2, 3],
[4, 5, 6]])
B = np.array([[1, 0],
[0, 1],
[1, 1]])
print(A @ B)[[ 4 5]
[10 11]]La regla fila por columna se vuelve creíble cuando la ves ocurrir sobre el único producto que una regresión realmente necesita, así que construye tú mismo antes de seguir.
Toca o desliza el dedo sobre cualquier entrada del producto y se resaltarán la fila y la columna que la generaron, con la aritmética escrita debajo.
6.3 Identidad, simetría, independencia y rango¶
Intuición¶
Antes de invertir nada, necesitamos vocabulario para las formas de las matrices que aparecen en la regresión, y una idea que decide si el ajuste es siquiera posible. La matriz identidad (Definición 6.6) es la versión matricial del número 1: multiplicar por ella no cambia nada. Una matriz simétrica (Definición 6.7) es igual a su propia transpuesta, y siempre es simétrica, razón por la cual su tabla se ve como un espejo a través de la diagonal.
La idea que decide la factibilidad es la independencia lineal (Definición 6.8) de
las columnas de predictores. Si una columna de predictor es una combinación lineal
exacta de las otras, digamos que dispoinc fuera exactamente el doble de targtpop
más una constante, entonces las columnas cargan información redundante, la matriz
tiene rango deficiente, y no se puede
invertir. No hay entonces un único mejor ajuste, porque los datos no pueden distinguir
los coeficientes redundantes. Esta es la cara matricial de un problema que volverás a
encontrar como multicolinealidad en 12.1 La multicolinealidad y el factor de inflación de la varianza.
Una imagen vuelve concreta la independencia. Piensa en dos columnas como flechas dibujadas desde el origen. Si apuntan en direcciones genuinamente distintas, abren un área entre ellas, y la matriz tiene rango completo. Si una es solo una copia estirada de la otra, ambas flechas quedan sobre una sola recta, el área entre ellas es cero, y la matriz tiene rango deficiente. La Figure 5 muestra ambos casos lado a lado.

Figure 5:El rango visto como geometría. Las columnas independientes se abren y encierran un área, así que el ajuste es único; las columnas dependientes caen sobre una recta y no encierran nada, así que el ajuste no lo es. El área encerrada es exactamente el determinante de la próxima sección, y su colapso a cero es lo que vuelve singular a una matriz.
Estos nombres se ganan su lugar: una propiedad con nombre es un hecho que puedes citar en vez de recalcular. Mostrar que la matriz sombrero es una proyección se vuelve un argumento de una línea, “es simétrica e idempotente”, en lugar de páginas de comprobación entrada por entrada.
Fórmula¶
El producto siempre es simétrico, porque por la regla de inversión del orden (Teorema 6.5) de 6.2 Transpuesta y multiplicación de matrices.
El hecho central de esta sección conecta el rango con la invertibilidad.
Un ejemplo diminuto vuelve concreto el rango: y son independientes, pero y son dependientes porque el segundo es exactamente el doble del primero, así que juntos abarcan solo una recta y tienen rango 1, no 2. En una matriz de diseño, una columna dependiente así es un predictor que repite información ya presente.
R y Python¶
El software reporta la simetría, el rango y el determinante (el único número, cubierto en 6.4 La inversa y las ecuaciones normales, cuya anulación señala el rango deficiente) directamente.
isSymmetric(XtX)
qr(X)$rank
round(det(XtX), 2)[1] TRUE
[1] 3
[1] 1068302print(np.allclose(XtX, XtX.T))
print(np.linalg.matrix_rank(X))
print(round(np.linalg.det(XtX), 2))True
3
1068302.4La matriz de diseño tiene rango 3, su cuenta completa de columnas, así que los dos predictores más el intercepto cargan tres piezas de información genuinamente distintas, y el determinante no nulo confirma que es invertible y que el ajuste de Dwaine está bien planteado.
El hábito por construir: antes de confiar en cualquier regresión múltiple, pregúntate si los predictores son genuinamente distintos. El software con gusto invertirá una matriz casi singular y devolverá coeficientes con errores estándar enormes, la advertencia temprana de que dos predictores cargan casi la misma información. El rango es la versión de sí o no de esa pregunta; el Capítulo 12 la afina en “¿qué tan cerca de dependientes están?”.
6.4 La inversa y las ecuaciones normales¶
Intuición¶
Aquí es donde la maquinaria rinde frutos. En el álgebra ordinaria, para resolver divides entre , lo cual es lo mismo que multiplicar por . Las matrices no tienen división, pero tienen lo mejor que le sigue: para una matriz cuadrada de rango completo, existe una inversa (Definición 6.10) que la deshace, es decir, . Para resolver una ecuación matricial , multiplica ambos lados por la izquierda por y obtienes .
Las ecuaciones normales de los mínimos cuadrados, que en el Capítulo 2 eran dos ecuaciones escalares, colapsan en forma matricial a la única ecuación . El Capítulo 7 la deriva minimizando el error al cuadrado (7.1 El modelo y los mínimos cuadrados en forma matricial); por ahora tómala como la gemela matricial de las ecuaciones normales del Capítulo 2 (2.2 Mínimos cuadrados desde los primeros principios). Resolverla es ahora un solo paso: multiplica por .
Con números, existe para todo excepto el cero. Con matrices, existe para toda matriz cuadrada excepto las de rango deficiente, así que “¿puedo resolver esto de manera única?”, “¿el determinante es distinto de cero?” y “¿son independientes las columnas?” son tres maneras de hacer una sola pregunta. Para Dwaine, las tres dicen que sí.
Fórmula¶
El determinante mide si las columnas son independientes; si es cero, la fórmula de la inversa divide entre cero y no existe inversa.
Para matrices más grandes el determinante es más complicado, así que dejamos que el software lo calcule, pero la regla “invertible si y solo si el determinante es distinto de cero” sigue siendo exacta.
Esto conecta de vuelta con la imagen del rango en Figure 5: las dos columnas de una matriz dos por dos enmarcan un paralelogramo, y el determinante es su área. Cuando las columnas apuntan a lo largo de la misma recta el paralelogramo queda aplastado, su área es cero, y la matriz es singular, así que “determinante cero” y “las columnas colapsan sobre una recta” son el mismo suceso.
Aplicar la inversa a las ecuaciones normales da el estimador de mínimos cuadrados en una sola línea.
En palabras: multiplica los productos cruzados almacenados por la inversa de la matriz de productos cruzados , y salen las estimaciones de coeficientes de una vez. Esta única fórmula es toda la estimación por mínimos cuadrados, para cualquier número de predictores.
R y Python¶
Primero la fórmula de la inversa , comprobada en una matriz simétrica
pequeña, para que puedas ver ocurrir . Ambos
lenguajes invierten con una sola llamada: solve en R, np.linalg.inv en Python.
M <- matrix(c(2, 1,
1, 2), nrow = 2, byrow = TRUE)
Minv <- solve(M)
Minv
round(M %*% Minv, 6) [,1] [,2]
[1,] 0.6666667 -0.3333333
[2,] -0.3333333 0.6666667
[,1] [,2]
[1,] 1 0
[2,] 0 1M = np.array([[2.0, 1.0],
[1.0, 2.0]])
Minv = np.linalg.inv(M)
print(Minv)
print(np.round(M @ Minv, 6))[[ 0.66666667 -0.33333333]
[-0.33333333 0.66666667]]
[[1. 0.]
[0. 1.]]El determinante es , así que la inversa es , que concuerda con la impresión, y devuelve la identidad.
Casi nunca invertirás a mano una matriz más grande que esta; trabajar el caso dos por
dos una vez basta para ver de dónde viene la respuesta y observar aparecer la
identidad, de modo que una inversa por software nunca es magia. De aquí en adelante
dejamos que solve y np.linalg.inv hagan la aritmética, y el próximo ejemplo suelta
la inversa sobre el ajuste completo de Dwaine.
Un determinante igual a cero se siente mejor de lo que se define, así que junta tú mismo las dos columnas y observa cómo la inversa se descompone mucho antes de que lleguen a tocarse.
Arrastra la punta de cualquiera de las dos flechas. La caja sombreada tiene área igual al tamaño del determinante, y las entradas de la inversa crecen sin límite conforme esa caja se aplana.
6.5 Matrices idempotentes y de proyección¶
Intuición¶
Los coeficientes están listos, así que el modelo ya puede hacer sus propias predicciones. La pregunta de esta sección es de dónde vienen esas predicciones y cómo lucen como imagen. La respuesta es una sola tabla de números que convierte las ventas observadas en las ventas ajustadas del modelo en un solo paso, y ese paso es una sombra: aplana los datos sobre la superficie que los predictores pueden alcanzar.
Con en mano, los valores ajustados son . Sustituye el estimador y aparece algo notable:
Geométricamente la matriz sombrero es una proyección (Definición 6.14). Imagina como una flecha en un espacio de dimensiones; los valores ajustados que una regresión puede producir quedan todos en un subespacio plano, el espacio generado por las columnas de . La matriz sombrero deja caer recto hacia abajo sobre ese subespacio, aterrizando en el punto más cercano, y el residuo es lo que sobra en perpendicular. La Figure 7 muestra esta imagen, el tema de 7.2 La geometría de los mínimos cuadrados.

Figure 7:Los mínimos cuadrados como proyección. El vector ajustado Y-sombrero es la sombra de la respuesta Y sobre el espacio columna de X, y el residuo e los une en ángulo recto. La matriz sombrero H realiza la proyección sobre el plano; I menos H produce el residuo perpendicular.
Dos propiedades algebraicas hacen de una proyección, y son las bestias de carga de los diagnósticos del Capítulo 9. Primero, es simétrica. Segundo, es idempotente: aplicarla dos veces es lo mismo que aplicarla una vez, . Eso tiene sentido para una proyección, pues una vez que un vector queda aplanado sobre el plano, aplanarlo de nuevo no hace nada.
La imagen de la sombra vale la pena retenerla. Tu sombra sobre suelo plano conserva tu posición izquierda-derecha y adelante-atrás pero aplana tu altura a cero; la matriz sombrero le hace lo mismo a , aplanando la parte de la respuesta que ninguna combinación de los predictores podría reproducir, que es el residuo.
Estas propiedades no son adorno: el Capítulo 9 lee la diagonal de para encontrar qué ciudades jalan más fuerte sobre la superficie ajustada, el Capítulo 7 usa su traza para contar los grados de libertad, y la imagen perpendicular es lo que hace de los mínimos cuadrados el ajuste más cercano, sin ningún punto en el plano más próximo a que su propia sombra.
Fórmula¶
Las dos proyecciones de la regresión son
con los valores ajustados y los residuos. En palabras: proyecta sobre el espacio de valores ajustables, y proyecta sobre el espacio sobrante de los residuos.
Las dos propiedades que definen a son las que la vuelven una proyección.
Demostración. Escribe , que es simétrica porque lo es (su inversa hereda la simetría: ). Para la simetría de , aplica la regla de la transpuesta con inversión del orden de 6.2 Transpuesta y multiplicación de matrices dos veces:
Para la idempotencia, multiplica por sí misma y cancela la interna contra su inversa:
usando . Los mismos dos pasos muestran que es simétrica e idempotente: .
R y Python¶
La proyección es la única idea de este capítulo que una página plana no puede mostrar de verdad, así que gira la figura y mueve con tu propio dedo.
Arrastra la punta de Y a cualquier lugar del espacio. Yhat permanece sobre el espacio columna de X y el residuo e permanece perpendicular a él, que es justo lo que hace del ajuste el más cercano posible.
6.6 Formas cuadráticas y sumas de cuadrados¶
Intuición¶
Toda “suma de cuadrados” en la regresión es en secreto una expresión matricial llamada forma cuadrática (Definición 6.17). La suma de cuadrados del error es , y una suma de las entradas al cuadrado de un vector es exactamente ese vector punto consigo mismo: . Como , un poco de álgebra reescribe SSE usando solo y una matriz de proyección en el medio. Ese patrón de matriz en el medio, , es una forma cuadrática, y SSTO, SSR y SSE tienen todos esta forma.
¿Por qué importa? Por dos razones. Primero, una forma cuadrática hace que los grados de libertad y el valor esperado de cada suma de cuadrados salgan de la matriz del medio, que es como el Capítulo 7 explica la tabla ANOVA. Segundo, las sumas de cuadrados nunca pueden ser negativas, y eso lo garantiza una propiedad de la matriz del medio llamada semidefinición positiva. La Figure 9 muestra por qué una forma definida positiva tiene la forma de un tazón que nunca baja de cero.

Figure 9:Una forma cuadrática definida positiva es un tazón. Su valor es cero solo en el origen y estrictamente positivo en toda otra dirección, que es exactamente por qué una suma de cuadrados escrita como tal forma nunca puede ser negativa.
La recompensa es que esta vista sobrevive incluso cuando la suma ya no parece una suma de cuadrados. Escrita como , SSE no eleva visiblemente nada al cuadrado, y sin embargo la matriz del medio todavía garantiza que no puede volverse negativa. El mismo razonamiento se aplica a una varianza, una suma de cuadrados disfrazada, así que la matriz de covarianzas de la próxima sección nunca puede contener una varianza negativa.
Fórmula¶
Las tres sumas de cuadrados de la regresión son todas formas cuadráticas en , y sus matrices del medio cargan la descomposición ANOVA.
Demostración (no negatividad). Como es simétrica e idempotente, , así que SSE es una suma de cuadrados genuina y nunca puede ser negativa; lo mismo vale para SSR y SSTO. La descomposición aditiva de las matrices del medio es el enunciado matricial de la identidad ANOVA (3.6 El enfoque del análisis de varianza).
En palabras: las sumas de cuadrados son formas cuadráticas, y las matrices del medio idempotentes garantizan la no negatividad y, en el Capítulo 7, nos entregan los grados de libertad a través de sus trazas.
R y Python¶
6.7 Vectores aleatorios, esperanza y matrices de covarianzas¶
Intuición¶
Hasta ahora las matrices contenían números fijos. Pero es aleatorio: vuelve a correr las 21 ciudades bajo las mismas condiciones y las ventas saldrían un poco distintas, por los errores . Para describir un vector de variables aleatorias necesitamos dos cosas: un vector de medias y una tabla de varianzas y covarianzas.
El vector de medias es simplemente la esperanza aplicada entrada por entrada. La tabla es la matriz de covarianzas (Definición 6.19): su diagonal contiene la varianza de cada entrada, y sus fuera de diagonal contienen la covarianza entre pares de entradas. Para los errores de la regresión, esta tabla es simple: varianza constante por la diagonal (todo error tiene la misma dispersión) y ceros fuera de ella (errores distintos están no correlacionados), así que . Una regla de dos líneas para cómo viajan las medias y las covarianzas a través de un mapa lineal entrega entonces la matriz de covarianzas de , la fuente de todo error estándar.
Fórmula¶
Las reglas de transformación de cómo viajan estas a través de un mapa lineal son el corazón de la sección.
En palabras: la esperanza pasa directo a través de un mapa lineal, y una matriz de covarianzas queda emparedada entre y su transpuesta. Aplica esto al modelo de regresión, donde y , y la media y la covarianza de se siguen.
Demostración. El estimador es un mapa lineal de : con , tenemos . Para la media, usa :
así que es insesgado para . Para la covarianza, usa y la regla del emparedado:
donde la del medio cancela una inversa. Así que : la misma inversa que usamos para calcular también da, una vez escalada por , la varianza de cada coeficiente y la covarianza de cada par.
Reemplazar el desconocido por su estimación MSE da la matriz de covarianzas estimada , cuyas raíces cuadradas de la diagonal son los errores estándar que el software imprime.
R y Python¶
6.8 La normal multivariante, en breve¶
Intuición¶
El vector de medias y la matriz de covarianzas describen el centro y la dispersión de un vector aleatorio, pero no su forma completa. Para la inferencia añadimos un supuesto, el mismo que convirtió las estimaciones del Capítulo 2 en pruebas : los errores son normales. Apilados en un vector, los errores normales con varianza constante y sin correlación siguen una distribución normal multivariante (Definición 6.22), la generalización a varias variables de la campana. Sus contornos son elipses cuya inclinación y estiramiento se leen directamente en la matriz de covarianzas, como en Figure 10.

Figure 10:Una distribución normal bivariante. Las dos coordenadas tienen covarianza 0.8, así que la nube y sus contornos elípticos se inclinan a lo largo de la diagonal. La forma de la elipse es exactamente la matriz de covarianzas, razón por la cual la distribución muestral del vector de coeficientes b se describe por su matriz de covarianzas.
Por qué importa esto: bajo errores normales la respuesta es normal multivariante, y como es un mapa lineal de , también lo es . Ese hecho, , es el fundamento de todo intervalo de confianza, prueba y prueba que vienen.
Lo que la distribución completa añade es cómo se adelgaza la probabilidad a medida que te alejas del centro: la misma caída de campana que conoces de una variable, medida a lo largo de los ejes inclinados de la elipse de covarianza. Eso es lo que nos permite calcular la probabilidad de que un coeficiente caiga dentro de una distancia declarada de la verdad, exactamente lo que reporta un intervalo de confianza en el próximo capítulo.
Una advertencia mantiene esto honesto. La normalidad multivariante de es una consecuencia de suponer errores normales, no un hecho que los datos te entregan gratis. Si los errores son muy poco normales y la muestra es pequeña, esa ley es solo aproximada, una razón por la que existen los métodos de permutación y bootstrap del Capítulo 5 (5.4 El bootstrap para la regresión). Con una muestra grande, un efecto de promediado jala a hacia la normalidad aun cuando los errores no lo sean.
Fórmula¶
Aplicar esa propiedad a la regresión bajo el modelo de errores normales da la ley muestral que impulsa toda inferencia posterior.
La respuesta está centrada en la superficie de regresión con coordenadas independientes y de igual varianza, y el estimador está centrado en la verdad (insesgado) con la matriz de covarianzas que derivamos.
En palabras: los errores normales vuelven normales tanto a los datos como a las estimaciones, así que cada coeficiente está distribuido normalmente con una varianza que podemos leer en , y eso es lo que hace posible la inferencia exacta.
R y Python¶
Podemos demostrar la idea de recuperación de la covarianza por simulación: extrae muchos vectores con una covarianza objetivo y confirma que la covarianza muestral concuerda. Partiendo de normales estándar independientes , la transformación , donde es una raíz cuadrada matricial del objetivo (el factor de Cholesky), produce vectores con covarianza , exactamente la regla del emparedado en acción.
set.seed(4210)
mu <- c(0, 0)
Sigma <- matrix(c(1, 0.8,
0.8, 1), nrow = 2)
L <- chol(Sigma)
Z <- matrix(rnorm(2 * 5000), ncol = 2)
V <- Z %*% L
round(cov(V), 3) [,1] [,2]
[1,] 0.967 0.760
[2,] 0.760 0.955rng = np.random.default_rng(4210)
Sigma = np.array([[1.0, 0.8],
[0.8, 1.0]])
L = np.linalg.cholesky(Sigma)
Z = rng.standard_normal((5000, 2))
V = Z @ L.T
print(np.round(np.cov(V, rowvar=False), 3))[[1.017 0.822]
[0.822 1.026]]La covarianza muestral de los 5000 vectores simulados sale cerca del objetivo en ambos lenguajes, difiriendo solo por el ruido de muestreo.
El factor de Cholesky puede seguir siendo una caja negra por ahora; el punto es que una covarianza se puede plantar a propósito, pasando ruido no correlacionado por una matriz fija y dejando que la regla del emparedado haga el resto. La covarianza de es la misma historia: ruido de error pasado por la matriz fija , así que la simulación y la regresión son dos usos de un mismo mecanismo.
6.9 Resumen del capítulo¶
Ahora puedes hablar el lenguaje matricial en el que está escrito el resto del libro: distribuye un conjunto de datos como un vector respuesta y una matriz de diseño , construye los productos y sobre los que corre cada ajuste, di cuándo una matriz es invertible, resuelve las ecuaciones normales para , construye la matriz sombrero y prueba que es una proyección, expresa las sumas de cuadrados como formas cuadráticas, y halla la media y la covarianza de un vector aleatorio. Para los datos reales de Dwaine, todo esto se calculó tanto en R como en numpy: , sobre 18 grados de libertad, , y errores estándar . De estas herramientas salieron los dos hechos que impulsan toda la regresión múltiple: es insesgado, y su covarianza es .
Cada pieza encaja en un solo flujo, dibujado en Figure 11: a partir de los datos formas dos resúmenes, inviertes uno de ellos, y todo lo demás, los coeficientes, la matriz sombrero, los residuos y los errores estándar, sale en un orden fijo. Si recuerdas la forma de ese flujo, puedes reconstruir cualquier fórmula individual en él.

Figure 11:El capítulo como un solo flujo. Cada cantidad de un ajuste de regresión múltiple, los coeficientes, los valores ajustados, los residuos, la varianza del error y los errores estándar, proviene de los mismos dos resúmenes de productos cruzados y una sola inversa, calculada en un orden fijo.
Resultados clave de un vistazo.
| Resultado | Enunciado o fórmula | Válido cuando |
|---|---|---|
| Transpuesta de un producto (Teorema 6.5) | cualesquiera conformables | |
| Criterio de invertibilidad (Teorema 6.9) | invertible tiene rango columna completo | cuadrada |
| Solución de mínimos cuadrados (Teorema 6.12) | de rango columna completo | |
| La matriz sombrero es una proyección (Teorema 6.16) | simétrica, idempotente, | de rango columna completo |
| Sumas de cuadrados como formas cuadráticas (Teorema 6.18) | ; ; | cualquier respuesta |
| Reglas de transformación lineal (Teorema 6.20) | ; | fijos |
| Media y covarianza de (Teorema 6.21) | ; | , |
| Distribución muestral de (Teorema 6.23) | errores normales |
Términos clave. matriz, vector, matriz de diseño, transpuesta, multiplicación de matrices, conformable, matriz identidad, matriz simétrica, independencia lineal, rango, determinante, inversa, ecuaciones normales, matriz sombrero, matriz idempotente, matriz de proyección, traza, forma cuadrática, definida positiva, vector aleatorio, matriz de covarianzas, normal multivariante.
Ahora deberías poder.
Representar un conjunto de datos de regresión como un vector respuesta y una matriz de diseño , y escribir el modelo como .
Calcular transpuestas y productos de matrices, y construir y a mano y con software.
Decidir cuándo una matriz cuadrada tiene inversa usando el rango y el determinante, y explicar qué le hace la colinealidad perfecta a .
Resolver las ecuaciones normales para .
Verificar que la matriz sombrero es simétrica e idempotente, y explicar por qué los valores ajustados y los residuos son proyecciones.
Expresar SSE, SSR y SSTO como formas cuadráticas, y conectar la definición positiva con sumas de cuadrados no negativas.
Derivar el vector de medias y la matriz de covarianzas de un vector aleatorio, y usarlos para mostrar que .
Enunciar el modelo normal multivariante para y y describir cómo impulsa la inferencia de los capítulos posteriores.
Dónde encaja esto. Este capítulo es la caja de herramientas que hace funcionar las etapas AJUSTAR y USAR del flujo de trabajo del curso (El flujo de trabajo del modelado) para más de un predictor: el estimador ajusta toda regresión múltiple, y la matriz de covarianzas es como se prueba después cada coeficiente. El Capítulo 2 construyó estas ideas para un predictor con álgebra escalar (2.2 Mínimos cuadrados desde los primeros principios); las hemos generalizado ahora a cualquier número. Enseguida, el Capítulo 7 toma la misma de Dwaine que calculaste y prueba por qué estas fórmulas son las correctas: deriva los mínimos cuadrados de dos maneras (7.1 El modelo y los mínimos cuadrados en forma matricial), lee los grados de libertad en la matriz sombrero (7.3 La matriz sombrero), y prueba el teorema de Gauss-Markov (7.6 El teorema de Gauss-Markov). Es el capítulo más abstracto del curso, y está construido casi por completo a partir de los hechos matriciales que ensamblaste aquí, así que el trabajo de este capítulo es exactamente lo que hace legible el siguiente.
6.10 Preguntas frecuentes¶
P1. ¿Por qué pegamos una columna de unos a ? Para que el intercepto pueda tratarse como un coeficiente más. Multiplicar la columna de unos por da en cada fila, que es exactamente lo que hace un intercepto. Sin la columna de unos, la fórmula no tendría término constante, y estarías forzando la superficie de regresión a pasar por el origen.
P2. ¿Es lo mismo que elevar al cuadrado ? No. por lo general no es cuadrada, así que ni siquiera está definida. multiplica la transpuesta () por () para hacer una matriz de sumas de productos. Es el análogo matricial más cercano de “suma de cuadrados”, razón por la cual se sitúa en el centro de los mínimos cuadrados.
P3. ¿Qué sale mal en realidad cuando es singular? Dos columnas de predictores cargan la misma información, así que los datos no pueden decidir cómo repartir un efecto entre ellas. Infinitos vectores de coeficientes ajustan igualmente bien, la inversa no existe, y el software o bien da error o bien descarta un predictor en silencio. Este es el extremo de la multicolinealidad que encuentras en 12.1 La multicolinealidad y el factor de inflación de la varianza.
P4. ¿Tengo que invertir a mano? No. Más allá de
, deja que solve o np.linalg.inv lo hagan, y en el trabajo real prefiere
las rutinas dentro de lm y statsmodels, que resuelven las ecuaciones normales sin
formar la inversa. Calcular la inversa aquí solo muestra que el software hace exactamente
el álgebra de matrices de este capítulo, de modo que nunca es una caja negra.
P5. ¿Por qué se llama proyección a la matriz sombrero? Porque toma el vector respuesta y lo deja caer perpendicularmente sobre el subespacio plano de todos los valores ajustables (el espacio columna de ), aterrizando en el punto más cercano, . Proyectar una segunda vez no cambia nada, que es la propiedad algebraica . El residuo es la parte de que sobresale, en ángulo recto respecto del subespacio.
P6. ¿Dónde entra la distribución normal? Solo en 6.8 La normal multivariante, en breve, y solo para la inferencia. Construir , calcular , la matriz sombrero, SSE, y la matriz de covarianzas no usan ningún supuesto distribucional más allá de media cero, varianza constante y errores no correlacionados. La normalidad se añade encima para que sea normal multivariante y podamos construir procedimientos y exactos, que es la tarea del Capítulo 7.
P7. ¿Tengo que memorizar todas estas identidades, y deben preocuparme las entradas negativas en la matriz de covarianzas de ? No, en ambos casos. Retén tres cosas: el modelo , el estimador , y la covarianza ; todo lo demás construye una de esas o lee un número de ella, así que las identidades se vuelven cosas que rederivas en vez de recordar. En cuanto a las entradas negativas, solo las covarianzas fuera de la diagonal pueden ser negativas (las varianzas de la diagonal nunca lo son), y una negativa entre dos pendientes solo significa que a lo largo de muestras repetidas sobreestimar una tiende a acompañar subestimar la otra. Es información, no un error.
6.11 Problemas de práctica¶
(A) Da las dimensiones de , , , , y para el modelo de Dwaine, y di en una frase qué representa cada uno.
(A) Explica por qué la primera columna de la matriz de diseño es de puros unos, y qué cambiaría en el modelo si se eliminara.
(A) Enuncia la regla de cuándo dos matrices se pueden multiplicar, y úsala para explicar por qué no está definida para la matriz de diseño de Dwaine pero sí lo está.
(A) En palabras, ¿a qué es igual la entrada en la fila 1, columna 1 de , y por qué? ¿Cuáles son las otras entradas de la primera fila?
(A) Define una matriz idempotente y una matriz simétrica, y di cuáles de estas propiedades tiene la matriz sombrero .
(A) Un colega escribe y “cancela ” de . Explica las dos cosas mal en esto.
(A) Explica qué significa que las columnas de sean linealmente dependientes, y qué le hace eso a y al ajuste de mínimos cuadrados.
(A) La matriz de covarianzas de tiene una entrada fuera de diagonal negativa entre las dos pendientes. Interpreta su signo en una oración.
(B) Prueba que es simétrica para cualquier matriz , citando la regla de la transpuesta de un producto (Teorema 6.5).
(B) Prueba la regla de la transpuesta de un producto (Teorema 6.5), , comparando las entradas de ambos lados.
(B) Partiendo de las ecuaciones normales matriciales , deriva (Teorema 6.12), enunciando la condición sobre que requiere el paso.
(B) Prueba que la matriz sombrero es simétrica e idempotente (Teorema 6.16). Luego muestra que es idempotente.
(B) Muestra que , y explica geométricamente por qué proyectar cada columna de sobre el espacio columna de la deja sin cambio.
(B) Usando y , prueba que y que (los valores ajustados son ortogonales a los residuos).
(B) Prueba la regla de transformación de la covarianza (parte del Teorema 6.20) para una matriz fija , partiendo de la definición .
(B) Usa las reglas del problema 15 y , para derivar y (Teorema 6.21).
(B) Muestra que es igual a (Teorema 6.18), usando la simetría y la idempotencia de , y explica por qué esto prueba .
(B) Para la matriz , escribe la forma cuadrática en términos de , y da una condición sobre que la vuelva definida positiva.
(B) Los valores ajustados satisfacen . Prueba que y , usando la regla de la covarianza y las propiedades de .
(C) Lee
dwaine.csv, construye y , y reproduce y en R o Python. Confirma que la entrada superior izquierda de es y que la primera entrada de es .(C) Calcula y en software, y verifica que concuerda con
lm/statsmodelsy que devuelve la identidad.(C) Construye la matriz sombrero , verifica numéricamente que y que , y reporta las tres entradas de la diagonal más grandes (los valores de apalancamiento).
(C) Calcula el vector de residuos y verifica numéricamente que (las tres entradas cerca de cero) y que .
(C) Calcula , luego y , y confirma que concuerdan con el error estándar residual reportado por
summary(fit)/fit.summary().(C) Forma la matriz de covarianzas estimada y reporta los tres errores estándar de su diagonal. Confirma que concuerdan con el resumen del software, y reporta la covarianza estimada entre las dos estimaciones de pendiente.
(C) Predice las ventas para una ciudad nueva con y formando el vector fila y calculando . Confirma el resultado contra
predict.(C) Añade una columna redundante a igual a , e intenta calcular . Reporta lo que hace R o Python (un error, una advertencia, o una inversa desmesuradamente inestable), y conéctalo con el rango deficiente.
(C) Centra los predictores: reemplaza
targtpopydispoincpor sus desviaciones respecto de sus medias, reajusta, y confirma que las dos pendientes no cambian mientras que el intercepto se vuelve . Explica, usando las ecuaciones normales, por qué el centrado deja intactas las pendientes.(C) Demuestra la ley muestral (Teorema 6.23, 6.8 La normal multivariante, en breve) por simulación. Trata la ajustada como la verdadera y como la verdadera. Manteniendo fija la real de Dwaine, usa
set.seed(4210)(R) odefault_rng(4210)(Python) para generar 5000 vectores respuesta con , reajusta cada uno con , y recolecta las estimaciones. (a) Confirma que las medias por columna están cerca de y que la covarianza muestral está cerca de . (b) En dos oraciones, explica por qué esta ley permite que el Capítulo 7 adjunte una distribución a cada coeficiente y convierta un error estándar en un intervalo de confianza.
6.12 Práctica de examen¶
Estas cinco preguntas coinciden con el estilo de los exámenes del curso: cada una te
pide explicar, evaluar o interpretar en oraciones completas, no producir un número
pelado. Escribe en oraciones completas y di qué números usaste. La salida de software
mostrada se generó a partir del ajuste real de dwaine.csv. Cada respuesta modelo
muestra la profundidad que gana la calificación completa, seguida de una línea sobre lo
que una respuesta débil omite.
EP 6.1. En el ajuste de Dwaine ambas pendientes estimadas son positivas: y . Un estudiante argumenta: “como ambos predictores empujan las ventas hacia arriba, las dos pendientes estimadas deben estar positivamente correlacionadas a lo largo de muestras repetidas”. La matriz de covarianzas estimada de está impresa abajo. Evalúa la afirmación del estudiante, y explica qué te dice en realidad el número relevante.
intercept targtpop dispoinc
intercept 3602.0347 8.7459 -241.4230
targtpop 8.7459 0.0449 -0.6724
dispoinc -241.4230 -0.6724 16.5158Respuesta modelo
La afirmación confunde el signo de los coeficientes con el signo de la covarianza entre sus estimadores, y los dos no tienen relación. El número que resuelve la pregunta es la entrada fuera de diagonal entre las dos pendientes, , que es negativa. Así que a lo largo de muestras repetidas una sobreestimación de una pendiente tiende a llegar con una subestimación de la otra, exactamente lo opuesto de lo que predice el estudiante. Ese signo negativo viene de la geometría de la matriz de diseño: las dos columnas de predictores están ellas mismas positivamente correlacionadas a lo largo de las 21 ciudades, así que el ajuste no puede subir ambas pendientes a la vez sin contar dos veces la señal compartida, y compensa una contra la otra. Los signos de las pendientes ajustadas, que describen cómo responden las ventas a cada predictor, no llevan información sobre cómo covarían las dos estimaciones. Una respuesta débil solo declara la afirmación verdadera o falsa, o repite que ambas pendientes son positivas, sin leer la entrada -0.6724 ni explicar que es negativa por razones ligadas a los predictores, no a los coeficientes.
EP 6.2. Supón que targtpop se reingresa en personas en bruto en vez de miles, de
modo que cada valor se multiplica por 1000, y el modelo se reajusta. Usando la salida
de abajo, di con precisión qué cantidades cambian y cuáles quedan idénticas, y explica
por qué.
b se t
intercept -68.8570732 60.0169532 -1.1473
targtpop 0.0014546 0.0002118 6.8682
dispoinc 9.3655004 4.0639581 2.3045
SSE = 2180.9274 fitted[1:3] = 187.184, 154.229, 234.396Respuesta modelo
Multiplicar una columna de predictor por 1000 divide la pendiente de ese predictor y
el error estándar de la pendiente por el mismo factor de 1000: la pendiente de
targtpop cae de 1.4546 a 0.0014546 y su error estándar de 0.2118 a 0.0002118,
así que su cociente, el estadístico de 6.868, no cambia. Todo lo demás es idéntico
al ajuste original: el intercepto -68.857, la pendiente de dispoinc 9.3655, todos
los valores ajustados (187.184, 154.229, 234.396, ...), los residuos,
, , y . La razón es que escalar una columna de
por una constante distinta de cero no cambia el espacio columna que
genera, y el ajuste depende de solo a través de ese espacio: la
matriz sombrero , la proyección ,
y toda suma de cuadrados quedan intactas. Un cambio de unidades por lo tanto reescala el
coeficiente afectado y su error estándar al unísono y deja en paz cada valor ajustado y
cada inferencia. Una respuesta débil dice solo que “la pendiente cambia” sin notar que su
error estándar cambia por el factor idéntico, que el estadístico , los valores
ajustados y SSE son invariantes, y por qué.
EP 6.3. La diagonal de la matriz sombrero contiene los valores de apalancamiento . La salida de abajo reporta su suma, el corte de regla empírica , y los cinco valores más grandes con los dos valores de predictor de cada ciudad. Interpreta estos números en contexto: ¿qué dicen sobre qué ciudades importan más, por qué suman 3, y marcarías alguna ciudad como punto de apalancamiento alto?
sum of h_ii = 3.0 2p/n cutoff = 0.2857
city 20: targtpop 82.7 dispoinc 19.1 h = 0.2788
city 13: targtpop 88.4 dispoinc 17.4 h = 0.2390
city 15: targtpop 52.5 dispoinc 17.8 h = 0.2095
city 3: targtpop 91.3 dispoinc 18.2 h = 0.1737
city 5: targtpop 46.9 dispoinc 17.3 h = 0.1620Respuesta modelo
Cada valor de apalancamiento mide qué tan lejos están los valores de predictor de la ciudad del centro de la nube de predictores, y es igual al peso que las ventas propias de la ciudad cargan en producir su valor ajustado. La ciudad 20 tiene el mayor valor de apalancamiento () porque combina una gran población joven (82.7 mil) con el ingreso disponible más alto de los datos (19.1), así que se sitúa en el borde exterior de la nube de predictores y su respuesta tiene la mayor voz en el ajuste local. Los apalancamientos suman 3 porque , el número de parámetros estimados, así que en promedio una ciudad carga de su propio valor ajustado; este es el mismo hecho de la traza que produce el divisor para . Al comparar contra el corte , ninguna ciudad lo excede, pues aun la ciudad 20 con 0.2788 queda justo por debajo, así que ninguna se marca como punto de apalancamiento inusualmente alto, aunque la ciudad 20 es la que hay que vigilar. Una respuesta débil lee el número más grande sin decir qué mide un valor de apalancamiento, omite que la suma es igual a porque , o llama a una ciudad de apalancamiento alto por su tamaño en bruto sin compararla con el corte 0.2857.
EP 6.4. Un estudiante aumenta la matriz de diseño de Dwaine con una cuarta columna
igual a targtpop + dispoinc, reajusta, y reporta: “Python de todos modos devolvió una
inversa y algunos coeficientes, así que el modelo aumentado está bien”. Los diagnósticos
de abajo provienen de la matriz aumentada. Explica por qué el modelo aumentado no está
bien, qué salió mal matemáticamente, y por qué R y Python se comportan distinto.
rank of augmented X = 3 (it has 4 columns)
det(X'X) = -3.7e-05 # against ~1.07e06 for the genuine 3x3 X'X
R solve(X'X): Error: system is computationally singular
Python inv(X'X): returns a matrix of enormous (~1e13) entries, no errorRespuesta modelo
La nueva columna es una combinación lineal exacta de dos columnas existentes, a saber
, así que las cuatro columnas son linealmente
dependientes y la matriz de diseño tiene rango 3, no 4. Por el Teorema 6.9,
es entonces singular y no tiene una inversa genuina: su
determinante verdadero es cero, y el impreso es polvo de punto
flotante alrededor de cero, astronómicamente pequeño al lado del determinante de
aproximadamente de la real . No hay
una única solución de mínimos cuadrados, porque los datos no pueden decidir cómo repartir
un efecto entre un predictor y una copia construida de él; infinitos vectores de
coeficientes ajustan igualmente bien. R calcula el número de condición recíproco, ve que
es esencialmente cero, y se rehúsa con “system is computationally singular”, que es la
respuesta honesta. El np.linalg.inv de Python invierte sin comprobar el
condicionamiento, así que devuelve una matriz de entradas enormes y sin sentido que son
ruido numérico en vez de un ajuste. El estudiante ha confundido una falla numérica
silenciosa con un modelo válido: el hecho de que el código “corrió” no es evidencia de
que la respuesta signifique algo. Una respuesta débil nota solo que las columnas son
colineales sin conectar el rango deficiente con el determinante cero y la ausencia de una
única solución, o confía en los números de Python porque no apareció ningún error.
EP 6.5. Un gerente regional quiere las ventas medias predichas por el modelo para una
ciudad nueva con targtpop y dispoinc , junto con un error estándar,
así que forma y nota que la media predicha es
. La matriz de covarianzas estimada
se reimprime abajo, y el
ajuste da . Un estudiante calcula el error estándar de
como ,
usando solo las varianzas de la diagonal. Explica por qué esto está mal, da el error
estándar correcto, y di hacia qué lado yerra el atajo de solo diagonal.
intercept targtpop dispoinc
intercept 3602.0347 8.7459 -241.4230
targtpop 8.7459 0.0449 -0.6724
dispoinc -241.4230 -0.6724 16.5158
x_h'(X'X)^{-1} x_h = 0.063181 MSE = 121.16Respuesta modelo
La media predicha es una combinación lineal de
los tres coeficientes, así que por la regla de la covarianza del Teorema 6.20 su varianza
es la forma cuadrática completa
,
que incluye toda covarianza fuera de la diagonal, no solo las tres varianzas de la
diagonal. El atajo del estudiante descarta los términos cruzados
, y aquí esos términos son grandes y negativos, sobre todo
la covarianza -241.42 entre el intercepto y la pendiente de dispoinc, así que
ignorarlos exagera desmesuradamente la varianza. Calculándola correctamente,
,
así que el error estándar es mil dólares, no 94.4. El atajo de
solo diagonal yerra por un margen enorme hacia el lado alto, porque las covarianzas
negativas que los coeficientes genuinamente tienen cancelarían gran parte de la
contribución de la diagonal. La lección es que el error estándar de cualquier combinación
lineal de necesita toda la matriz de covarianzas, ya que los coeficientes
están correlacionados. Una respuesta débil calcula
como fórmula sin explicar que los términos
fuera de diagonal que faltan son los que vuelven incorrecto el atajo, o no nota que el
atajo exagera en vez de subestimar el error estándar.
6.13 Juego del capítulo¶
Chapter summary (in English)
This chapter teaches the matrix algebra that multiple regression needs, assuming no prior linear algebra. It uses the Dwaine Studios data: the sales of 21 portrait studios against two predictors, the population under 16 and per-capita disposable income. The data are laid out as a response vector and a design matrix of size , whose first column is all ones for the intercept, and the model is written compactly as .
We define the transpose and matrix multiplication, whose rule is “row by column,”
and with them build the two central pieces: , which collects every
sum of squares and cross-product, and . A matrix has an inverse
only if it has full rank, equivalently if its determinant is nonzero. Solving the
normal equations gives the
estimator ; for Dwaine,
, identical to lm and statsmodels.
The hat matrix is symmetric and idempotent: it projects onto the fitted values. The sums of squares SSE, SSR, and SSTO are quadratic forms, and for Dwaine with on 18 degrees of freedom. For a random vector, the expectation and covariance matrix transform by and , from which is unbiased and . Under normal errors, follows a multivariate normal distribution, the foundation of all the inference in Chapter 7.